US banks compress a payment into a handful of letters because a statement line has almost no room. ACH, POS, DDA, NSF, RDC, DES, INDN and the Nacha class codes all mean something specific, and the meaning barely changes from bank to bank. This page decodes them, and the converter above turns a statement PDF into rows you can filter and total instead of squinting at.
Last updated August 2026
Upload your bank statement
Drop file here or click to upload
PDF, JPG, PNG, BMP, HEIC, TIFF, MT940
Uploading...
They are compressed labels for how the money moved. ACH is an Automated Clearing House transfer, POS is a card purchase at a merchant, ATM is a machine transaction, EFT is any electronic funds transfer, CHK is a check, DEP is a deposit, INT is interest paid, NSF is non-sufficient funds, and CR and DR mark credit and debit. On ACH lines the extra fragments come straight from the payment file: DES or CO ENTRY DESCR is the sender description, CO ID is the originating company identifier, INDN is the receiving individual name, SEC is the Nacha Standard Entry Class, and EED is the effective entry date.
One cryptic line is a curiosity. Three hundred of them across a quarter is the reason catch-up work takes days instead of hours.
Bank of America labels the pieces of an ACH descriptor with DES:, INDN: and CO ID:. Wells Fargo runs the same fields together with no labels at all, so the merchant name, the company ID and the individual name blur into one string.
No bank gives you a Type column you can pivot on. POS, ACH and CHK are buried mid-sentence in free text, so grouping spend by method means parsing the description rather than sorting a field.
CR and DR differ by one letter and flip the direction of the money. ACH credit and ACH debit differ by one word and decide whether cash came in or went out.
The company name field in an ACH entry is capped at 16 characters and the entry description at 10, so a long vendor name arrives clipped and two different vendors can land on the identical statement string.
Finding every NSF fee or every RDC deposit across twelve monthly PDFs means opening twelve files. In a spreadsheet it is one filter.
A busy operating account runs 200 to 600 lines a month. Reading each abbreviation off the page is fine for one dispute and impossible for a year of catch-up bookkeeping.
The codes stop being a problem the moment the statement is a spreadsheet instead of a picture of a page.
Date, description, amount and running balance land in real columns, so the abbreviation inside the description becomes something you can search, filter and count.
One filter on the description column pulls every overdraft fee, every card purchase or every ACH credit across the whole period instead of page by page.
Withdrawals come out negative and deposits positive, so you never have to work out whether a line was a credit or a debit from the wording.
Upload a year of PDFs in one batch and get one continuous sheet, which is how you spot a recurring ACH debit that only appears in some months.
The running balance comes from the statement itself, so the last row ties to the closing balance and you can prove no coded line was dropped.
Statements carry account numbers. Uploads use 256-bit encryption and you can delete files whenever you want.
Nothing to install and no credit card to start.
Download the monthly PDF statements for the period you need. Statement PDFs usually stay available years after the transaction download window closes.
Tip: Several months in one upload is fine.
Drag the files into the box above. Each bank layout is read on its own terms, including the unlabeled descriptor styles.
Tip: Mixed banks in one batch are fine.
Save as XLSX or CSV, then filter the description column for ACH, POS, NSF, RDC or a company name to group activity by how the money actually moved.
Tip: Check the closing balance before you import anything.
Anyone rebuilding a set of books from statements has to know what each line was, not just what it cost. The abbreviation is often the only evidence of the payment method, and the payment method drives the category.
Code a quarter of activity where the client sends PDFs and nothing else, and the descriptor is the only clue to the vendor.
Separate ACH credits that are revenue from ACH credits that are owner transfers before the numbers reach a return.
Trace an unexplained debit back to the originating company using the CO ID and trace number sitting in the descriptor.
Work out what a mystery charge actually was before calling the bank about it.
These are the short forms you meet most often on US checking, savings and business account statements. Wording varies a little between banks, but the meaning behind each code is settled across the industry.
| Abbreviation | Stands for | What it means on the line |
|---|---|---|
| ACH | Automated Clearing House | An electronic bank to bank transfer: payroll, a bill payment, a vendor payment, a recurring transfer. |
| POS | Point of Sale | A debit card purchase made at a merchant, in person or online. |
| ATM | Automated Teller Machine | A machine withdrawal, deposit or balance inquiry, often followed by the ATM location. |
| EFT | Electronic Funds Transfer | A general label for money moved electronically. Some banks use it where others write ACH. |
| CR or CRED | Credit | Money coming into the account. |
| DR | Debit | Money leaving the account. |
| DDA | Demand Deposit Account | Your checking account. A DDA DEBIT or DDA TO DDA line is a movement touching that account. |
| CHK or CHQ | Check | A paper check, usually paired with the check number. |
| DEP | Deposit | Funds paid in, at a branch, an ATM or by mobile capture. |
| RDC | Remote Deposit Capture | A check deposited by photographing it in the mobile app or scanning it at a desk. |
| RCC | Remotely Created Check | A check created by the payee from account details rather than signed by you. |
| WT or WIRE | Wire Transfer | A same day transfer through Fedwire or a correspondent, normally with its own fee line. |
| TFR or XFER | Transfer | A movement between two accounts, usually at the same bank. |
| WD or WDL | Withdrawal | Cash taken out, at a teller or a machine. |
| INT | Interest | Interest credited on a savings account, CD or interest bearing checking account. |
| SVC CHG | Service Charge | A monthly maintenance or account analysis fee. |
| NSF | Non-Sufficient Funds | An item the bank returned unpaid because the balance did not cover it, normally with a fee. |
| OD or ODP | Overdraft or Overdraft Protection | The bank paid an item past a zero balance, or pulled the shortfall from a linked account. |
| PTP | Peer to Peer Payment | A person to person transfer. Zelle, Venmo and Cash App activity settles as lines like this. |
| MEMO or MEMO POST | Memo Posted | Shown against the balance but not finally posted yet. It can still change or drop off. |
| CD | Certificate of Deposit | A deposit, withdrawal, renewal or maturity on a term deposit. |
| IRA | Individual Retirement Account | A contribution, distribution or transfer touching a retirement account. |
An ACH line looks like noise because it is not written by your bank at all. It is assembled from fields the sender put in the ACH file, and Regulation E together with the Nacha Operating Rules requires several of them to reach you. That is why an ACH descriptor is long, capitalized and clipped in odd places.
| Fragment | ACH field | Limit | What to do with it |
|---|---|---|---|
| ORIG CO NAME | Company Name | 16 characters | The business that sent or pulled the money. This is your vendor or customer, often clipped mid-word. |
| DES or CO ENTRY DESCR | Company Entry Description | 10 characters | The sender free text explaining the purpose: PAYROLL, PAYMENT, DIRECT DEP, AUTOPAY. The fastest categorization clue on the line. |
| INDN | Receiving Individual Name | 22 characters | Who the sender believes they paid. Useful when several entities bank in one place. |
| CO ID or ORIG ID | Company Identification | 10 characters | A stable identifier for the originator, usually tax ID based. It stays the same when the display name changes, so it is the reliable key for matching a recurring vendor. |
| SEC | Standard Entry Class code | 3 characters | How the payment was authorized. See the class code table below. |
| EED | Effective Entry Date | Date | The date the sender asked for settlement. It can differ from the date the line posted, which is why an invoice and a statement sometimes disagree by a day or two. |
| TRACE# or TRN | Trace Number | 15 digits | The unique reference for that entry in the ACH network. Quote it when you ask either bank to trace a payment. |
Two 2026 rule changes make the DES fragment more useful than it used to be. Since March 20, 2026, Nacha requires originators to write PAYROLL in the Company Entry Description on PPD credits that pay wages or salaries, and PURCHASE on WEB debits for consumer e-commerce purchases. Where the sender is compliant, those two words now mean exactly one thing, so a filter on DES:PAYROLL is a reasonable first pass at separating wage payments from every other deposit. From September 18, 2026, a separate rule requires the receiving bank to make a non same day ACH credit available for withdrawal by 9:00 a.m. its local time on the settlement date, which is why a deposit may now land earlier in the morning than the same payment did last year.
The fields are the same at every US bank. The presentation is not, and that is what makes a hand-built parsing rule break the moment a client switches bank.
| Bank | Descriptor style | What that means for you |
|---|---|---|
| Chase | Named fields spelled out in the line: ORIG CO NAME, ORIG ID, DESC DATE, CO ENTRY DESCR, SEC, TRACE#, EED, IND ID, IND NAME. | The most verbose of the three. Every part is labeled, so it is readable, but each transaction consumes several lines of the PDF. |
| Bank of America | Short tags mark the boundaries: DES:, INDN: and CO ID:. | Compact and still parseable, because the tags tell you where the vendor name ends and the description begins. |
| Wells Fargo | No tags at all. The fields run together in a fixed order as one continuous string. | The hardest to split, because only field order tells you where the company name stops. A Wells Fargo CSV download also arrives with no header row. |
Card lines follow their own conventions, and the sign on the amount is the part that catches people out when card and checking data end up in one workbook. The credit card CSV export columns reference lists the layout each issuer uses, and the bank CSV export columns page does the same for checking downloads.
The SEC code says how the payment was authorized, which decides the rules that apply to it, including how long you have to dispute it. These are the classes that turn up on ordinary business and consumer accounts.
| Code | Name | Typical line |
|---|---|---|
| PPD | Prearranged Payment and Deposit | Payroll direct deposit, a mortgage or utility autopay, a benefit payment. The consumer workhorse. |
| CCD | Corporate Credit or Debit | Business to business: a vendor payment, a tax payment, a sweep between company accounts. |
| WEB | Internet Initiated or Mobile Entry | A debit you authorized on a website or in an app, including most subscription billing. |
| TEL | Telephone Initiated Entry | A debit authorized over the phone. |
| ARC | Accounts Receivable Entry | A check you mailed that the recipient converted to an electronic debit. |
| BOC | Back Office Conversion | A check handed over at a register and converted later in the back office. |
| POP | Point of Purchase | A check scanned and handed back at the counter. |
| RCK | Re-presented Check Entry | A check that bounced and is being collected again electronically. |
| CTX | Corporate Trade Exchange | A corporate payment carrying structured remittance data for many invoices at once. |
| IAT | International ACH Transaction | A payment that touches a financial institution outside the United States. |
The full breakdown of authorization rules per class lives in the ACH SEC codes guide. When an entry comes back instead of posting, the R code on the return explains why, and those are listed in the ACH return codes reference.
Take a Bank of America style deposit written as ACH DEPOSIT ACME PAYROLL DES:PAYROLL ID:1234567890 INDN:JANE DOE CO ID:9876543210 PPD. Read it right to left and it resolves quickly. PPD says a consumer prearranged entry, so this is payroll rather than a business to business payment. CO ID 9876543210 is the employer identifier and will not change next month even if the display name does. INDN is the employee the sender thinks they paid. DES:PAYROLL is the sender own description, and ACME PAYROLL is the company name clipped to its 16 character limit.
Two habits save the most time. Match recurring vendors on the CO ID rather than the name, because the name is the field that gets truncated and rebranded. And when a charge is unexplained, keep the trace number: it is the reference both banks use to find the entry, and it survives a dispute far better than a screenshot does.
Everything above is quick for a single transaction and slow for a quarter. The practical move is to convert the statement PDFs first, then work in a spreadsheet: filter the description column for NSF to total the overdraft damage, for POS to split card spend from bank transfers, or for a CO ID to pull every payment from one customer across twelve months. Once the rows exist you can also push them straight into your ledger, and the transaction categorization guide covers turning coded rows into a coded ledger. If the destination is QuickBooks, the QuickBooks CSV import format reference shows the exact shape those columns need to take.
An ACH credit is money pushed into your account over the Automated Clearing House network by whoever sent it. Payroll direct deposit is the most common example, along with tax refunds, benefit payments and customer payments. The sender initiated it, so nothing was pulled from you. The opposite is an ACH debit, where the other party pulls funds from your account under an authorization you gave.
DDA stands for Demand Deposit Account, which is the formal name for a checking account, money you can demand back at any time without notice. A line reading DDA DEBIT or DDA TO DDA TRANSFER is simply a movement touching that checking account. It tells you the account type involved, not what the payment was for.
DES is short for description, and it carries the Company Entry Description the sender wrote into the ACH file. It is capped at 10 characters, which is why you see clipped words like PAYROLL, AUTOPAY, DIRECT DEP or PAYMENT. It is the fastest clue to what a payment was for, because the sender chose it to describe the purpose.
INDN is the Receiving Individual Name, the person or business the sender believed they were paying. It comes from the ACH file and is limited to 22 characters. It matters when several people or entities bank in the same place, because it shows which name the payment was actually addressed to.
POS stands for Point of Sale and marks a debit card purchase at a merchant, in a store or online. Many banks write POS PURCHASE or POS DEB followed by the merchant name and location. The card was used directly, unlike an ACH debit, which pulls funds from the account number instead.
Because the ACH Company Name field holds only 16 characters and the entry description only 10. Anything longer is truncated before it ever reaches your bank. That is also why two different vendors sometimes show up as the same string, and why matching on the company identification number is more reliable than matching on the name.
The meanings are consistent because they come from shared banking standards, but the presentation is not. Bank of America labels ACH descriptor parts with DES:, INDN: and CO ID:, Chase spells out fields such as ORIG CO NAME and CO ENTRY DESCR, and Wells Fargo runs the same fields together with no labels. Expect the same information in different clothing.
Convert the statement PDFs to Excel or CSV first, then filter the description column. Filtering for NSF totals the returned item fees, POS isolates card spend, and ACH pulls out electronic transfers. Doing that in a spreadsheet takes seconds across a full year, while reading the same thing off PDF pages takes an afternoon.
What each US bank writes in its CSV download.
The same reference for card issuer exports.
The ACH file these descriptor fields are built from.
Cancel anytime from your account settings · refund policy
Get started converting bank statements to spreadsheets.
USD
per month
billed as
$288 yearly
Choose speed vs accuracy when extracting
| Base AI Faster | 2,500 pages |
| Pro AI Best accuracy | 500 pages |
Scale statement conversion across your team with automation.
USD
per month
billed as
$888 yearly
Choose speed vs accuracy when extracting
| Base AI Faster | 10,000 pages |
| Pro AI Best accuracy | 2,000 pages |
Enterprise-grade bank statement conversion and controls.
USD
per month
billed as
$ yearly
Choose speed vs accuracy when extracting
| Base AI Faster | pages |
| Pro AI Best accuracy | pages |