Pain001

Aggiunga i suoi dati di pagamento

Trascini qui un file CSV — oppure clicchi per sfogliare

Massimo 2 MB · letto localmente dal suo browser, mai caricato

Scarichi un esempio da usare come modello: bonifico SEPA · cross-border · lotto di 20 righe

Risultato della validazione & XML generato

Aggiunga i dati al passaggio 1 — la validazione viene eseguita automaticamente.

The validated pain.001.001.09 document will appear here — add data in step 1.

Convalida con l’XSD ufficiale ISO 20022

I passaggi 1–2 eseguono controlli rapidi scritti a mano. Questo passaggio esegue l’originale: un runtime Python (via WebAssembly) che esegue xmlschema rispetto allo schema ufficiale pain.001.001.09 — la stessa classe di validazione effettuata dalla CLI. Il motore di circa 13 MB è servito da questo sito e viene scaricato una sola volta, su sua richiesta (il download parte silenziosamente non appena il passaggio 2 produce XML valido).

Generi prima l’XML al passaggio 2 — il controllo XSD convalida quel risultato.

    Tutto in questa pagina viene eseguito nel suo browser — nulla viene caricato, memorizzato o inviato altrove. Questa demo implementa un sottoinsieme della pipeline (campi obbligatori, IBAN mod-97, struttura BIC, formati di importo e data, totali di controllo NbOfTxs/CtrlSum ricalcolati). Il passaggio 3 esegue il controllo XSD ufficiale direttamente qui via WebAssembly. La toolchain installata aggiunge inoltre la validazione JSON Schema e cinque insiemi di regole di schema — installi la CLI per la pipeline completa.

    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.