Che cosa mostra questa demo — e che cosa aggiunge la pipeline reale
Ogni lotto di esempio è anche scaricabile come file CSV da usare come modello per l’esportazione dal suo ERP o foglio di calcolo — la riga di intestazione è il contratto.
La demo qui sopra implementa il livello fail-fast della pipeline Pain001: controlli sui campi obbligatori, checksum IBAN mod-97 secondo ISO 13616, struttura BIC secondo ISO 9362, formati di importo e data, e totali di controllo (NbOfTxs, CtrlSum) ricalcolati dai record anziché dati per buoni. Provi il menu «Introduci un errore…» — ogni scenario inserisce esattamente un difetto realistico (una cifra IBAN invertita, un BIC malformato, una colonna mancante, un importo europeo con virgola decimale, una data impossibile) e le mostra l’esito a livello di riga che il gateway di una banca segnalerebbe altrimenti solo giorni dopo.
La toolchain installata esegue un controllo molto più approfondito: validazione JSON Schema per ogni record con normalizzazione degli alias di campo, cinque insiemi di regole di schema (SEPA SCT, Instant, SDD Core, B2B, cross-border) con output --explain regola per regola, e validazione finale del documento generato rispetto all’XSD ufficiale ISO 20022 prima che un singolo byte venga scritto. Sono supportate dieci versioni di pain.001 e pain.008.001.02.
pip install pain001
pain001 -t pain.001.001.09 -d payments.csv -o out/ --scheme sepa-sct --dry-run
Il passaggio 3 qui sopra non è una simulazione: avvia un runtime Python in WebAssembly ed esegue xmlschema rispetto allo schema ufficiale pain.001.001.09, servito da questo sito — la stessa classe di controllo XSD applicata dalla CLI. Ciò che resta esclusivo della CLI è il resto della pipeline: la normalizzazione JSON Schema, i cinque insiemi di regole con --explain, e le altre dieci definizioni di messaggio.