Ohmyfin

HomeDrafterspacs.008.001.08

Free pacs.008 message drafter

Build an ISO 20022 pacs.008.001.08 (FI-to-FI customer credit transfer) in the browser. The output is a deterministic XML document wrapped in a head.001.001.02 AppHdr inside a BizMsgEnvlp — the on-wire shape CBPR+ requires. Every BIC, IBAN, currency, UETR and amount is validated against the CBPR+ market practice. No signup, no logging of your data.

Business application header

head.001.001.02 AppHdr inside a BizMsgEnvlp wrapper. Disable for legacy import flows that expect a bare Document.

Group header

GrpHdr block — message-level info.

Business message identifier (max 35 chars).

ISO 8601 UTC, e.g. 2026-05-25T10:30:00Z

Defaults to 1 if omitted.

Settlement method.

Payment identification

PmtId block — references for the transaction.

UUID v4 — mandatory under CBPR+.

Amount & charges

Dot decimal.

Debtor (ordering customer)
Debtor agent (sending bank)
Creditor agent (receiving bank)
Creditor (beneficiary)
Remittance information

Fill in the form and press Build.

    
        

    Free REST APIpacs.008.001.08 drafter API

    100 drafts per IP per day. No auth. CORS open. Returns { ok, kind, xml, validation }.

    POST https://ohmyfin.org/api/draft/pacs008
    Content-Type: application/json
    
    {
      "payload": { /* see JSON schema for pacs.008.001.08 */ },
      "pretty": true,
      "includeAppHdr": true,
      "from": "DEUTDEFFXXX",
      "to": "NWBKGB2LXXX"
    }
    
    # Validate an existing XML document (≤ 1 MB) without re-serialising:
    POST https://ohmyfin.org/api/draft/pacs008/validate
    { "xml": "<BizMsgEnvlp ...>...</BizMsgEnvlp>" }

    Frequently asked questions

    What is pacs.008?

    pacs.008 (FIToFICstmrCdtTrf) is the ISO 20022 message that replaces MT103 for customer credit transfers. Under CBPR+, every cross-border customer payment between banks now travels as a pacs.008.001.08.

    Is the AppHdr mandatory?

    Yes — CBPR+ requires every business message to carry a head.001.001.02 Business Application Header wrapped together with the Document inside a BizMsgEnvlp. Ohmyfin emits this by default; you can disable it for legacy import flows.

    What is the UETR field?

    UETR is the Unique End-to-end Transaction Reference (UUID v4) introduced by SWIFT GPI. It is mandatory on every pacs.008 and must match the UETR carried by the equivalent MT103 during the migration window.

    How does pacs.008 differ from MT103?

    pacs.008 uses structured XML elements (postal address, party identifiers, charges, remittance), supports LEI identifiers, and has richer remittance options. MT103 is a 4-block FIN text message. Both carry the same UETR.

    Does Ohmyfin store the XML I type?

    No. The form runs client-side; the REST API validates and returns the serialised XML without persisting any payload.

    Other MX drafters: pacs.009.001.08pacs.002.001.10camt.053.001.08camt.054.001.08  |  Matching MT: MT103 drafter