Turn a PDF or scanned bank statement into an OFX or CSV file Sage Intacct Cash Management accepts, then let the account rule set match it.
Upload your bank statement
Drop file here or click to upload
PDF, JPG, PNG, BMP, HEIC, TIFF
Uploading...
Sage Intacct imports bank transactions through Cash Management, and there are two routes. The classic import, reached from Cash Management, All, Reconciliation, Bank, reads CSV and QIF files and expects dates formatted as MM/DD/YYYY. The newer Bank transaction assistant file import adds XLS, XLSX and OFX, and lives under Cash Management, All, Transactions. Neither route reads a PDF, so a statement downloaded from online banking has to be converted first. OFX is usually the cleanest choice, because it avoids the classic import's fixed column names and carries a unique identifier on every transaction for matching.
Intacct has two import experiences with different format lists, different menus and one behavior that quietly deletes work if you hit it unprepared.
Neither the classic import nor the Bank transaction assistant accepts a PDF statement. Every supported route expects structured data, so the file most finance teams actually hold has to be converted before it can reach Cash Management.
The classic import expects POSTING_DATE, TRANSACTION_TYPE, DOCUMENT_TYPE, DOCUMENT_NUMBER, PAYEE, AMOUNT and DESCRIPTION in that order, with POSTING_DATE, TRANSACTION_TYPE and AMOUNT mandatory. A spreadsheet built by hand or exported from another tool will not line up.
If the account already uses a bank feed, importing a CSV or QIF file unmatches and removes unreconciled bank feed transactions. This is the single most expensive surprise in the whole process, and it is easy to trigger by accident.
Sage documents the classic import experience as going away in a future release. Building a monthly process around its exact column template means building on something with a stated end date.
The classic import requires MM/DD/YYYY. The Bank transaction assistant instead asks you to select the correct date order while reviewing the import. A file that loads fine one way can transpose days and months the other.
Downloadable history at most banks runs to roughly the last 90 days while the statement archive goes back years. Any implementation, migration or audit that touches prior periods runs past what a feed will serve.
The conversion bridges one gap: you have a PDF, and Intacct wants OFX, or a CSV shaped to its template.
The Bank transaction assistant reads OFX alongside XLS and XLSX, so an OFX export skips the fixed column names the classic import insists on and the mapping work that goes with them.
OFX carries a unique identifier on every transaction. That gives the account rule set something durable to match against, which matters when statement periods overlap or an import is run twice.
Export CSV or Excel when your process is built around the classic template or you want to review a period before importing. Both come out of the same extraction.
Image-only PDFs, scans and photographed pages are read the same way as text PDFs, which is what prior-period catch-ups usually consist of.
Up to 50 statements per upload, each up to 50MB, with an option to merge one account's monthly PDFs into a single continuous file before extraction.
Each conversion is validated against the statement balances, so a misread amount surfaces before the file reaches Cash Management rather than during reconciliation.
Convert first, then choose the import route that matches the format you produced.
Upload the PDF or scanned statement here and export OFX for the Bank transaction assistant, or CSV if your process uses the classic import template.
Tip: OFX avoids the fixed column names and carries a transaction identifier.
Before importing a CSV or QIF into an account that uses a bank feed, confirm what will happen to unreconciled feed transactions, because the import unmatches and removes them.
Tip: This check takes a minute and saves rebuilding a partial reconciliation.
For the assistant, go to Cash Management, All, Transactions, and select Add next to Bank transaction import files, then pick the bank or credit card account. For the classic route, go to Cash Management, All, Reconciliation, Bank, select the account and choose Import.
Tip: Each import covers one account, so batch by account rather than by month.
Confirm the date order on the review screen, let the account rule set match the transactions, then resolve anything left over manually before reconciling.
Tip: The import can take a few minutes on a long period, so a pause is not a failure.
Mostly mid-market finance teams handling accounts or periods the bank feed does not cover.
A reconciliation cannot wait on a feed that has stopped updating, and the statement is available immediately with exactly the same transactions on it.
A new implementation needs prior-period history loaded so opening balances reconcile, and that history lives in statements rather than in a 90 day download window.
Community banks and credit unions frequently offer no supported feed at all, so conversion is not a fallback for these accounts, it is the only route in.
Auditors ask for periods that predate the current feed. Converting the archived statements produces a dataset that ties directly back to the source documents.
It depends which of the two import experiences you use. The classic import for reconciliation reads CSV and QIF. The newer Bank transaction assistant file import adds XLS, XLSX and OFX on top of those, which is why it is the more flexible route for anyone converting statements. PDF is not accepted by either.
The table below sets out what each format needs before Intacct will take it.
| Format | Which import route | What to know |
|---|---|---|
| OFX | Bank transaction assistant | No fixed column names to match. Carries a unique identifier on every transaction, which the account rule set can match against. |
| CSV | Both routes | The classic route expects specific column names in a fixed order and dates as MM/DD/YYYY. The assistant instead asks you to pick a 3 column or 4 column layout. |
| XLS and XLSX | Bank transaction assistant | Added by the assistant. Useful when you want to review or trim a period in a spreadsheet before importing it. |
| QIF | Classic import | An older Quicken format with no transaction identifier, so repeat imports have nothing to deduplicate against. |
| Neither | Not an accepted input anywhere in Cash Management. Convert to OFX or CSV first. |
Yes, through the Bank transaction assistant file import. Sage documents OFX as one of the formats the assistant supports in addition to the CSV and QIF the classic process reads. Once the file is in, the transactions match automatically against Intacct transactions using the rules in the account's rule set, and appear on the Banking cloud tab for that account.
OFX tends to be the least fragile route for anyone loading statements by hand. It sidesteps the classic import's fixed column names entirely, and it carries a unique identifier per transaction, which gives matching a real basis rather than relying on date and amount alone. There is more on what sits inside the format on the OFX file format page, and the bank statement to OFX converter covers producing one from a PDF.
For the Bank transaction assistant, go to Cash Management, then All, then Transactions, and select Add next to Bank transaction import files. You choose the bank account or credit card account the file belongs to, upload it, and confirm the date order during the review step. Imports cover one account at a time, and a long period can take a few minutes to process.
The classic route is a different menu: Cash Management, then All, then Reconciliation, then Bank, where you select an account and choose Import. Access to the assistant depends on subscribing to Sage Cloud Services with the Bank transaction assistant file import option enabled, and on Cash Management permissions for bank transactions covering list, add, delete and view. If the menu item is missing, that is usually the reason rather than anything to do with the file.
Seven columns in a fixed order: POSTING_DATE, TRANSACTION_TYPE, DOCUMENT_TYPE, DOCUMENT_NUMBER, PAYEE, AMOUNT and DESCRIPTION. Of those, only POSTING_DATE, TRANSACTION_TYPE and AMOUNT are mandatory, and dates must be formatted as MM/DD/YYYY. Getting the order or the names wrong is the usual reason a file that looks correct is refused.
Worth weighing before you build a process around it: Sage documents the classic import experience as going away in a future release. A monthly routine built on that exact template will need rebuilding at some point, whereas the assistant reads OFX and spreadsheets without demanding those column names at all. If you are setting this up fresh rather than maintaining something that already works, the assistant is the more durable choice.
Because that is the documented behavior. If the account uses a bank feed, importing a CSV or QIF file unmatches and removes unreconciled bank feed transactions on that account. It is not a bug and there is no warning that makes it obvious in advance, which is what makes it costly the first time somebody meets it mid-reconciliation.
Two habits avoid it. Check whether the target account has a feed before importing anything into it, and when you do import, upload only the delta, meaning the new transactions within the statement ending date, rather than re-uploading a full period that overlaps what the feed already brought in. Both of these take moments and prevent the kind of rework that costs an afternoon.
This is the usual reason for converting statements in the first place. Bank download screens typically serve about 90 days of activity while the statement archive goes back years, so an Intacct implementation, an account migration or an audit request that touches prior periods runs straight past the edge of what a feed can provide. The statements themselves are the complete record.
For that kind of catch-up, convert the monthly PDFs as a batch rather than one at a time. Up to 50 files go into a single upload, and when every document belongs to the same account you can merge them before extraction, so twelve monthly statements come back as one continuous file. Since each Intacct import covers a single account, batching by account rather than by month matches how the import actually works. The bulk bank statement converter page covers how batching and merging behave.
Two checks catch nearly everything. Compare the transaction count and the closing balance of each converted statement against the printed document, because a matching closing balance is strong evidence that the lines in between are right. Then, after the import, confirm the earliest and latest dates that arrived match the statement period, which is how a date order misread gives itself away before it reaches a reconciliation.
The date check is worth doing every time on this platform specifically, because the two import routes handle dates differently. The classic import wants MM/DD/YYYY, while the assistant asks you to select the correct date order on the review screen. Any statement dated before the thirteenth of a month can be read either way without looking wrong, so a quick comparison against the source document is the only reliable catch. If something does need untangling afterwards, imported transactions stay in Intacct even after reconciliation, and duplicates can be ignored rather than deleted.
The classic import for reconciliation reads CSV and QIF. The Bank transaction assistant file import adds XLS, XLSX and OFX on top of those. PDF is not accepted by either route, so a statement downloaded from online banking has to be converted to one of the supported formats before it can be imported.
Yes, using the Bank transaction assistant file import, which supports OFX in addition to the CSV and QIF the classic process reads. Once imported, transactions match automatically against Intacct transactions using the account's rule set and appear on the Banking cloud tab for that account.
No. PDF is not an accepted input for either the classic import or the Bank transaction assistant. The practical route is to convert the PDF to OFX for the assistant, or to a CSV matching the classic template, and scanned or photographed statements convert the same way as text PDFs.
For the Bank transaction assistant, go to Cash Management, All, Transactions and select Add next to Bank transaction import files, then choose the bank or credit card account. For the classic route, go to Cash Management, All, Reconciliation, Bank, select an account and choose Import. Each import covers one account.
The classic import expects POSTING_DATE, TRANSACTION_TYPE, DOCUMENT_TYPE, DOCUMENT_NUMBER, PAYEE, AMOUNT and DESCRIPTION in that order, with POSTING_DATE, TRANSACTION_TYPE and AMOUNT mandatory. Dates must be formatted as MM/DD/YYYY. The Bank transaction assistant instead asks you to choose a 3 column or 4 column layout.
This is documented behavior. If the account uses a bank feed, importing a CSV or QIF file unmatches and removes unreconciled bank feed transactions on that account. Check whether the target account has a feed before importing, and upload only the new transactions within the statement ending date rather than a full overlapping period.
Sage documents the classic experience for import transactions as going away in a future release. A recurring process built around its fixed column template will need rebuilding eventually, whereas the Bank transaction assistant reads OFX and spreadsheets without requiring those specific column names.
Access depends on subscribing to Sage Cloud Services with the Bank transaction assistant file import option enabled, and on Cash Management permissions for bank transactions covering list, add, delete and view. A missing menu item is usually a subscription or permissions matter rather than anything to do with the file.
Convert them as one batch, then import per account, since each Intacct import covers a single bank or credit card account. Up to 50 statements convert in one upload here, and statements belonging to the same account can be merged before extraction so a year becomes one continuous file rather than twelve.
They remain in Sage Intacct rather than disappearing once the reconciliation is finished, and unlike the classic experience you do not need to import during reconciliation at all. Transactions imported by mistake, including duplicates, can be ignored rather than deleted.
The equivalent import path for NetSuite finance teams.
Statement import for Dynamics 365 Business Central.
Turn a PDF statement into an OFX file, format and import steps.
What is inside an OFX file and why the transaction ID matters.
Convert up to 50 statements in one batch, with merging.
CSV output when your process uses the classic import template.
Get started converting bank statements to OFX.
USD
per month
per month
$288 charged today
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
per month
$888 charged today
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
per month
$ charged today
Choose speed vs accuracy when extracting
| Base AI Faster | pages |
| Pro AI Best accuracy | pages |