EndToEndId

The ISO 20022 reference the originator chooses to identify a single payment end-to-end.

EndToEndId is the field on a pain.001 <CdtTrfTxInf> that lets the originator (the corporate sending the payment) assign a reference that travels with the payment to the beneficiary and is echoed back in the inbound camt.053 reconciliation.

In principle this is the perfect reconciliation key: it is set by the originator, it is supposed to be preserved unchanged through the entire rail, and it is the *primary* carrier candidate inside <TxDtls>/<Refs>/<EndToEndId>. In practice some intermediaries strip or truncate it, some banks substitute their own internal id, and some rails (legacy MT103) translate it through fields that do not round-trip cleanly.

iso-compliant's reconciliation engine treats EndToEndId as the *first* candidate carrier (highest confidence) but it always emits N candidates per entry so a fallback (InstrId, StrdCdtrRef, AcctSvcrRef) is available when EndToEndId loss happens. See the KeyCarrier union in apps/api/src/lib/recon-key-extract.ts.

Common errors: setting EndToEndId to a value that exceeds 35 characters (the ISO max length, lost on truncation), or relying on the EndToEndId for a payment that flows through a known-stripping intermediary without a backup carrier.

Related terms

← All terms