ISO 20022 Academy
300 · Library

The pacs Family: How Banks Pay Each Other

Once your bank accepts your instruction, it has to get real money to a bank it may never have met. The pacs family is the language banks use to move that money, and to tell each other it worked.

9 min read · free, no signup
Read in the interactive Academy →

The problem first. Bob's bank has his instruction and his money is good. But Sweety banks somewhere Bob's bank has never directly met — another country, another regulator, no shared account. Bob's bank can't just phone them up.

Last article was the customer's side of the glass (pain). This is the other side: banks moving real money to each other. And the shape of it falls out of the fix Bob's bank is forced into.

What must Bob's bank send, and to whom?

{{think}} Bob's bank can't reach Sweety's bank directly. Between them sits a chain of other banks, each willing to move real money on its own books and forward the payment on — but only if they're told, precisely, what to do.

So what must Bob's bank send into that chain, and how is it different from Bob's original request? {{reveal}} A bank-to-bank instruction that any bank in the chain can read, act on with its own funds, and forward — carrying the debtor, the creditor, the agents, the amount that settles between institutions, and references that let everyone track and reconcile. That's the pacs family (Payments Clearing and Settlement).

It's different from Bob's request in the deepest way: a pain.001 is a request; a pacs.008 is an execution. If pain is the order you place at the counter, pacs is everything that happens in the kitchen — bank to bank, no customer in the loop. {{/think}}

The pacs family is the ISO 20022 replacement for the old interbank MT world (MT1xx/MT2xx). Where pain standardised the customer's request, pacs standardises the banks' execution and confirmation.

Who's in the family

The word that tells the two credit transfers apart

{{think}} Two members are both "credit transfers": pacs.008 and pacs.009. They look similar on the wire. But they exist for genuinely different reasons. What single question separates them? {{reveal}} Whose money is moving? pacs.008 moves a customer's money — Bob paying Sweety, a customer credit transfer between their banks. pacs.009 moves a bank's own money — treasury, liquidity, or the cover payment that funds a pacs.008 routed through correspondents. Grasp that one distinction and you've grasped the family. {{/think}}

The lifecycle: instruct, forward, confirm (or return)

  1. *Bob's bank (the debtor agent) turns the accepted pain.001 into a pacs.008* and sends it toward Sweety's bank.
  2. If the two banks have no direct relationship, it hops through one or more intermediary agents, each settling with the next. Sometimes a separate pacs.009 COV travels alongside to fund the cover leg.
  3. *Sweety's bank (the creditor agent) receives it, applies the funds, and sends a pacs.002* back up the chain: accepted, settled, or rejected with a reason.
  4. If the funds can't be applied — say Sweety's account is closed — her bank sends a pacs.004 return instead, and the money comes back cleanly and traceably.

Every hop preserves who pays whom and carries the same EndToEndId and UETR, so a payment a dozen banks touched still tracks as one journey.

<FIToFICstmrCdtTrf>
  <GrpHdr>
    <MsgId>EBILAEAD-20260629-000400</MsgId>
    <CreDtTm>2026-06-29T09:30:00+04:00</CreDtTm>
    <NbOfTxs>1</NbOfTxs>
    <SttlmInf><SttlmMtd>INDA</SttlmMtd></SttlmInf>
  </GrpHdr>
  <CdtTrfTxInf>
    <PmtId>
      <EndToEndId>BOB-INV0042</EndToEndId>
      <UETR>eb6305c9-1f7c-4a9b-9b1e-2c2f4e7a91d4</UETR>
    </PmtId>
    <IntrBkSttlmAmt Ccy="INR">33000.00</IntrBkSttlmAmt>
    <Dbtr><Nm>Bob Marsh</Nm></Dbtr>
    <DbtrAgt><FinInstnId><BICFI>EBILAEAD</BICFI></FinInstnId></DbtrAgt>
    <CdtrAgt><FinInstnId><BICFI>HDFCINBB</BICFI></FinInstnId></CdtrAgt>
    <Cdtr><Nm>Sweety Rao</Nm></Cdtr>
    <RmtInf><Ustrd>Invoice 0042 — June freelance</Ustrd></RmtInf>
  </CdtTrfTxInf>
</FIToFICstmrCdtTrf>

Look at EndToEndId: it's the same BOB-INV0042 Bob's app put in the pain.001. That one field is the thread proving this pacs.008 was born from that pain.001; the UETR is what powers "where is my payment?" across every bank.

See the status report, pacs.002, in the Explorer →

{{aside:model|The mental model}} pacs = banks talking to banks; a pacs.008 is an execution, not a request. The one distinction that unlocks the family: pacs.008 moves a customer's money; pacs.009 moves a bank's own money. And the EndToEndId is the thread that ties the interbank execution back to the customer's original pain.001. {{/aside}}

{{aside:chair|From the engineer's chair}} The round trip has two answers, and they're different messages: a pacs.002 says "accepted / settled / rejected"; a pacs.004 says "couldn't apply it, money's coming back, here's the reason." Both point back at the original with OrgnlEndToEndId/OrgnlUETR. You can watch a pacs.008 turn into its MT103 ancestor (and back) in the Playground's live engine — the same payment, two eras. {{/aside}}

{{aside:breaks|Where it breaks}}

{{/aside}}

{{aside:map|The map}} The interbank engine room and its neighbours:

{{/aside}}

{{aside:ref|Reference card}}

{{/aside}}

So what can you do now?

You can explain what the pacs family is for, tell pacs.008 (a customer's money) from pacs.009 (a bank's own money), describe the round trip from instruction to a pacs.002 confirmation or a pacs.004 return, name the debtor/intermediary/creditor agents at each hop, and point to the single reference that proves a pacs.008 came from a particular pain.001.

The pacs family lives on which leg of the journey? Bank to bank — clearing and settlement

A settled payment cannot be applied and the money must go back. Which pacs member does that? pacs.004 — the payment return

Part of ISO 20022 Academy — lessons, a message playground, quizzes, and a glossary for the language of modern payments. Written by Revanth Sai Rayapati.