pain.001.001.03 — accent and ampersand outside the SEPA character set
Un pain.001 cuyo beneficiario se llama «Café Renard & Fils SARL»: una letra acentuada y un ampersand, ambos fuera del juego de caracteres latino básico aprobado por el EPC (a-z A-Z 0-9 y / - ? : ( ) . , ' + espacio). El XML está bien formado y el XSD oficial lo acepta sin problema: Max70Text admite cualquier cadena. Este defecto vive por completo en la capa de reglas, y por eso estos ficheros llegan al banco, que los rechaza o los translitera en silencio.
pain.001.001.03 — Inválido
Un pain.001 cuyo beneficiario se llama «Café Renard & Fils SARL»: una letra acentuada y un ampersand, ambos fuera del juego de caracteres latino básico aprobado por el EPC (a-z A-Z 0-9 y / - ? : ( ) . , ' + espacio). El XML está bien formado y el XSD oficial lo acepta sin problema: Max70Text admite cualquier cadena. Este defecto vive por completo en la capa de reglas, y por eso estos ficheros llegan al banco, que los rechaza o los translitera en silencio.
Lo que muestra este fichero
Un pain.001 cuyo beneficiario se llama «Café Renard & Fils SARL»: una letra acentuada y un ampersand, ambos fuera del juego de caracteres latino básico aprobado por el EPC (a-z A-Z 0-9 y / - ? : ( ) . , ' + espacio). El XML está bien formado y el XSD oficial lo acepta sin problema: Max70Text admite cualquier cadena. Este defecto vive por completo en la capa de reglas, y por eso estos ficheros llegan al banco, que los rechaza o los translitera en silencio.
| Transacciones | 1 |
|---|---|
| Total | 250,00 € |
| Esquema | SEPA |
| Fecha en el fichero | 2026-03-06 |
Los defectos que contiene
- CharsetNon-SEPA character(s) in creditor name for "Café Renard & Fils SARL": é &. Allowed: a-z A-Z 0-9 / - ? : ( ) . , ' + space.
Citado literalmente del validador, sin parafrasear.
Todas las partes, IBAN e importes siguientes son ficticios. Los IBAN son estructuralmente válidos —superan el mod-97— pero no corresponden a ninguna cuenta real.
Contenido del fichero
<?xml version="1.0" encoding="UTF-8"?>
<!--
ValidateFin sample file — SEPA Credit Transfer, pain.001.001.03, BROKEN ON PURPOSE.
Expected validation result: INVALID — the creditor name leaves the basic SEPA
character set.
The EPC-approved Latin character set is: a-z A-Z 0-9 and / - ? : ( ) . , ' + space.
The creditor here is "Cafe Renard & Fils SARL" spelled with an accented "e" and an
ampersand, both of which are outside it. The XML is perfectly well-formed and the
official XSD accepts it (Max70Text takes any string) — this defect lives entirely in
the EPC rulebook layer, which is exactly why files like this reach the bank and are
rejected or silently transliterated there.
All parties and account numbers are fictitious.
Reference page: https://validatefin.com/en/resources/samples/sepa-pain001-invalid-charset
License: CC-BY-4.0
-->
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pain.001.001.03"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<CstmrCdtTrfInitn>
<GrpHdr>
<MsgId>CT-CHARSET-2026-0001</MsgId>
<CreDtTm>2026-03-02T08:30:00</CreDtTm>
<NbOfTxs>1</NbOfTxs>
<CtrlSum>250.00</CtrlSum>
<InitgPty>
<Nm>ACME Corporation SA</Nm>
</InitgPty>
</GrpHdr>
<PmtInf>
<PmtInfId>PMT-CHARSET-20260302</PmtInfId>
<PmtMtd>TRF</PmtMtd>
<NbOfTxs>1</NbOfTxs>
<CtrlSum>250.00</CtrlSum>
<PmtTpInf>
<SvcLvl>
<Cd>SEPA</Cd>
</SvcLvl>
</PmtTpInf>
<ReqdExctnDt>2026-03-06</ReqdExctnDt>
<Dbtr>
<Nm>ACME Corporation SA</Nm>
</Dbtr>
<DbtrAcct>
<Id>
<IBAN>FR7630006000011234567890189</IBAN>
</Id>
</DbtrAcct>
<DbtrAgt>
<FinInstnId>
<BIC>BNPAFRPP</BIC>
</FinInstnId>
</DbtrAgt>
<CdtTrfTxInf>
<PmtId>
<EndToEndId>E2E-CHARSET-001</EndToEndId>
</PmtId>
<Amt>
<InstdAmt Ccy="EUR">250.00</InstdAmt>
</Amt>
<CdtrAgt>
<FinInstnId>
<BIC>SOGEFRPP</BIC>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>Café Renard & Fils SARL</Nm>
</Cdtr>
<CdtrAcct>
<Id>
<IBAN>FR3314508600001234567890150</IBAN>
</Id>
</CdtrAcct>
<RmtInf>
<Ustrd>Facture CR-2026-0042 - restauration</Ustrd>
</RmtInf>
</CdtTrfTxInf>
</PmtInf>
</CstmrCdtTrfInitn>
</Document>
Cómo sabemos que estos resultados se sostienen
Cada fichero de esta biblioteca pasa por el propio validador del sitio en cada build. El resultado esperado indicado arriba lo verifica un test automatizado: si un fichero dejara de coincidir con lo que afirma esta página, el build fallaría. Dos fixtures heredadas se repararon así antes de publicarse: tres IBAN no superaban el mod-97 y varios nombres usaban caracteres fuera del juego SEPA básico.
Transferencia 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.03 — unstructured address after 2026-11-15
- 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 — 250 transfers, high-volume payroll run
- pain.001.001.03 — unstructured address, executed before 2026-11-15 (warning only)