ediverse Explore the platform

Spotlight PEPPOL BIS Billing 3.0 The EU e-invoicing mandate is here — France Sept 2026, Belgium Jan 2026, Germany 2025.

pacs.009 — Financial Institution Credit Transfer

The ISO 20022 message for settlement between financial institutions: direct counterpart of SWIFT MT202 under CBPR+ since November 2025. Three variants — CORE, ADV, COV — to cover nostro/vostro, cover payments and advices.

Purpose and place in the flow

pacs.009 carries a bank-to-bank settlement where neither debtor nor creditor is an end customer. Use cases:

  • Nostro/vostro position settlement between correspondents.
  • Interbank leg of an FX (spot, forward) settlement.
  • Cash leg of a securities trade.
  • Derivatives margin settlement.
  • Cover payment of a pacs.008 whose settlement uses distinct correspondents (COV variant).
  • Advice: notification of a move without direct settlement (ADV variant).

Variants — CORE, ADV, COV

VariantMessageUsage
COREpacs.009.001.10"Pure" interbank settlement. Direct counterpart of MT202 (without COV).
COVpacs.009.001.10 with UndrlygCstmrCdtTrfCover payment — embeds the underlying client pacs.008 in UndrlygCstmrCdtTrf. KYC transparency for correspondents. Direct counterpart of MT202 COV.
ADVpacs.009.001.10 with SttlmInf/SttlmMtd=CLRG or INDA without direct postingInformational notification. Rarely used in CBPR+, more common in HVPS+.

XML structure

pacs.009 is wrapped in <Document> then in <FICdtTrf>. Two blocks:

  • GrpHdr: envelope identifier and metadata (MsgId, CreDtTm, NbOfTxs, SttlmInf).
  • CdtTrfTxInf: transaction (1..n, but 1 under CBPR+).

CdtTrfTxInf follows the universal ISO 20022 payment modelling: identifiers (PmtId with InstrId, EndToEndId, UETR), amounts (IntrBkSttlmAmt), agents (InstgAgt, InstdAgt, DbtrAgt, CdtrAgt, sometimes IntrmyAgt1/2/3), parties — where Dbtr and Cdtr are Financial Institutions (not physical clients), via FinInstnId/BICFI. The COV variant adds UndrlygCstmrCdtTrf, embedding the client pacs.008 copy.

Key fields

  • GrpHdr/SttlmInf/SttlmMtd: settlement method. INDA (Instructed Agent — via nostro at the instructed agent), INGA (Instructing Agent — via nostro at the instructing agent), COVE (Cover Payment), CLRG (Clearing — via a payment system).
  • CdtTrfTxInf/PmtId/UETR: UUID v4 mandatory under CBPR+.
  • CdtTrfTxInf/IntrBkSttlmAmt: settled amount.
  • CdtTrfTxInf/IntrBkSttlmDt: settlement date.
  • CdtTrfTxInf/Dbtr: debtor financial institution. FinInstnId/BICFI mandatory.
  • CdtTrfTxInf/Cdtr: creditor financial institution. Same.
  • CdtTrfTxInf/DbtrAgt / CdtrAgt: technical agents.
  • CdtTrfTxInf/InstgAgt / InstdAgt: instructing / instructed agent (banks sending and receiving the pacs.009).
  • CdtTrfTxInf/IntrmyAgt1/2/3: up to three correspondents.
  • CdtTrfTxInf/UndrlygCstmrCdtTrf: present for the COV variant. Embeds Dbtr/DbtrAcct/Cdtr/CdtrAcct of the cover client pacs.008.
  • CdtTrfTxInf/InstrForCdtrAgt / InstrForNxtAgt: operational instructions for the next agent.

COV example — cover payment

Cover payment paired with the prior client pacs.008: BNP Paribas (as DbtrAgt) orders Deutsche Bank (CdtrAgt) to settle 12,500 EUR, with the ACME → Hans Mueller client transfer detail embedded.

xml pacs-009-cov.xml
<?xml version="1.0" encoding="UTF-8"?>
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pacs.009.001.10">
  <FICdtTrf>
    <GrpHdr>
      <MsgId>BNPP-FI-20260514-001</MsgId>
      <CreDtTm>2026-05-14T10:35:00+01:00</CreDtTm>
      <NbOfTxs>1</NbOfTxs>
      <SttlmInf>
        <SttlmMtd>COVE</SttlmMtd>
      </SttlmInf>
    </GrpHdr>
    <CdtTrfTxInf>
      <PmtId>
        <InstrId>BNPP-FI-INSTR-2026001</InstrId>
        <EndToEndId>COVER-INV2026-187</EndToEndId>
        <UETR>1a2b3c4d-5e6f-7890-abcd-ef1234567890</UETR>
      </PmtId>
      <IntrBkSttlmAmt Ccy="EUR">12500.00</IntrBkSttlmAmt>
      <IntrBkSttlmDt>2026-05-15</IntrBkSttlmDt>
      <InstgAgt>
        <FinInstnId><BICFI>BNPAFRPP</BICFI></FinInstnId>
      </InstgAgt>
      <InstdAgt>
        <FinInstnId><BICFI>DEUTDEFF</BICFI></FinInstnId>
      </InstdAgt>
      <Dbtr>
        <FinInstnId><BICFI>BNPAFRPP</BICFI></FinInstnId>
      </Dbtr>
      <DbtrAgt>
        <FinInstnId><BICFI>BNPAFRPP</BICFI></FinInstnId>
      </DbtrAgt>
      <CdtrAgt>
        <FinInstnId><BICFI>DEUTDEFF</BICFI></FinInstnId>
      </CdtrAgt>
      <Cdtr>
        <FinInstnId><BICFI>DEUTDEFF</BICFI></FinInstnId>
      </Cdtr>
      <UndrlygCstmrCdtTrf>
        <Dbtr>
          <Nm>ACME SARL</Nm>
          <PstlAdr>
            <StrtNm>12 rue de la Soie</StrtNm>
            <TwnNm>Lyon</TwnNm>
            <PstCd>69001</PstCd>
            <Ctry>FR</Ctry>
          </PstlAdr>
        </Dbtr>
        <DbtrAcct>
          <Id><IBAN>FR7630006000011234567890189</IBAN></Id>
        </DbtrAcct>
        <DbtrAgt>
          <FinInstnId><BICFI>BNPAFRPP</BICFI></FinInstnId>
        </DbtrAgt>
        <CdtrAgt>
          <FinInstnId><BICFI>DEUTDEFF</BICFI></FinInstnId>
        </CdtrAgt>
        <Cdtr>
          <Nm>Hans Mueller GmbH</Nm>
          <PstlAdr>
            <StrtNm>Hauptstrasse 12</StrtNm>
            <TwnNm>Frankfurt</TwnNm>
            <PstCd>60313</PstCd>
            <Ctry>DE</Ctry>
          </PstlAdr>
        </Cdtr>
        <CdtrAcct>
          <Id><IBAN>DE89370400440532013000</IBAN></Id>
        </CdtrAcct>
        <InstdAmt Ccy="EUR">12500.00</InstdAmt>
      </UndrlygCstmrCdtTrf>
    </CdtTrfTxInf>
  </FICdtTrf>
</Document>
  • SttlmMtd=COVE — flags this as a cover payment.
  • Dbtr, DbtrAgt, InstgAgt all converge on BNPAFRPP in this direct example.
  • The UETR is identical to the matched cover pacs.008.
  • UndrlygCstmrCdtTrf repeats the client parties (ACME SARL → Hans Mueller GmbH) verbatim for KYC transparency.

Versions

VersionPublicationUsage
pacs.009.001.082019T2 Eurosystem version (in service March 2023).
pacs.009.001.102022CBPR+ version (in service March 2023, end of MT coexistence November 2025). Structured addresses, HVPS+ alignment.
pacs.009.001.112023Minor update.

Common errors

  • COV variant without UndrlygCstmrCdtTrf: if SttlmMtd=COVE is declared, the embedded block is mandatory. Reject by AML/CFT filters at correspondents.
  • UETR ≠ UETR of the cover pacs.008: the two linked messages must carry exactly the same UETR to enable gpi tracking.
  • Dbtr = client instead of FI: in pacs.009, Dbtr is a Financial Institution, not a client. For a client transfer, use pacs.008. Mixing them breaks flows.
  • Invalid BICFI: same as pacs.008 — strict 8 or 11 characters, no implicit XXX.
  • Unstructured addresses in UndrlygCstmrCdtTrf: since CBPR+ Phase 3 (Nov 2025), StrtNm, BldgNb, PstCd, TwnNm, Ctry mandatory in the embedded block too.
  • SttlmMtd INDA vs COVE mixed up: INDA is a classic settlement via the destination's nostro; COVE is a cover. The choice must match the actual route agreed with correspondents.

Equivalence with MT202

See the MT202 page for the full mapping table. Key reminders:

  • Standard MT202 → pacs.009 CORE.
  • MT202 COV → pacs.009 COV with UndrlygCstmrCdtTrf.
  • MT :32A:IntrBkSttlmDt + IntrBkSttlmAmt.
  • MT :58a:Cdtr (FinInstnId/BICFI).
  • MT :52a:Dbtr (FinInstnId/BICFI).
  • MT Block 3 :121:PmtId/UETR.
  • pacs.002 — FI to FI Payment Status Report. Acknowledgment / reject for pacs.009.
  • pacs.004 — Payment Return.
  • pacs.008 — paired Customer Credit Transfer (the pacs.009 COV embeds a copy).
  • camt.056 — Cancellation Request.
  • camt.029 — Resolution of Investigation.
  • MT202 — historic SWIFT MT counterpart.