pain.001.001.03 — unstructured address after 2026-11-15
Wzorcowy przypadek reguły EPC o adresie strukturalnym: adresy zawierają wyłącznie AdrLine, bez TwnNm. Błędem blokującym czyni go data wykonania zapisana w pliku (ReqdExctnDt = 2026-11-20, po progu 15.11.2026) — przy wcześniejszej dacie ten sam plik daje jedynie ostrzeżenie.
pain.001.001.03 — Nieprawidłowy
Wzorcowy przypadek reguły EPC o adresie strukturalnym: adresy zawierają wyłącznie AdrLine, bez TwnNm. Błędem blokującym czyni go data wykonania zapisana w pliku (ReqdExctnDt = 2026-11-20, po progu 15.11.2026) — przy wcześniejszej dacie ten sam plik daje jedynie ostrzeżenie.
Co pokazuje ten plik
Wzorcowy przypadek reguły EPC o adresie strukturalnym: adresy zawierają wyłącznie AdrLine, bez TwnNm. Błędem blokującym czyni go data wykonania zapisana w pliku (ReqdExctnDt = 2026-11-20, po progu 15.11.2026) — przy wcześniejszej dacie ten sam plik daje jedynie ostrzeżenie.
| Transakcje | 1 |
|---|---|
| Suma | 500,00 € |
| Schemat | SEPA |
| Data w pliku | 2026-11-20 |
Zawarte wady
- EPC153-22Unstructured postal address for debtor "ACME SA": <TwnNm> is missing. Payments executed on or after 2026-11-15 must carry a structured or hybrid address (EPC153-22 v2.1); your bank must reject this instruction.
- EPC153-22Unstructured postal address for creditor "Fournisseur SARL": <TwnNm> is missing and <Ctry> is missing. Payments executed on or after 2026-11-15 must carry a structured or hybrid address (EPC153-22 v2.1); your bank must reject this instruction.
Cytowane dosłownie z walidatora, bez parafrazy.
Wszystkie strony, numery IBAN i kwoty poniżej są fikcyjne. IBAN-y są poprawne strukturalnie — przechodzą test mod-97 — ale nie należą do żadnego rzeczywistego rachunku.
Zawartość pliku
<?xml version="1.0" encoding="UTF-8"?>
<!--
ValidateFin sample file — SEPA Credit Transfer, pain.001.001.03.
Expected validation result: INVALID — unstructured address after the cut-off.
Deliberate defect: the addresses carry AdrLine only, with no TwnNm. From
2026-11-15 (EPC153-22 v2.1) an address that is present must be structured
(TwnNm + Ctry) or hybrid. The trigger is the execution date INSIDE the file:
ReqdExctnDt is 2026-11-20, so this is a blocking error. Move that date before
2026-11-15 and the very same file downgrades to a non-blocking warning.
All parties and account numbers are fictitious.
Reference page: https://validatefin.com/en/resources/samples/sepa-pain001-unstructured-address
License: CC-BY-4.0
-->
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pain.001.001.03">
<CstmrCdtTrfInitn>
<GrpHdr>
<MsgId>MSG-ADDR-2026</MsgId>
<CreDtTm>2026-07-09T09:00:00</CreDtTm>
<NbOfTxs>1</NbOfTxs>
<CtrlSum>1250.00</CtrlSum>
<InitgPty><Nm>ACME SA</Nm></InitgPty>
</GrpHdr>
<PmtInf>
<PmtInfId>PMT-ADDR-1</PmtInfId>
<PmtMtd>TRF</PmtMtd>
<NbOfTxs>1</NbOfTxs>
<CtrlSum>1250.00</CtrlSum>
<PmtTpInf><SvcLvl><Cd>SEPA</Cd></SvcLvl></PmtTpInf>
<ReqdExctnDt>2026-11-20</ReqdExctnDt>
<Dbtr>
<Nm>ACME SA</Nm>
<PstlAdr>
<Ctry>BE</Ctry>
<AdrLine>CITY HALL GROTE MARKT 1</AdrLine>
<AdrLine>1000 BRUSSELS</AdrLine>
</PstlAdr>
</Dbtr>
<DbtrAcct><Id><IBAN>FR1420041010050500013M02606</IBAN></Id></DbtrAcct>
<DbtrAgt><FinInstnId><BIC>PSSTFRPPPAR</BIC></FinInstnId></DbtrAgt>
<ChrgBr>SLEV</ChrgBr>
<CdtTrfTxInf>
<PmtId><EndToEndId>E2E-ADDR-1</EndToEndId></PmtId>
<Amt><InstdAmt Ccy="EUR">1250.00</InstdAmt></Amt>
<CdtrAgt><FinInstnId><BIC>GEBABEBB</BIC></FinInstnId></CdtrAgt>
<Cdtr>
<Nm>Fournisseur SARL</Nm>
<PstlAdr>
<AdrLine>RUE DE LA LOI 16</AdrLine>
<AdrLine>1040 BRUXELLES</AdrLine>
</PstlAdr>
</Cdtr>
<CdtrAcct><Id><IBAN>BE68539007547034</IBAN></Id></CdtrAcct>
<RmtInf><Ustrd>Facture 2026-001</Ustrd></RmtInf>
</CdtTrfTxInf>
</PmtInf>
</CstmrCdtTrfInitn>
</Document>
Skąd wiemy, że te wyniki są aktualne
Każdy plik w tej bibliotece przechodzi przez walidator serwisu przy każdym buildzie. Oczekiwany wynik podany wyżej potwierdza test automatyczny: gdyby plik przestał odpowiadać temu, co głosi ta strona, build by się wywalił. Dwie odziedziczone fikstury naprawiono w ten sposób przed publikacją: trzy numery IBAN nie przechodziły mod-97, a kilka nazw używało znaków spoza podstawowego zestawu SEPA.
Przelew SEPA (pain.001)
- pain.001.001.03 — valid credit transfer
- pain.001.001.09 — valid, hybrid address
- pain.001.001.03 — CtrlSum mismatch
- pain.001.001.03 — invalid IBAN
- pain.001.001.03 — NbOfTxs mismatch
- pain.001.001.11 — valid, fully structured address, executed after 2026-11-15
- pain.001.001.09 — valid, two payment batches with different execution dates
- pain.001.001.03 — nine-character BIC
- pain.001.001.03 — accent and ampersand outside the SEPA character set
- pain.001.001.03 — 250 transfers, high-volume payroll run
- pain.001.001.03 — unstructured address, executed before 2026-11-15 (warning only)