Payments Clearing & Settlement

FIToFICustomerCreditTransferV08

pacsarea
008message
001variant
08version

Payments Clearing & Settlement

The interbank credit transfer. Everything a PISP initiates eventually becomes one of these. SWIFT and ISO publish successive schema versions (…001.08, …001.10, …001.13); each market picks one via its usage guideline (EPC SEPA, CBPR+, SIC…).

Schema versions

SWIFT and ISO publish successive XSD revisions of the same business message (e.g. pacs.008.001.08 → .10 → .13; same pattern for camt and pain). Markets pin one via a usage guideline (EPC SEPA, CBPR+, Swiss SPS…) and may add a country suffix (pacs.008.001.08.ch.02) — the Document xmlns must match that XSD.

ISO catalogue (XSD) ↗SWIFT / CBPR+ ↗SWIFT & versioning glossary →

SEPA / SCT Inst / TARGET2 baseline. EPC rulebooks and most TIPS/RT1 traffic still expect this ISO xmlns. SEPA samples in this explorer use .08.

Markets / railsSEPA SCTSEPA SCT InstTIPSRT1TARGET2

Facts

Root element
FIToFICstmrCdtTrf
Direction
Bank → bank
Namespace
urn:iso:std:iso:20022:tech:xsd:pacs.008.001.08
Variant (flavour)
001
Version
08
interbanksepasctinstantpacssiceurosicwerosct-insttipscbpr+

Elements a validator will insist on

Not the full XSD — the paths whose absence causes the rejections you actually see in production.

  • FIToFICstmrCdtTrf/GrpHdr/MsgId
  • FIToFICstmrCdtTrf/GrpHdr/CreDtTm
  • FIToFICstmrCdtTrf/GrpHdr/NbOfTxs
  • FIToFICstmrCdtTrf/GrpHdr/SttlmInf/SttlmMtd
  • FIToFICstmrCdtTrf/CdtTrfTxInf/PmtId/TxId
  • FIToFICstmrCdtTrf/CdtTrfTxInf/IntrBkSttlmAmt
  • FIToFICstmrCdtTrf/CdtTrfTxInf/ChrgBr
  • FIToFICstmrCdtTrf/CdtTrfTxInf/Dbtr
  • FIToFICstmrCdtTrf/CdtTrfTxInf/Cdtr

Usage in flows

ISO 20022 payload· XML

pacs.008 interbank credit transfer

The same payment on the interbank leg. InstdAmt became IntrBkSttlmAmt, an IntrBkSttlmDt appeared, and TxId is now the identifier the CSM quotes in every response. Switch XML | JSON in the inspector without leaving this sample.

<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pacs.008.001.08">
<FIToFICstmrCdtTrf>
<GrpHdr>
<MsgId>PACS8-20260812-77412</MsgId>
<CreDtTm>2026-08-12T09:14:24</CreDtTm>
<NbOfTxs>1</NbOfTxs>
<TtlIntrBkSttlmAmt Ccy="EUR">1250.00</TtlIntrBkSttlmAmt>
<IntrBkSttlmDt>2026-08-13</IntrBkSttlmDt>
<SttlmInf>
<SttlmMtd>CLRG</SttlmMtd>
<ClrSys>
<Cd>STEP2</Cd>
</ClrSys>
</SttlmInf>
<InstgAgt>
<FinInstnId>
<BICFI>DEMOFRPPXXX</BICFI>
</FinInstnId>
</InstgAgt>
<InstdAgt>
<FinInstnId>
<BICFI>COBADEFFXXX</BICFI>
</FinInstnId>
</InstdAgt>
</GrpHdr>
<CdtTrfTxInf>
<PmtId>
<InstrId>INSTR-0001</InstrId>
<EndToEndId>E2E-2026-0842</EndToEndId>
<TxId>TX-DEMO-0000771412</TxId>
</PmtId>
<PmtTpInf>
<SvcLvl>
<Cd>SEPA</Cd>
</SvcLvl>
</PmtTpInf>
<IntrBkSttlmAmt Ccy="EUR">1250.00</IntrBkSttlmAmt>
<IntrBkSttlmDt>2026-08-13</IntrBkSttlmDt>
<ChrgBr>SLEV</ChrgBr>
<Dbtr>
<Nm>Marie Lefebvre</Nm>
</Dbtr>
<DbtrAcct>
<Id>
<IBAN>FR7630006000011234567890189</IBAN>
</Id>
</DbtrAcct>
<DbtrAgt>
<FinInstnId>
<BICFI>DEMOFRPPXXX</BICFI>
</FinInstnId>
</DbtrAgt>
<CdtrAgt>
<FinInstnId>
<BICFI>COBADEFFXXX</BICFI>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>Atelier Rousseau SARL</Nm>
</Cdtr>
<CdtrAcct>
<Id>
<IBAN>DE89370400440532013000</IBAN>
</Id>
</CdtrAcct>
<RmtInf>
<Ustrd>Facture 2026-0842</Ustrd>
</RmtInf>
</CdtTrfTxInf>
</FIToFICstmrCdtTrf>
</Document>
47 elementsdepth 5pacs.008.001.081674 charsxml
Open in Try editor →

Edit in the XML / JSON tab, then run the check.