ValidateFin

pain.001.001.03 — unstructured address after 2026-11-15

The reference case for the EPC structured-address rule: addresses carry AdrLine only, with no TwnNm. What makes it a blocking error is the execution date inside the file (ReqdExctnDt = 2026-11-20, after the 2026-11-15 cut-off) — move that date earlier and the very same file downgrades to a warning.

pain.001.001.03 — Invalid

The reference case for the EPC structured-address rule: addresses carry AdrLine only, with no TwnNm. What makes it a blocking error is the execution date inside the file (ReqdExctnDt = 2026-11-20, after the 2026-11-15 cut-off) — move that date earlier and the very same file downgrades to a warning.

SEPA Credit Transfer (pain.001) pain.001.001.03 ISO 20022 / EPC153-22 v2.1Expected result: Invalid — 2 errors

What this file shows

The reference case for the EPC structured-address rule: addresses carry AdrLine only, with no TwnNm. What makes it a blocking error is the execution date inside the file (ReqdExctnDt = 2026-11-20, after the 2026-11-15 cut-off) — move that date earlier and the very same file downgrades to a warning.

Transactions1
Total€500.00
SchemeSEPA
Date in the file2026-11-20

The defects it carries

  • 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.

Quoted verbatim from the validator, not paraphrased.

Last verified: License: CC-BY-4.0

Every party, IBAN and amount below is fictitious. The IBANs are structurally valid — they pass the mod-97 check — but they belong to no real account.

File content

<?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>

How we know these results hold

Every file in this library is run through the site's own validator on each build. The expected result stated above is asserted by an automated test — if a file stopped matching what this page claims, the build would fail. Two inherited fixtures were repaired this way before publication: three IBANs failed the mod-97 check and several names used characters outside the basic SEPA character set.

SEPA Credit Transfer (pain.001)