Skip to content

Statements

Automating daily CAMT.053 statements

Last updated 14 September 2026

CAMT.053 is the ISO 20022 end-of-day bank statement. Most ERPs and treasury systems import it natively, which makes it the easiest way to get a clean daily control into a system that does not want to talk to an API.

The endpoint

statement-requesttext
GET /v1/{xaid}/statements/camt053/{date}
Authorization: Bearer YOUR_ACCESS_TOKEN
  • xaid: the account.
  • date: YYYY-MM-DD, the statement day.

The response is application/xml. Store it as received; auditors like the original.

When to run

Run once per account, early in the morning, for the previous day. If the statement is not yet available you will get an error; retry every 30 minutes until it is, then stop. Do not run for today; the day is not closed.

fetch-statements.jsjavascript
const day = yesterdayIso();
for (const account of activeAccounts) {
  const res = await fetch(
    `https://customer-api.prod.xace.io/v1/${account.xaid}/statements/camt053/${day}`,
    { headers: { Authorization: `Bearer ${token}` } },
  );
  if (!res.ok) { scheduleRetry(account.xaid, day); continue; }
  await store.put(`statements/${account.xaid}/${day}.xml`, await res.text());
}

What to parse

Inside BkToCstmrStmt/Stmt:

ElementMeaning
Bal with Tp/CdOrPrtry/Cd = OPBDOpening booked balance
Bal with Tp/CdOrPrtry/Cd = CLBDClosing booked balance
Ntry (repeated)One entry per transaction, with Amt, CdtDbtInd (CRDT or DBIT), BookgDt, and references under NtryDtls
TxsSummryTotals of credits and debits

Using it as a control

Each morning, for each account:

  1. Opening balance on today's statement equals closing balance on yesterday's. If not, a statement is missing.
  2. Closing balance equals the ledger balance you hold for that account at end of day.
  3. Number and sum of entries equals the transactions your sync job posted for that day. See Syncing transactions for reconciliation.

Any mismatch goes to an exceptions queue with the account, the day and the two numbers. That is the whole daily reconciliation, and it is automatic.

Monthly statements

Monthly PDF statements for people are available in the web app from the first day of the following month. See [How can I download my Xace statements](https://support.xace.io/en/articles/8711919-how-can-i-download-my-xace-statements).

Was this page helpful?
Suggest edits