The payment import for ESR Payments has been extended so that not only ESR|ISR Payments can be processed, but also QRR Payments can be read from the BTC (Bank Transaction Codes)|GVC (Business Transactions) and the associated Family Codes from the camt.053 bank files. We regularly update the supported camt standard.
The old method of reading the ESR|ISR reference from the tag <Ref></Ref> has been replaced.
We currently support the following family codes, including all sub-family codes:
<Fmly><Cd>RCHQ </Cd></Fmly> = Received Cheques
<Fmly><Cd>RCDT</Cd></Fmly> = Received Credit Transfers
<Fmly><Cd>RDDT</Cd></Fmly> = Received Direct Debits
<Fmly><Cd>CNTR </Cd></Fmly> = Counter Transactions
<Fmly><Cd>RRCT </Cd></Fmly> = Receivable Real-Time Credit Transfers
and within the same format: MCRD, MDOP, IDDT, ICDT, ICHQ, ICCN, CCRD, CNTR, CAPL, OPCL, MCOP
Important Links / Specification
Necessary Fields for pixi
The following table contains all fields that are imported from the camt.053 file into pixi.
In pixi* the transaction is then shown as follows:
XML Tag Name |
Description |
Imported into pixi* |
BookgDt |
contains the booking date of the transaction |
pixi* Payments > Payment Details > Book Date |
ValDt |
contains the validation date of the transaction |
pixi* Payments > Payment Overview > Date |
Refs |
contains references that belong to the transaction:
|
pixi* Payments > Payment Overview > Payment Details > Text 2 |
Amt Ccy |
contains the amount and currency of the transaction |
pixi* Payments > Payment Overview (> Payment Details) > Amount / Currency |
CdtDbtInd |
contains either CRDT or DBIT and defines the transaction type |
gets imported but is not shown in the pixi* application |
BkTxCd |
contains different codes that specify the transaction
|
gets imported but is not shown in the pixi* application |
RltdPties |
contains the involved parties:
|
Customer Name: pixi* Payments > Payment Overview (> Payment Details) > Payer / Payed By
IBAN: pixi* Payments > Payment Overview > Payment Details > IBAN |
RltAgts |
contains information of the financial institution
|
pixi* Payments > Payment Overview > Payment Details > BIC |
RmtInf |
This part contains the important data:
|
pixi* Payments > Payment Overview > Payment Details > Text 1 |
CreDtTm |
Contains the creation date/time of the account statement / report. |
Parsed as the report creation date; no separate visible default value in the pixi payment overview. |
Acct / Ccy |
Contains the currency of the account. |
Used as the account currency or as a fallback for the currency; usually not shown separately in the application. |
Acct / Svcr / FinInstnId / BIC |
Contains the BIC of the account-holding bank. |
Imported as the account/bank BIC; no separate visible default value in the pixi payment overview. |
BkTxCd / Prtry / Cd (Bank Transaction Code Proprietary) |
Contains the proprietary bank transaction code, e.g., PMNT-RCDT-051; serves as an additional TransactionCode / BusinessCode. |
Imported into the pixi database and used for banking classification/mapping, but not displayed in the application. |
AmtDtls / TxAmt / Amt Ccy |
Contains the amount and currency of the transaction in an alternative structure under AmtDtls; in XML 2 this is the 2nd possible path for the amount. |
Imported as an alternative amount path if TxDtls/Amt is not present; displayed like Amt Ccy: pixi Payments > Payment overview > (Payment details >) Amount / Currency. |
Ntry / Amt Ccy |
Contains the amount and currency at entry level; in XML 2 this is the 3rd possible path for the amount. |
Imported as another fallback amount path if no amount exists at TxDtls level; displayed like Amt Ccy: pixi Payments > Payment overview > (Payment details >) Amount / Currency. |
Btch / NbOfTxs |
Contains the number of transactions in a batch / collective posting. |
Imported into the pixi database; normally not displayed separately in the application. |
Complete XML Example
Below is a complete XML example in the camt.053 format with commented field explanations:
<?xml version="1.0" encoding="UTF-8"?>
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:camt.053.001.04">
<BkToCstmrStmt>
<Stmt>
<CreDtTm>2024-12-31T12:00:00</CreDtTm> <!-- CreateDate: parsed as report creation date -->
<Acct>
<Ccy>EUR</Ccy> <!-- AccountCurrency: currency of the account -->
<Svcr>
<FinInstnId>
<BIC>DEUTDEFF</BIC> <!-- AccountBic: BIC of the account's bank -->
</FinInstnId>
</Svcr>
</Acct>
<Ntry>
<BookgDt>
<Dt>2024-12-31</Dt> <!-- BookingDate: booking date of the transaction -->
</BookgDt>
<ValDt>
<Dt>2024-12-31</Dt> <!-- BankDate: value date of the transaction -->
</ValDt>
<Amt Ccy="EUR">123.45</Amt> <!-- Amount: transaction amount and currency (3rd option) -->
<CdtDbtInd>CRDT</CdtDbtInd> <!-- FundsCode: CRDT (credit) or DBIT (debit) (2nd option) -->
<BkTxCd>
<Domn>
<Cd>PMNT</Cd> <!-- BankTransactionCodeDomain: transaction domain code (2nd option)-->
<Fmly>
<Cd>RCDT</Cd> <!-- BankTransactionCodeFamilyDomain: family code, used in WHERE clause - used, if not specified in NtryDtls/TxDtls/BkTxCd/Domn/Fmly/Cd (line 49) -->
<!-- currently supported (2026.01): RCHQ, RCDT, RDDT, CNTR, RRCT, MCRD, MDOP, IDDT, ICDT, ICHQ, ICCN, CCRD, CAPL, OPCL, MCOP, ESCT -->
</Fmly>
</Domn>
<Prtry>
<Cd>PMNT-RCDT-051</Cd> <!-- BankTransactionCodeProprietary: proprietary code, TransactionCode/BusinessCode -->
</Prtry>
</BkTxCd>
<NtryDtls>
<TxDtls>
<Refs>
<EndToEndId>ABC123456789</EndToEndId> <!-- BankText02: end-to-end reference -->
</Refs>
<Amt Ccy="EUR">123.45</Amt> <!-- Amount: transaction amount and currency (1st option) -->
<AmtDtls>
<TxAmt>
<Amt Ccy="EUR">123.45</Amt> <!-- Amount: transaction amount and currency (2nd option) -->
</TxAmt>
</AmtDtls>
<CdtDbtInd>CRDT</CdtDbtInd> <!-- FundsCode: CRDT (credit) or DBIT (debit) (1st option) -->
<BkTxCd>
<Domn>
<Cd>PMNT</Cd> <!-- BankTransactionCodeDomain: transaction domain code (1st option)-->
<Fmly>
<Cd>RCDT</Cd> <!-- BankTransactionCodeFamilyDomain: family code -->
</Fmly>
</Domn>
<Prtry>
<Cd>PMNT-RCDT-051</Cd>
</Prtry>
</BkTxCd>
<RltdPties>
<Dbtr>
<Nm>John Doe</Nm> <!-- CreditorCustomerName: name of the debtor (payer) (1st option)-->
</Dbtr>
<Dbtr>
<Pty>
<Nm>John Doe</Nm> <!-- CreditorCustomerName: name of the debtor (payer) (2nd option)-->
</Pty>
</Dbtr>
<DbtrAcct>
<Id>
<IBAN>DE89370400440532013000</IBAN> <!-- CreditorIBAN: IBAN of the debtor (payer) -->
</Id>
</DbtrAcct>
<Cdtr>
<Nm>Jane Smith</Nm> <!-- DebitorCustomerName: name of the creditor (payee) (1st option) -->
</Cdtr>
<Cdtr>
<Pty>
<Nm>Jane Smith</Nm> <!-- DebitorCustomerName: name of the creditor (payee) (2nd option)-->
</Pty>
</Cdtr>
<CdtrAcct>
<Id>
<IBAN>DE12500105170648489890</IBAN> <!-- DebitorIBAN: IBAN of the creditor (payee) -->
</Id>
</CdtrAcct>
</RltdPties>
<RltdAgts>
<CdtrAgt>
<FinInstnId>
<BICFI>COBADEFFXXX</BICFI> <!-- DebitorBIC: BIC of the creditor's bank -->
</FinInstnId>
</CdtrAgt>
<DbtrAgt>
<FinInstnId>
<BICFI>DEUTDEFFXXX</BICFI> <!-- CreditorBIC: BIC of the debtor's bank -->
</FinInstnId>
</DbtrAgt>
</RltdAgts>
<RmtInf>
<Ustrd>Invoice 12345</Ustrd> <!-- BankText01Unstrd: unstructured remittance info 1 -->
<Ustrd>Payment for services</Ustrd> <!-- BankText02Unstrd: unstructured remittance info 2 -->
<Strd>
<CdtrRefInf>
<Ref>987654321</Ref> <!-- BankText01Strd: structured reference info -->
<Tp>
<CdOrPrtry>
<Prtry>ISR</Prtry> <!-- ISR_ref: Swiss reference type -->
</CdOrPrtry>
</Tp>
</CdtrRefInf>
</Strd>
</RmtInf>
</TxDtls>
</NtryDtls>
<Btch>
<NbOfTxs>1</NbOfTxs> <!-- NumOfTxInBatch: number of transactions in batch -->
</Btch>
</Ntry>
</Stmt>
</BkToCstmrStmt>