Pain001

Dodaj dane płatności

Przeciągnij tutaj plik CSV — lub kliknij, aby przeglądać

Maksymalnie 2 MB · odczytywany lokalnie przez przeglądarkę, nigdy nie przesyłany

Pobierz przykład i użyj go jako własnego szablonu: polecenie przelewu SEPA · transgraniczny · paczka 20 wierszy

Wynik walidacji & wygenerowany XML

Dodaj dane w kroku 1 — walidacja uruchomi się automatycznie.

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

Zweryfikuj względem oficjalnego XSD ISO 20022

Kroki 1–2 wykonują szybkie, ręcznie napisane kontrole. Ten krok uruchamia oryginał: środowisko Pythona (przez WebAssembly) wykonujące xmlschema względem oficjalnego pain.001.001.09 schematu — tę samą klasę walidacji, którą wykonuje CLI. Silnik o rozmiarze ~13 MB jest serwowany z tej witryny i pobierany raz, na żądanie (pobieranie rozpoczyna się dyskretnie, gdy tylko krok 2 wygeneruje poprawny XML).

Najpierw wygeneruj XML w kroku 2 — bramka XSD waliduje ten wynik.

    Wszystko na tej stronie działa w przeglądarce — nic nie jest przesyłane, zapisywane ani nigdzie wysyłane. To demo implementuje podzbiór potoku (pola wymagane, IBAN mod-97, struktura BIC, formaty kwot i dat, przeliczone NbOfTxs/CtrlSum sumy kontrolne). Krok 3 uruchamia oficjalną bramkę XSD bezpośrednio tutaj, przez WebAssembly. Zainstalowany zestaw narzędzi dodaje do tego walidację JSON Schema i pięć zbiorów reguł schematów płatności — zainstaluj CLI, aby uzyskać pełny potok.

    Co pokazuje to demo — i co dodaje prawdziwy potok

    Każdą przykładową paczkę można też pobrać jako plik CSV i użyć jako szablonu eksportu z własnego systemu ERP lub arkusza — wiersz nagłówka jest kontraktem.

    Powyższe demo implementuje warstwę fail-fast potoku Pain001: kontrole pól wymaganych, cyfry kontrolne IBAN mod-97 wg ISO 13616, strukturę BIC wg ISO 9362, formaty kwot i dat oraz sumy kontrolne (NbOfTxs, CtrlSum) przeliczane z rekordów, a nie przyjmowane na wiarę. Proszę wypróbować menu "Wprowadź błąd…" — każdy scenariusz wprowadza dokładnie jedną realistyczną usterkę (przestawioną cyfrę IBAN, błędny BIC, brakującą kolumnę, europejską kwotę z przecinkiem dziesiętnym, niemożliwą datę) i pokazuje wynik na poziomie wiersza, który bramka banku zgłosiłaby dopiero po kilku dniach.

    Zainstalowany zestaw narzędzi uruchamia znacznie głębszą bramkę: walidację JSON Schema dla każdego rekordu z normalizacją aliasów pól, pięć zbiorów reguł schematów płatności (SEPA SCT, Instant, SDD Core, B2B, transgraniczne) z wynikiem --explain reguła po regule oraz końcową walidację wyrenderowanego dokumentu względem oficjalnego XSD ISO 20022, zanim zostanie zapisany choć jeden bajt. Obsługiwanych jest dziesięć pain.001 wersji oraz pain.008.001.02.

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

    Krok 3 powyżej nie jest symulacją: uruchamia środowisko Pythona w WebAssembly i wykonuje xmlschema względem oficjalnego pain.001.001.09 schematu serwowanego z tej witryny — to ta sama klasa bramki XSD, którą stosuje CLI. Tylko w CLI pozostaje reszta potoku: normalizacja JSON Schema, pięć zbiorów reguł z --explain, oraz pozostałe dziesięć definicji komunikatów.