Bank Statement Standards Bridge — CAMT.053 & MT940
Pricing
from $100.00 / 1,000 statement validateds
Bank Statement Standards Bridge — CAMT.053 & MT940
Validate and convert CAMT.053 and MT940 statements to deterministic JSON and reconciled CSV with stable transaction IDs — no bank login or OCR.
Pricing
from $100.00 / 1,000 statement validateds
Rating
0.0
(0)
Developer
Cedric Günther
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Bank Statement Standards Bridge
Convert CAMT.053 and a documented MT940 subset into stable transaction JSON and RFC 4180 CSV, with deterministic IDs and explicit balance evidence. This Actor is for accounting automation that already has machine-readable bank exports. It does not log in to banks and does not perform OCR.
Typical workflow
- Export one or more CAMT.053 or MT940 statements.
- Send inline content (recommended for confidential data) or a public HTTPS
URL. Choose
strictortolerantprocessing and bounded limits. - Consume statement/transaction rows from the default dataset. Download the
full canonical bundle from
CANONICAL_JSONand CSV fromTRANSACTIONS_CSV. - Route
PASS,FAIL, andINCONCLUSIVEreconciliation results explicitly.
{"statements": [{"sourceId": "client-a-september-2026","format": "AUTO","content": ":20:STMT-1\n:25:DE02120300000000202051\n:60F:C260901EUR100,00\n:61:2609150915C12,34NTRFREF-1//BANK-1\n:86:Invoice 1\n:62F:C260930EUR112,34\n-"}],"mode": "strict","maxFileBytes": 2000000,"maxTransactionsPerStatement": 10000}
Exactly one of content or url is required per statement. URL inputs must be
credential-free public HTTPS URLs on the default port; redirects and private or
reserved address resolution are rejected.
Supported input
- CAMT.053 namespace variants
camt.053.001.02,.04, and.08proven by the included synthetic corpus. - MT940 subset containing
:20:, optional:25:,:60F:/:60M:,:61:, optional following:86:, and:62F:/:62M:records. - Up to 100 statements/run, 10 MB/statement, and 50,000 entries/statement within the configurable lower defaults.
Support does not imply that every bank-specific narrative convention has a semantic mapping. Unrecognized optional data stays outside the canonical MVP.
Output contract
The dataset uses two stable recordType values:
statement: parse status, format/version, IDs, balances, transaction count, reconciliation status/difference, and stable error fields.transaction: stabletransactionId, booking/value date, decimal amount as a string, currency, direction, references, and description.
Decimal amounts remain strings to avoid binary floating-point loss. No current
timestamp participates in IDs or outputs. Reprocessing identical content with
the same sourceId produces identical results.
Failure behavior
Invalid top-level configuration fails before processing. A malformed statement
becomes a FAILED statement row while other batch items continue. XML with a
DOCTYPE/entity declaration, unsupported namespace, oversized file, invalid
decimal/date, unsafe URL, or entry-limit breach fails closed. Missing opening or
closing balance yields INCONCLUSIVE; it is never reported as reconciled.
Privacy and security
Statements can contain sensitive financial data. Prefer inline Actor input and set retention appropriate to your Apify account. The Actor sends no statement content to third-party services. It uses only Apify storage selected by the run. There are no credentials in source and no bank/network integration.
Scope boundary
This is conversion and consistency evidence, not accounting, tax, fraud, legal, or audit advice. It does not certify a statement, categorize transactions, initiate payments, connect to banks/SFTP, parse PDFs, or perform OCR.
Development
npm installnpm testnpm run qualitynpm run benchmark
Runtime dependencies are exactly pinned. The synthetic corpus contains no real account or personal data. New namespaces are opt-in releases with fixtures.
Changelog
0.1.0— Initial CAMT.053/MT940 subset, deterministic IDs, reconciliation, canonical JSON, CSV, schemas, limits, and isolated batch failures.