pacs.008 settlement amount, currency and date errors
Use source lines and XML paths to repair the generating integration. A passing preflight is limited to the checks listed in the report.
Reconcile only comparable settlement amounts
PACS-TOTAL points to GrpHdr/TtlIntrBkSttlmAmt when a declared group total differs from recognized CdtTrfTxInf/IntrBkSttlmAmt amounts in that same currency. The fictional example declares 12.50 EUR and contains one transaction for 12.50 EUR. Its additional-rule error changes the group total to 13.50. The report locates the group amount; it does not decide whether the total or the transaction is the incorrect source value.
The independent preflight uses scaled decimal integers rather than floating-point addition, accepting up to six fractional digits and eighteen integer digits. This is an explicit lite-engine bound, not a universal currency rounding rule. Zero, negative or unsupported amounts trigger PACS-AMOUNT. Currency shape requires three uppercase letters; the checker does not bundle a currency membership list. It does not assume every currency uses two decimal places.
A different transaction currency makes the amounts incomparable with the declared total. PACS-TOTAL-NOT-COMPARABLE is a plausibility warning and leaves that reconciliation unproven. Never add nominal EUR and USD amounts without an agreed conversion. InstdAmt and IntrBkSttlmAmt can represent different roles and are not automatically required to match. This check neither invents an exchange rate nor proves the settlement occurred.
Count entries and inspect settlement dates
PACS-COUNT compares NbOfTxs with the actual transaction entries in the message, not the number of parties or agents. A message containing two transfer entries must declare two, even when they share banks. An absent transaction section triggers a structure error. These checks are meaningful even when XSD has not been supplied, but they do not replace all mandatory structure and ordering constraints in the selected schema.
A transaction needs a settlement date at group or transaction level within this partial check. A malformed calendar date, such as 2026-02-30, triggers PACS-DATE. If both levels provide a date, PACS-DATE-CONSISTENCY reports a disagreement. The independent checker makes no claim about banking holidays, working days, cutoffs or whether the date is acceptable to the receiving institution. Review the intended processing instruction and regenerate the exporter output, then rerun the same chosen layers.
Read each validation layer separately
A well-formed XML document can still be invalid against its chosen schema. A schema-valid payment can still carry an incorrect transaction count, inconsistent settlement values or the wrong network context. The report therefore keeps XML syntax, supplied XSD, independently written business checks, plausibility, header checks and supplied profile assertions separate. The overall result remains incomplete when the listed checks pass because network compliance and bank acceptance are not established.
The primary example action loads a fictional rule-only document. No official schema is executed in that demo. The XSD-error fixture adds UnexpectedForTest at the end of Document and is rejected by an independently authored teaching subset, with its source line recorded in the fixture outcomes. It is not evidence of complete official XSD validity. To run an official schema locally, supply the original pacs.008 XSD and all dependencies, with sufficient processing rights and per-file source, publisher, version, validity, acquisition date, rights basis and notices. The report computes SHA256 of original file bytes.
No schema is fetched automatically. XML is bounded before the existing local engine runs; external entities and DTDs are blocked, and ZIP packages are not accepted. Unsupported XSD 1.1 assertions are rejected as a whole rather than stripped. XML, payment amounts and identifiers stay in the browser tab and are not funnel-event fields. One file is free. Pro and Team use existing batch limits, isolate errors per file and export CSV or JSON containing scope, versions and layer results.
Primary sources and rights boundary
ISO catalogue · ISO archive · Published Business Application Header · SWIFT MyStandards · ISO IPR · ISO terms. Rechecked 6 November 2026. ISO repository use is royalty-free under its IPR policy; reproduction carries the official-source notice and applicable contributor conditions. MyStandards public or shared reading is no permission to redistribute CBPR+ specifications. No protected library is included. XSDHub is not the official ISO site; ISO 20022 remains the authoritative source of current repository material.
No Swift readiness certification, complete CBPR+ compliance, sanctions screening, settlement execution, RMA/reachability or bank acceptance is promised. Unknown network profiles never receive complete green approval. Without sufficient concrete processing rights a supplied local profile remains unexecuted; local BYO, runtime or server-only placement does not remove restrictions.