CAMT Import #
CAMT Import is how bank statements get into Neo-Ledger. Drop in one or more CAMT.053 (statement) or CAMT.054 (debit/credit notification) XML files; Neo-Ledger groups the entries by bank account, you confirm which Neo-Ledger account each group belongs to, and one click imports the lot. Imported lines land in Bank Matching ready to match against your invoices.
Navigate to Document Management → Bank Import to open the page.
Supported formats #
The page accepts XML files in the ISO 20022 standards:
| Format | What it contains |
|---|---|
| CAMT.053 | A full bank statement — opening balance, all transactions, closing balance, for a given period. |
| CAMT.054 | A debit/credit notification — individual movements, usually pushed at the time they happen rather than at end of day. |
The format of each file is detected automatically. If a file isn’t valid XML or isn’t one of these two CAMT types, the page tells you which file failed and why before doing anything else.
Upload and parse #
- Click Select CMPT Files and pick one or many XML files. The file list expands to show what’s queued.
- Click Parse Files. Neo-Ledger reads each file, validates the format, and pulls out account headers and individual transactions.
- Clear or Clear All resets the selection if you change your mind.
You can mix CAMT.053 and CAMT.054 files in the same batch — they’re parsed independently and merged by IBAN.
Account groups #
Once parsed, transactions are grouped by the bank account IBAN they came from. Each group is a card showing:
- Account Holder, IBAN, Currency, Bank, BIC, Statement IDs, Date Range, Total Transactions — the header taken from the CAMT file.
- Bank Account Selection — a dropdown of bank accounts configured in your dataset. Pick which one this group belongs to.
Neo-Ledger pre-selects the matching account by IBAN. If a match is found, you’ll see a green confirmation (“Bank account selected”). If not, a yellow notice appears (“Please select a bank account for this group”) and you’ll need to pick manually before importing — or add the bank account first under Setup → Bank Accounts.
Below the header, the full list of transactions in that group is shown for review: Date, Amount (red for debits, green for credits), Type, Counterparty, IBAN, Purpose/Description, References, Bank Code.
Import to database #
When every group has a bank account assigned, click Import to Database. A progress bar shows while the file is processed server-side. Re-importing a statement is safe — duplicate transactions are detected and skipped automatically.
Import Results #
When the import finishes, a results card appears. The status pills at the top summarise everything that happened:
| Pill | Meaning |
|---|---|
| Response | Overall HTTP status. 200 = clean, 207 = mixed (some warnings), 400 = nothing imported. |
| Processed (new) | New transactions inserted into the ledger. |
| Skipped | Lines already present — typically duplicates of a prior import. |
| Matched | Lines that were auto-matched to an existing AR/AP transaction during import. |
| Transition GL | Lines that landed as unmatched (transition) GL entries — these are what you’ll work through on the Bank Matching page. |
| Failed | Lines that couldn’t be imported. The reasons are listed below the pills. |
| Rules applied | How many of your matching rules fired during import. |
| Total input | Total transactions parsed from the file. |
Three expandable sections sit below the pills:
- Added / updated rows — preview of the new lines (first 50). Useful as a sanity check.
- Rule engine results — which rules matched which transactions.
- Failed transactions — first 25 errors, with the failure message per line.
If everything fails (status 400), a red banner spells it out clearly.
What happens next #
Imported lines flow into Bank Matching under the bank account you assigned them to:
- Lines that matched during import (via rules or exact amount-and-counterparty matches) appear on the Matched tab.
- Lines that didn’t match appear on the Unmatched tab as
transitionrows, ready for you to match by hand, by rule, or by dropping a supporting PDF.
Running Apply Rules to All on the Bank Matching page immediately after a fresh import is a good habit — it lets your existing rules clean up the easy cases in one click.
Tips #
- One statement at a time is fine. There’s no advantage to batching unrelated statements together; small imports are faster to review.
- Re-import the same file safely. Duplicate detection means you can re-import a file if you weren’t sure it went through the first time — the second import will simply report all rows as Skipped.
- Missing bank account? If the IBAN on the CAMT file doesn’t exist in your dataset yet, add it under Setup → Bank Accounts before importing.