Listas de códigos de la EN 16931: todos los códigos que necesita una factura electrónica
Una factura electrónica EN 16931 está hecha en gran parte de códigos. Cada campo codificado toma su valor de una lista internacional fija, y las reglas oficiales de validación comprueban cada uno de ellos. Basta un solo código erróneo para que la factura se rechace, aunque todos los importes cuadren.
Esta es la referencia completa: para cada lista de códigos, el campo que rellena, la regla que la comprueba y los códigos que de verdad vas a usar.
Qué son las listas de códigos de la EN 16931
La EN 16931 es la norma semántica europea para las facturas electrónicas. Define cada campo de la factura como un término de negocio con un número, como BT-3 para el tipo de factura. Los campos codificados no admiten texto libre. Remiten a listas de códigos internacionales que mantienen UN/CEFACT, ISO y la Comisión Europea.
Los artefactos oficiales de validación comprueban esas listas con las reglas BR-CL, de BR-CL-01 a BR-CL-26. Todas las reglas BR-CL son fatales: un código erróneo es un error, nunca un aviso. Peppol BIS Billing 3.0, XRechnung y Factur-X se basan todos en las mismas listas de códigos.
Resumen: campo, lista de códigos y regla
| Campo | Lista de códigos | Regla |
|---|---|---|
| Código de tipo de factura (BT-3) | UNTDID 1001 | BR-CL-01 |
| Código de moneda de la factura (BT-5) e importes | ISO 4217 | BR-CL-04, BR-CL-03 |
| Código de moneda de contabilización del IVA (BT-6) | ISO 4217 | BR-CL-05 |
| Código de fecha de devengo del IVA (BT-8) | UNTDID 2005 | BR-CL-06 |
| Código de asunto de la nota de factura (BT-21) | UNTDID 4451 | BR-CL-08 |
| Códigos de país (BT-40, BT-55 y otros) | ISO 3166-1 alpha-2 | BR-CL-14, BR-CL-15 |
| Código de tipo de medio de pago (BT-81) | UNTDID 4461 | BR-CL-16 |
| Código de categoría de IVA (BT-118, BT-151) | UNCL5305 | BR-CL-17, BR-CL-18 |
| Código de motivo del descuento (BT-98, BT-140) | UNTDID 5189 | BR-CL-19 |
| Código de motivo del cargo (BT-105, BT-145) | UNTDID 7161 | BR-CL-20 |
| Código de motivo de exención del IVA (BT-121) | VATEX | BR-CL-22 |
| Unidad de medida (BT-130) | Recomendaciones 20 y 21 de UN/ECE | BR-CL-23 |
| Tipo MIME del anexo (BT-125) | Tipos de medios MIME | BR-CL-24 |
| Esquema de dirección electrónica (BT-34, BT-49) | EAS | BR-CL-25 |
| Esquemas de identificadores (partes, artículos, lugar de entrega) | ISO 6523 ICD | BR-CL-10, BR-CL-11, BR-CL-21, BR-CL-26 |
| Esquema de clasificación del artículo (BT-158) | UNTDID 7143 | BR-CL-13 |
Códigos de categoría de IVA (UNCL5305)
El código de categoría de IVA indica al receptor qué tratamiento de IVA se aplica. Aparece en el desglose del IVA (BT-118) y en cada línea de factura (BT-151).
| Código | Significado | Cuándo lo usas |
|---|---|---|
| S | Tipo general | Ventas nacionales a tipo general o reducido |
| Z | Bienes a tipo cero | Bienes gravados al 0 % |
| E | Exento del impuesto | Operaciones exentas, por ejemplo servicios médicos o educativos |
| AE | Inversión del sujeto pasivo | El comprador liquida el IVA |
| K | Exento de IVA por entrega intracomunitaria en el EEE | Entrega intracomunitaria de bienes o prestación de servicios dentro del EEE |
| G | Exportación exenta, sin IVA repercutido | Exportación de bienes fuera de la UE |
| O | Servicios no sujetos al impuesto | Operaciones no sujetas al IVA |
| L | Impuesto General Indirecto Canario | El IGIC en Canarias |
| M | Impuesto sobre la Producción, los Servicios y la Importación en Ceuta y Melilla | El IPSI en Ceuta y Melilla |
| B | IVA transferido, en Italia | El split payment italiano |
Para E, AE, K, G y O, la norma también pide el motivo: un texto en BT-120 o un código en BT-121.
Códigos de motivo de exención del IVA (VATEX)
La lista VATEX da ese motivo en forma de código. Los cuatro que más vas a encontrar:
| Código | Significado |
|---|---|
| VATEX-EU-AE | Inversión del sujeto pasivo |
| VATEX-EU-IC | Entrega intracomunitaria |
| VATEX-EU-G | Exportación fuera de la UE |
| VATEX-EU-O | No sujeto a IVA |
Los demás códigos VATEX remiten a un artículo concreto de la Directiva del IVA de la UE 2006/112/CE. VATEX-EU-132, por ejemplo, cubre las exenciones del artículo 132.
Códigos de medio de pago (UNTDID 4461)
BT-81 indica cómo se paga la factura. La EN 16931 admite la lista UNTDID 4461 completa, pero en la práctica unos pocos códigos hacen todo el trabajo:
| Código | Significado |
|---|---|
| 10 | En efectivo |
| 30 | Transferencia |
| 31 | Transferencia de adeudo |
| 42 | Pago en cuenta bancaria |
| 48 | Tarjeta bancaria |
| 49 | Adeudo directo |
| 57 | Acuerdo permanente |
| 58 | Transferencia SEPA |
| 59 | Adeudo directo SEPA |
| 68 | Servicio de pago en línea |
| 97 | Compensación entre socios |
| ZZZ | Definido de mutuo acuerdo |
En la zona del euro y con un IBAN, 58 es la opción correcta. Para un adeudo directo SEPA (59), el receptor espera además la referencia del mandato y el identificador del acreedor.
Unidades de medida (Recomendaciones 20 y 21 de UN/ECE)
BT-130 necesita un código de unidad, nunca una palabra como “uds.” u “horas”.
| Código | Significado |
|---|---|
| C62 | Uno |
| H87 | Pieza |
| HUR | Hora |
| DAY | Día |
| MON | Mes |
| ANN | Año |
| KGM | Kilogramo |
| MTR | Metro |
| LTR | Litro |
| MTK | Metro cuadrado |
| KWH | Kilovatio hora |
C62 y H87 son válidos los dos para artículos que se cuentan. Los códigos de embalaje de la Recomendación 21 empiezan por X.
Códigos de tipo de documento (UNTDID 1001)
BT-3 indica qué tipo de documento es.
| Código | Significado |
|---|---|
| 380 | Factura comercial |
| 381 | Nota de crédito |
| 383 | Nota de débito |
| 384 | Factura corregida |
| 386 | Factura de anticipo |
| 389 | Autofactura |
| 326 | Factura parcial |
Un conjunto de reglas nacional puede acotar esta lista. XRechnung espera 326, 380, 381, 384, 389, 875, 876 u 877, tal como establece la regla BR-DE-17; consulta todas las reglas BR-DE explicadas.
Moneda, país y fecha de devengo del IVA
- Moneda (ISO 4217): tres letras, como EUR, PLN o CZK. BT-5 contiene la moneda de la factura. Si contabilizas el IVA en otra moneda, BT-6 contiene esa.
- País (ISO 3166-1 alpha-2): dos letras, como NL, DE, BE o FR. Grecia es GR en el código de país, aunque los números de IVA griegos empiezan por EL.
- Código de fecha de devengo del IVA (UNTDID 2005): solo se admiten tres códigos. 3 significa la fecha de la factura, 35 la fecha real de entrega y 432 la fecha de pago.
Direcciones electrónicas (EAS)
La dirección electrónica del vendedor y del comprador (BT-34 y BT-49) lleva un código de esquema de la lista EAS. Ese código indica a una red como Peppol cómo leer el identificador.
| Código | Esquema |
|---|---|
| 0088 | Número de localización global (GLN) |
| 0106 | Número de la Cámara de Comercio neerlandesa (KvK) |
| 0190 | Identificador de organismo público neerlandés (OIN) |
| 0204 | Leitweg-ID de Peppol (sector público alemán) |
| 0208 | Número de empresa belga |
| 9930 | Número de IVA alemán |
| 9944 | Número de IVA neerlandés |
| 0009 | Código SIRET francés |
| 0002 | Número SIRENE francés |
| 9957 | Número de IVA francés |
Los identificadores de las partes fuera de la dirección electrónica usan la lista ISO 6523 ICD, donde los códigos de cuatro cifras funcionan de la misma manera.
Anexos (tipos MIME)
Un documento anexo (BT-125) declara su tipo MIME. La EN 16931 admite application/pdf, image/png, image/jpeg, text/csv y los dos formatos de hoja de cálculo: el tipo de Excel (xlsx) y el de OpenDocument (ods).
Cómo SealDoc elige por ti los códigos correctos
SealDoc convierte los datos de factura escritos en lenguaje corriente en los códigos correctos, y comprueba el resultado antes de que nada salga por la puerta:
- Unidades con tus propias palabras. Escribe hora, Stunde, heure o uur, y SealDoc escribe HUR. Día, mes, año, kilogramo y pieza se convierten en DAY, MON, ANN, KGM y C62, en los ocho idiomas que habla SealDoc.
- Categoría de IVA a partir del tipo. Indica el tipo y SealDoc deduce la categoría: el 21 % se convierte en S. Para facturas exentas, con inversión del sujeto pasivo o de exportación eliges E, AE, G u O, y SealDoc exige el motivo que pide la norma.
- Medio de pago a partir del IBAN. Con un IBAN en la factura, SealDoc escribe 58, transferencia SEPA.
- Notas de crédito como 381. Una nota de crédito se emite contra la factura original y lleva el código 381.
- Validación antes del sellado. Cada factura se valida según la EN 16931 antes de que SealDoc la selle, incluidas las reglas de las listas de códigos. Una factura con un código erróneo nunca sale de SealDoc.
¿Quieres comprobar una factura que ya tienes? Nuestro validador gratuito aplica las mismas reglas y nombra la regla que hay detrás de cada fallo. ¿Lo vas a integrar en tu propio software? La API hace todo lo anterior en una sola llamada.
Preguntas frecuentes
¿Qué código de categoría de IVA uso para la inversión del sujeto pasivo?
AE. Añade también el motivo, como texto en BT-120 o como código VATEX-EU-AE en BT-121.
¿Cuál es la diferencia entre las categorías de IVA E y O?
E es una operación sujeta al IVA pero exenta, como la asistencia sanitaria. O es una operación que queda totalmente fuera del ámbito de aplicación del IVA.
¿Qué código de medio de pago corresponde a una transferencia bancaria SEPA?
58, transferencia SEPA. El código 30 es la transferencia genérica, sin el significado SEPA.
¿Uso C62 o H87 para los artículos?
Los dos son válidos. C62 significa “uno” y es la opción más habitual para artículos que se cuentan. H87 significa “pieza”.
¿Qué código de país tiene Grecia?
GR. El prefijo EL solo aparece en los números de IVA griegos.
¿Qué pasa si un código es erróneo?
Falla la regla BR-CL de esa lista, y todas las reglas BR-CL son fatales. Un punto de acceso Peppol o un receptor de XRechnung rechaza la factura. ¿Quieres conocer el trasfondo de los propios campos? Lee Entendiendo EN16931: el modelo de datos de factura de Europa y los errores de validación de Peppol más comunes.