What Is pacs.008?

pacs.008 (FIToFICustomerCreditTransfer) is the ISO 20022 message used to transfer funds from one financial institution to another on behalf of a customer. It replaces the SWIFT MT103 in the ISO 20022 world and carries significantly richer structured data, including full creditor and debtor details, Legal Entity Identifiers (LEIs), purpose codes, and end-to-end reference identifiers.

For Singapore and APAC payment teams, pacs.008 has been mandatory on SWIFT since November 2022 for cross-border payments. Understanding its structure is essential for straight-through processing (STP) and MAS regulatory reporting.

Key Structural Differences vs MT103

FieldMT103pacs.008 equivalent
End-to-end refField 20CdtTrfTxInf/PmtId/EndToEndId
Ordering customerField 50Dbtr/Nm + DbtrAcct + DbtrAgt
BeneficiaryField 59Cdtr/Nm + CdtrAcct + CdtrAgt
Remittance infoField 70 (140 chars)RmtInf/Ustrd (up to 140) or structured Strd
UETRField 121 (gpi)PmtId/UETR — always mandatory on SWIFT
PurposeField 26T (not standardised)Purp/Cd (ExternalPurpose1Code — over 200 values)

Mandatory Fields for SWIFT Cross-Border pacs.008

These fields are mandatory for every pacs.008 sent over the SWIFT network:

Common Validation Errors and How to Fix Them

Error: Invalid UETR format

UETR must be a UUID version 4 in format xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx. A common mistake is reusing a previous UETR or generating a version 1 UUID. Each pacs.008 must have a freshly generated UUIDv4.

Error: Settlement date in the past

IntrBkSttlmDt must be the current business day or a future business day. Payments with past value dates are rejected by receiving correspondent banks and SWIFT. Always validate against your local holiday calendar including Singapore public holidays and the settlement currency's holiday schedule.

Error: BIC not found in BIC directory

All BIC8/BIC11 codes in DbtrAgt, CdtrAgt, and IntrmyAgt must exist in the current SWIFT BIC Plus directory. Closed or suspended BICs cause immediate rejection. Validate against an updated BIC list before sending.

Error: Amount precision exceeds currency decimals

JPY has 0 decimal places; KWD has 3. Sending JPY 10000.50 fails XSD validation. Use the ISO 4217 currency decimal table to constrain your amount field.

AML Screening Obligations on pacs.008

Under MAS Notice 626, all pacs.008 payments must be screened for sanctions and PEP matches against:

The structured nature of pacs.008 — with separate name, address, and account fields — makes it significantly easier to run accurate, low-false-positive screening compared to MT103's unstructured fields.

Coexistence Period: Handling Mixed MT103 and pacs.008 Flows

Until November 2025, correspondent banks may still send you MT103 messages. Your translation layer must handle both. Key risk: when MT103 is translated to pacs.008, unstructured /Nme/ lines in field 50/59 are mapped to Nm — but structured address data (country, town, address line) is often lost. Flag translated messages with InstrForNxtAgt/Cd = REPA to alert downstream processors.

Key Takeaways