EXEMPTION_REQUIRES_RECIPIENT_ID_TYPE
Exemption ‹reason› requires the recipient to carry an alternative identifier of type ‹id type›
Category: Invoices
| HTTP status | 400 Bad Request |
| Retry | After fixing the cause |
When it happens
A line uses an exemption that requires the recipient to be identified with a specific kind of alternative_id. Today that is EXENTA_ART_25 (intra-EU supply of goods), which requires an EU VAT number (NIF_IVA). It is checked on the recipient as it will be declared, whether it comes from recipient or from the saved customer.
How to fix it
Give the recipient an alternative_id of the required type, on the invoice or on the customer.
Retry
Not as is: the same request fails the same way. Fix the cause described above, then send the request again, under a new Idempotency-Key if the body changed.
Returned by
The operations where this code is most likely. The list is not exhaustive.
POST /v1/companies/{company_id}/invoicesPATCH /v1/companies/{company_id}/invoices/{invoice_id}POST /v1/companies/{company_id}/invoices/{invoice_id}/issue
Rules that cite this code
- CNT-005 A full invoice identifies the recipient by NIF
- TAX-004 Intra-EU supplies of goods are exempt only with the buyer's EU VAT number
Example response
When this error occurs, the API answers 400 Bad Request with a JSON body of this shape:
{
"type": "https://docs.beel.es/errors/EXEMPTION_REQUIRES_RECIPIENT_ID_TYPE",
"title": "EXEMPTION_REQUIRES_RECIPIENT_ID_TYPE",
"detail": "Exemption ‹reason› requires the recipient to carry an alternative identifier of type ‹id type›",
"instance": "/v1/<resource>",
"errors": [],
"success": false,
"error": {
"code": "EXEMPTION_REQUIRES_RECIPIENT_ID_TYPE",
"message": "Exemption ‹reason› requires the recipient to carry an alternative identifier of type ‹id type›",
"details": {}
},
"meta": {
"timestamp": "2026-05-21T10:00:00Z",
"request_id": "4bf92f3577b34da6a3ce929d0e0e4736"
}
}The type URI is stable and always resolves to this page.
Message
Send the request with Accept-Language: <es|en|ca> to receive the message in your preferred language.
Placeholders are filled in at runtime:
‹reason›— the line'sexemption_reason.‹id type›— the code of the required identifier type, for example02(NIF_IVA).
Other errors in this category
ATTACH_SOURCE_INVOICE_UNAVAILABLE
A source invoice is not available (it does not exist or you no longer have access); uncheck the source invoices attachment to send without the folder
ATTACH_SOURCE_INVOICES_NO_SOURCES
The invoice has no consolidation disbursements: there are no source invoices to attach
ATTACH_SOURCE_INVOICES_REQUIRES_PDF
Attaching the source invoices also requires attaching the invoice PDF
ATTACH_SOURCE_PDF_MISSING
These source invoices have no generated PDF: ‹value›
ATTACH_SOURCE_ZIP_TOO_LARGE
The source invoices ZIP (‹value› MB) exceeds the maximum sendable size (‹value› MB)
Keep exploring
EXEMPTION_REGIME_NOT_SUPPORTED_IN_VERIFACTU
The given exemption reason corresponds to a special regime (REAEA, equivalence surcharge, cash basis, investment gold…), not to an art. 20-26 LIVA exemption. VeriFactu models it with clave_regimen, not operacion_exenta. Switch to the appropriate clave_regimen.
EXPORT_LIMIT_EXCEEDED
The export selects ‹value› invoices and the maximum per download is ‹value›. Narrow the date range or reduce the selection and export again.