1 · Your payment data (CSV)

2 · Validation result & pain.001.001.09 XML

Press “Validate & generate” to run the checks.

    Everything on this page runs in your browser — nothing is uploaded, stored, or sent anywhere. This demo implements a subset of the pipeline (required fields, IBAN mod-97, BIC structure, amount and date formats, recomputed NbOfTxs/CtrlSum control totals). The full toolchain adds JSON Schema validation, five scheme rulebooks, and validation against the official ISO 20022 XSD — install the CLI to run that gate for real.

    What this demo shows — and what the real pipeline adds

    The demo above implements the fail-fast layer of the Pain001 pipeline: required-field checks, ISO 13616 mod-97 IBAN checksums, ISO 9362 BIC structure, amount and date formats, and control totals (NbOfTxs, CtrlSum) recomputed from the records rather than trusted. Try the "Introduce an error" button — a single flipped IBAN digit is exactly the class of mistake that otherwise surfaces as a bank rejection days later.

    The installed toolchain runs a much deeper gate: JSON Schema validation per record with field-alias normalisation, five scheme rulebooks (SEPA SCT, Instant, SDD Core, B2B, cross-border) with rule-by-rule --explain output, and final validation of the rendered document against the official ISO 20022 XSD before a single byte is written. Ten pain.001 versions and pain.008.001.02 are supported.

    pip install pain001
    pain001 -t pain.001.001.09 -d payments.csv -o out/ --scheme sepa-sct --dry-run
    

    A fully in-browser build of the real engine (via WebAssembly) is on the roadmap; today the honest split is: this page proves the concept, the CLI proves your files.