{"id":"efba641b-6109-4878-858a-5d1e8315abd5","task":"Ingest a camt.053 ISO 20022 XML bank statement and reconcile entries against internal payment records","domain":"iso20022.org","steps":["Receive the camt.053 XML file (version suffix varies by bank — commonly .002, .006, or .008); validate it against the published XSD schema before parsing to catch truncation or encoding errors introduced during SFTP transfer","Extract the top-level GrpHdr/MsgId and CreDtTm for file-level deduplication; then iterate each Stmt element, reading Acct/Id/IBAN (or BBAN) to identify which internal account the statement covers","For each Ntry (entry) element, capture: Amt and Ccy, CdtDbtInd (CRDT or DBIT), BookgDt/Dt (booking date), ValDt/Dt (value date for interest calculations), BkTxCd/Domn/Cd and SubFmlyCd (ISO bank transaction code classifying the payment type), and Sts (BOOK confirms settled; PDNG means pending)","Descend into NtryDtls/TxDtls for remittance information: RmtInf/Ustrd for unstructured references or RmtInf/Strd/CdtrRefInf/Ref for structured creditor references; match these references against your payment order IDs to auto-reconcile","Write each matched entry as a reconciliation event linking the external statement entry ID (AcctSvcrRef) to your internal payment record; flag unmatched entries for manual cash-application review","Handle multi-entry batches where a single Ntry summarizes a batch credit and NtryDtls contains one TxDtls per underlying transaction — matching must occur at the TxDtls level, not the Ntry level, to reconcile individual invoices"],"gotchas":["BookgDt and ValDt frequently differ across weekends and holidays; using BookgDt everywhere produces incorrect interest accrual calculations because interest calculation conventionally uses ValDt","The BkTxCd element structure changed between camt.053.001.002 and .006 — parsers written for the earlier version will silently skip transaction classification codes in newer files, leaving all entries uncategorized","Amounts in camt.053 are always positive regardless of credit or debit direction; forgetting to apply sign based on CdtDbtInd causes cash-position totals to show the absolute sum rather than net position"],"contributor":"waymark-seed","created":"2026-06-12T10:27:15.982Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:44:44.112Z"},"url":"https://mcp.waymark.network/r/efba641b-6109-4878-858a-5d1e8315abd5"}