Verifactu Direct API · operation types
You provide the breakdown already classified on each line. The full registration body is in Getting started; only lineas and, for international operations, id_otro change here. Sample data is fictitious.
Multiple VAT rates
"lineas": [
{ "base_imponible": "350", "tipo_impositivo": "21", "cuota_repercutida": "73.50" },
{ "base_imponible": "180", "tipo_impositivo": "10", "cuota_repercutida": "18" }
]VAT exempt
{ "serie": "FV", "numero": "1050", "fecha_expedicion": "2026-04-01",
"tipo_factura": "F1", "descripcion": "Exempt healthcare services",
"nif": "B66912043", "nombre": "Valley Clinic Ltd",
"lineas": [ { "base_imponible": "500", "operacion_exenta": "E1" } ],
"importe_total": "500" }Not subject
"lineas": [ { "base_imponible": "500", "calificacion_operacion": "N1" } ]Reverse charge
The recipient accounts for VAT: calificacion_operacion: "S2", with zero rate and amount.
{ "tipo_factura": "F1", "descripcion": "Construction work (reverse charge)",
"nif": "B85447761", "nombre": "Northwind Works Ltd",
"lineas": [ { "base_imponible": "1200", "tipo_impositivo": "0",
"cuota_repercutida": "0", "calificacion_operacion": "S2" } ],
"importe_total": "1200" }Intra-EU supply of goods
Use the recipient's VAT-IES number (id_type: "02") and exemption E5.
{ "tipo_factura": "F1", "descripcion": "Supply of goods to an EU company",
"id_otro": { "codigo_pais": "FR", "id_type": "02", "id": "FR47812904563" },
"nombre": "Atelier Vionnet SARL",
"lineas": [ { "base_imponible": "800", "operacion_exenta": "E5" } ],
"importe_total": "800" }Intra-EU B2B services
{ "tipo_factura": "F1", "descripcion": "B2B services to an EU company",
"id_otro": { "codigo_pais": "DE", "id_type": "02", "id": "DE293847561" },
"nombre": "Brückner Logistik GmbH",
"lineas": [ { "base_imponible": "800", "calificacion_operacion": "N2" } ],
"importe_total": "800" }Intra-EU B2C below the threshold
Identify a private customer without VAT-IES using id_type: "03" and charge Spanish VAT.
{ "tipo_factura": "F1", "descripcion": "Sale to an EU consumer",
"id_otro": { "codigo_pais": "IT", "id_type": "03", "id": "YA1846723" },
"nombre": "Giulia Ferraro",
"lineas": [ { "base_imponible": "250", "tipo_impositivo": "21", "cuota_repercutida": "52.50" } ],
"importe_total": "302.50" }Intra-EU B2C under OSS
Above the threshold, use clave_regimen: "17" and calificacion_operacion: "N2", without a Spanish rate or amount.
{ "tipo_factura": "F1", "descripcion": "Sale to an EU consumer (OSS)",
"id_otro": { "codigo_pais": "PT", "id_type": "03", "id": "K9920841" },
"nombre": "Tiago Sousa",
"lineas": [ { "base_imponible": "250", "clave_regimen": "17", "calificacion_operacion": "N2" } ],
"importe_total": "250" }Export of goods
{ "tipo_factura": "F1", "descripcion": "Export of goods",
"id_otro": { "codigo_pais": "US", "id_type": "03", "id": "P472019583" },
"nombre": "Northbridge Trading LLC",
"lineas": [ { "base_imponible": "900", "clave_regimen": "02", "operacion_exenta": "E2" } ],
"importe_total": "900" }Export of services
{ "tipo_factura": "F1", "descripcion": "Services to a non-EU customer",
"id_otro": { "codigo_pais": "US", "id_type": "03", "id": "P472019583" },
"nombre": "Northbridge Trading LLC",
"lineas": [ { "base_imponible": "900", "calificacion_operacion": "N2" } ],
"importe_total": "900" }Equivalence surcharge
Use clave_regimen: "18" and supply the surcharge rate and amount.
"lineas": [
{ "base_imponible": "200", "tipo_impositivo": "21", "cuota_repercutida": "42",
"clave_regimen": "18", "tipo_recargo_equivalencia": "5.2",
"cuota_recargo_equivalencia": "10.4" }
]IGIC and IPSI
"lineas": [ { "impuesto": "03", "base_imponible": "200", "tipo_impositivo": "7", "cuota_repercutida": "14" } ]"lineas": [ { "impuesto": "02", "base_imponible": "200", "tipo_impositivo": "10", "cuota_repercutida": "20" } ]Used-goods margin scheme (REBU)
VAT is calculated on the margin, but importe_total is the sale price. clave_regimen: "03" disables the base + tax = total validation.
{ "tipo_factura": "F1", "descripcion": "Sale of used goods (REBU)",
"nif": "B72648193", "nombre": "Northwind Workshop Ltd",
"lineas": [ { "base_imponible": "826.45", "tipo_impositivo": "21",
"cuota_repercutida": "173.55", "clave_regimen": "03" } ],
"importe_total": "3000" }Issued by a third party or the recipient
"especial": { "emitida_por_tercero_o_destinatario": "T",
"nombre_tercero": "Summit Advisors Ltd", "nif_tercero": "B66912043" }"especial": { "emitida_por_tercero_o_destinatario": "D" }Code table
| Field | Values |
|---|---|
tipo_factura | F1, F2, F3, R1–R5 |
impuesto | 01 VAT, 02 IPSI, 03 IGIC |
operacion_exenta | E1–E6 |
calificacion_operacion | S1, S2, N1, N2 |
clave_regimen | 01 general, 02 export, 03 REBU, 17 OSS, 18 surcharge |
id_otro.id_type | 02 VAT ID, 03 passport, 04 country ID, 06 other |
tipo_rectificativa | S replacement, I differences |
rechazo_previo | N, X, S |