מה ההדגמה הזו מציגה — ומה הצינור האמיתי מוסיף
כל אצוות דוגמה ניתנת גם להורדה כקובץ CSV לשימוש כתבנית לייצוא מ-ERP או מגיליון אלקטרוני משלכם — שורת הכותרת היא החוזה.
ההדגמה שלמעלה מממשת את שכבת ה-fail-fast של צינור Pain001: בדיקות שדות חובה, ספרות ביקורת IBAN לפי ISO 13616 mod-97, מבנה BIC לפי ISO 9362, פורמטים של סכום ותאריך, וסכומי בקרה (NbOfTxs, CtrlSum) המחושבים מחדש מהרשומות במקום להסתמך עליהם. נסו את תפריט "הכניסו שגיאה…" — כל תרחיש שותל בדיוק פגם מציאותי אחד (ספרת IBAN הפוכה, BIC פגום, עמודה חסרה, סכום עם פסיק עשרוני אירופי, תאריך בלתי אפשרי) ומציג לכם את הממצא ברמת השורה ששער הבנק היה מדווח עליו אחרת רק כעבור ימים.
מערך הכלים המותקן מריץ שער עמוק בהרבה: אימות JSON Schema לכל רשומה עם נרמול כינויי שדות, חמישה ספרי כללים (SEPA SCT, Instant, SDD Core, B2B, חוצה גבולות) עם פלט --explain כלל אחר כלל, ואימות סופי של המסמך המופק מול ה-XSD הרשמי של ISO 20022 לפני שנכתב ולו בית אחד. נתמכות עשר גרסאות pain.001 וכן pain.008.001.02.
pip install pain001
pain001 -t pain.001.001.09 -d payments.csv -o out/ --scheme sepa-sct --dry-run
שלב 3 שלמעלה אינו סימולציה: הוא מאתחל סביבת ריצה של Python ב-WebAssembly ומריץ xmlschema מול סכמת pain.001.001.09 הרשמית, המוגשת מהאתר הזה — אותה מחלקת שער XSD שה-CLI מפעיל. מה שנותר בלעדי ל-CLI הוא שאר הצינור: נרמול JSON Schema, חמשת ספרי הכללים עם --explain, ועשר הגדרות ההודעות הנוספות.