Codis d'error de Factures
Tots els codis d'error de l'API pública que emet Factures, amb el seu estat HTTP, el seu type i una pàgina per codi.
Codis d'error que emet Factures. Cada code enllaça a la seva pròpia pàgina amb la causa i l'acció a prendre.
| Code | Type | HTTP | Descripció |
|---|---|---|---|
amount_reconciliation_failed | invalid_request_error | 422 | Els imports amb IVA inclòs no es poden repartir en línies que sumin exactament el cobrat, així que no s'ha emès res abans que alterar el total. El causa, per exemple, una retenció o un recàrrec d'equivalència que mouen el total més que una diferència d'arrodoniment. |
corrective_client_change_requires_substitution | invalid_request_error | 422 | La rectificativa va a nom d'un client diferent del de la factura original (p. ex. per un error a les dades del client): només pot ser una substitució, perquè per diferències l'import quedaria a nom de qui no va rebre la factura. |
corrective_full_cancellation_with_lines | invalid_request_error | 422 | Anul·lar la factura sencera per diferències (correction_type total, full a l'API, amb correction_nature: I) no admet línies: la rectificativa copia en negatiu totes les de l'original. |
corrective_invoice_inanulable | invalid_request_error | 422 | La factura és al seu torn una rectificativa, i les rectificatives no s'anul·len mai: la cadena de correcció ha de seguir sent auditable de punta a punta. |
corrective_substitution_negative_amount | invalid_request_error | 422 | En una rectificativa per substitució (correction_nature: S, o full amb lines sense naturalesa) cada línia porta l'import FINAL de la factura correcta, així que cap quantitat no pot ser negativa (art. 15.5 RD 1619/2012; VERI*FACTU no admet base negativa en una substitució). El preu unitari mai no és negatiu: el signe va a la quantitat. |
corrective_substitution_requires_full | invalid_request_error | 422 | Una rectificativa per substitució (correction_nature: S) substitueix la factura sencera; no hi ha substitució parcial. |
exemption_cause_contradicts_taxed_lines | invalid_request_error | 422 | La factura porta una causa d'exempció de capçalera que declara l'operació sense IVA (exempció, no subjecció o inversió del subjecte passiu) i alguna línia d'operació té un IVA major que zero. |
export_limit_exceeded | invalid_request_error | 422 | La selecció filtrada supera el límit de 5.000 factures de l'exportació, així que el fitxer es rebutja d'entrada en lloc de truncar-se en silenci. |
face_submission_attempt_conflict | conflict_error | 409 | Una altra petició va modificar l'intent d'enviament a FACe (reserva o conciliació) mentre hi actuaves. |
face_submission_completion_failed | api_error | 500 | FACe va respondre a l'enviament però la plataforma no ha pogut desar el resultat localment. |
face_submission_rejected | invalid_request_error | 422 | FACe va analitzar l'enviament i el va rebutjar amb el seu propi codi d'error (per exemple un codi DIR3 erroni, una signatura no vàlida o un duplicat). A diferència d'una transmissió incerta, FACe no va registrar la factura. |
face_transmission_uncertain | conflict_error | 409 | La factura es va enviar a FACe però es desconeix el resultat, de manera que FACe pot haver-la registrada o no. |
facturae_artifact_unavailable | api_error | 500 | L'arxiu Facturae conservat per a aquest enviament no es pot llegir de l'emmagatzematge perquè falta o està malmès. L'error és nostre. |
facturae_operation_forbidden | authorization_error | 403 | L'actor no pot fer aquesta operació de Facturae; details.reason indica si es tracta dels permisos de l'actor, de l'autoritat de l'emissor, de l'accés a la factura o del dret a enviar-la. |
invalid_correction_nature | invalid_request_error | 422 | correction_nature només accepta I (per diferències: la rectificativa porta l'import de la rectificació, amb el seu signe) o S (substitució: porta la factura tal com queda, amb les línies finals). |
invalid_correction_reason | invalid_request_error | 422 | El motiu de rectificació queda fora de la llista fiscal tancada (error_fundado, concurso, incobrable, error_importe, error_cliente, devolucion, descuento, otras), que mapeja als codis AEAT R1 a R4. |
invalid_delivery_channel | invalid_request_error | 422 | El canal d'enviament queda fora del catàleg, que només té dos valors: email (es registra sol quan el servidor de correu accepta el missatge) i manual (un enviament que vas fer pels teus propis mitjans). |
invalid_facturae_structured_data | invalid_request_error | 422 | Les dades estructurades necessàries per construir l'arxiu Facturae no són vàlides: un valor és incorrecte, els totals no quadren amb les línies o l'XML generat no compleix l'esquema. |
invalid_invoice_business_data | invalid_request_error | 422 | Les dades comercials de la factura (referències de línia, centres administratius o els seus rols) contenen un valor no vàlid. |
invalid_invoice_id | invalid_request_error | 400 | La referència de factura rebuda no és un identificador vàlid; sol voler dir que s'ha colat un valor intern on l'API espera l'id públic. |
invalid_invoice_number | invalid_request_error | 422 | El número de factura no segueix el format de numeració de la seva sèrie (per defecte SÈRIE-AAAA-NNN; les rectificatives porten el número correlatiu de la seva pròpia sèrie, p. ex. R-2026-001). |
invalid_invoice_payment_terms | invalid_request_error | 422 | El calendari de pagament de la factura incompleix una regla, per exemple terminis que no sumen el total, dates no vàlides o falta el compte bancari contractual. |
invalid_invoice_status | invalid_request_error | 422 | El valor enviat com a estat de factura queda fora del catàleg del cicle de vida documental (draft, scheduled, issued, overdue, cancelled, annulled). Abans de la versió d'API 2026-10-01 issued es publica com a sent, i allà on l'API llegeix un estat d'entrada (els filtres d'estat, el canvi d'estat massiu) sent es pren com a issued. paid és un valor vàlid per llegir i per filtrar, però no per escriure: registra un cobrament al seu lloc. |
invalid_invoice_uuid | invalid_request_error | 400 | L'identificador de factura de la ruta o del payload no és un UUID vàlid. |
invalid_payment_method | invalid_request_error | 422 | El mètode de pagament queda fora de l'allowlist tancada: bank_transfer, cash, credit_card, sepa_direct_debit, paypal, bizum, other. |
invoice_administrative_precondition_required | invalid_request_error | 428 | El canvi del routing administratiu no va indicar sobre quina versió es basa. |
invoice_administrative_version_conflict | conflict_error | 409 | El routing administratiu de la factura (els seus centres administratius) va canviar després de llegir-la. |
invoice_already_annulled | invalid_request_error | 422 | La factura ja estava anul·lada. L'anul·lació és terminal i, amb VeriFactu actiu, el seu registre d'anul·lació ja va arribar a l'AEAT. |
invoice_already_paid | invalid_request_error | 422 | La factura ja està cobrada. paid és un estat terminal i comptablement tancat: l'IVA repercutit ja s'ha declarat, o es declararà en el període. |
invoice_already_rectified_in_full | invalid_request_error | 422 | La factura ja està anul·lada completament (una rectificativa total per diferències), i aleshores no admet cap més rectificativa; o està substituïda completament, i aleshores no admet una altra rectificació total. |
invoice_already_sent | invalid_request_error | 422 | La factura ja va ser emesa: té número definitiu de sèrie i, amb VeriFactu actiu, l'alta a l'AEAT. L'emissió no passa dues vegades. |
invoice_cannot_assign_number | invalid_request_error | 422 | Es va demanar número definitiu per a una factura que no és esborrany, o que ja en té. La numeració de sèrie és monòtona i els números no es reassignen. |
invoice_cannot_be_marked_as_sent | invalid_request_error | 422 | La marca d'enviament registra que una factura emesa va arribar al client, així que només s'aplica a factures issued o overdue. Un esborrany o una factura programada encara no són la factura fiscal, i una cancel·lada o anul·lada ja no ho és. |
invoice_cannot_be_sent | invalid_request_error | 422 | La factura està anul·lada o cancel·lada: ja no representa una operació vàlida, així que el seu PDF no es lliura al destinatari. |
invoice_due_date_not_last_instalment | invalid_request_error | 422 | La factura té terminis de pagament i el seu venciment (due_on) falta o no és la data de l'últim termini, que és quan venç la factura. |
invoice_invalid_status_transition | invalid_request_error | 422 | L'estat destí no és assolible des de l'actual. El cicle de vida documental és dirigit: draft passa a scheduled, issued o cancelled, scheduled torna a draft o avança a issued, issued passa a overdue o annulled, overdue a annulled, i cancelled i annulled són terminals. El cicle és el mateix a totes les versions d'API; abans de 2026-10-01 l'estat issued es publica com a sent. Estar cobrada no és un pas d'aquest cicle: es llegeix del ledger de cobraments. |
invoice_not_cancellable_in_current_state | invalid_request_error | 422 | Cancel·lar retira un esborrany que encara no és fiscalment vinculant, així que només s'aplica mentre la factura està en draft. |
invoice_not_correctable_in_current_state | invalid_request_error | 422 | Una rectificativa només s'emet contra una factura ja emesa, estigui cobrada o no: issued o overdue (una factura emesa es publica com a sent abans de la versió d'API 2026-10-01). Un esborrany, una factura programada, una cancel·lada o una anul·lada no tenen res a rectificar. |
invoice_not_deletable_in_current_state | invalid_request_error | 422 | Només s'esborren les factures en draft i cancelled. Una factura numerada no desapareix mai: la sèrie correlativa ha de seguir sent auditable. |
invoice_not_editable_in_current_state | invalid_request_error | 422 | Només un esborrany admet edició. Un cop emesa, la factura és immutable i el seu contingut queda congelat juntament amb el seu registre fiscal. |
invoice_not_eligible_for_action | invalid_request_error | 422 | L'acció sol·licitada no s'aplica a aquesta factura: el seu tipus o el seu estat actual la deixen fora de l'abast de l'operació. |
invoice_not_found | not_found_error | 404 | L'identificador no resol a cap factura de l'empresa autenticada. Les factures d'una altra empresa responen exactament igual. |
invoice_not_modifiable_in_current_state | invalid_request_error | 422 | El camp que intentes canviar està congelat per a l'estat actual — per exemple el règim fiscal d'una factura anul·lada. |
invoice_not_paid | invalid_request_error | 422 | Es va demanar un justificant de pagament d'una factura sense cobrament registrat, així que no hi ha res a certificar. |
invoice_not_reschedulable_in_current_state | invalid_request_error | 422 | Reprogramar mou la data d'emissió d'una factura que espera en scheduled, i aquesta factura no està esperant. |
invoice_not_schedulable_in_current_state | invalid_request_error | 422 | Només un esborrany es pot programar: la programació reserva un moment futur d'emissió sense consumir encara número de sèrie. |
invoice_not_unschedulable_in_current_state | invalid_request_error | 422 | Desprogramar torna la factura de scheduled a draft, així que només s'aplica mentre segueix esperant a emetre's. |
invoice_not_unsendable_in_current_state | invalid_request_error | 422 | Desfer la marca d'enviament només s'aplica a una factura emesa (issued o overdue; publicada com a sent abans de la versió d'API 2026-10-01) sense cobraments vigents: neteja sent_at i sent_via i conserva el seu estat fiscal. |
invoice_payment_terms_precondition_required | invalid_request_error | 428 | El canvi del calendari de pagament no va indicar sobre quina versió es basa. |
invoice_payment_terms_version_conflict | conflict_error | 409 | El calendari de pagament de la factura va canviar després de llegir-la. |
invoice_requires_at_least_one_line | invalid_request_error | 422 | La factura no porta cap línia d'operació, així que no té base imposable i no es pot emetre. Passa tant quan no envies línies com quan totes les que envies són de suplert: un suplert és una quantitat pagada per compte del client (art. 78.Tres.3 LIVA), no una operació teva. |
invoice_type_change_not_allowed | invalid_request_error | 422 | Només un esborrany alterna entre factura completa (F1) i simplificada (F2). Una rectificativa, una substitutiva (F3) o una rectificativa de simplificada (R5) conserven el seu tipus, i una simplificada sense client no passa a completa sense indicar abans el destinatari. |
invoice_without_retained_presentation | invalid_request_error | 422 | Una factura del trimestre no té presentació documental retinguda (és anterior a la captura o mai es va inicialitzar), de manera que no es pot incloure al paquet trimestral. Apareix com a error_code als failures del manifest del ZIP trimestral, on la factura queda fora, i com a subcodi d'una violació de regla de negoci al correu trimestral. |
invoice_year_required_for_ambiguous_number | invalid_request_error | 422 | Aquest número de factura correspon a més d'una factura, així que per si sol no n'identifica cap. Es repeteix per dos motius independents: l'exercici (les sèries reciclen la numeració cada any) i la sèrie (dues sèries de la teva empresa emeten cadascuna el seu F-2026-001). |
line_total_checksum_mismatch | invalid_request_error | 422 | El line_total declarat no coincideix amb el que calcula Factuarea per a aquella línia (quantitat × preu − descompte + IVA − retenció + recàrrec) i la desviació supera el cèntim de tolerància. L'import que es factura i es declara a l'AEAT és sempre el calculat aquí, així que la discrepància vol dir que el teu sistema i la factura emesa no quadrarien. |
line_type_invalid | invalid_request_error | 422 | El tipus de línia queda fora del catàleg tancat NORMAL / SUPLIDO. Una factura emesa només distingeix dues naturaleses: el que véns tu, que forma base imposable i porta IVA, i el suplert, que són diners avançats en nom i per compte del client i per això queda fora de la base (art. 78.Tres.3 LIVA). |
no_invoices_in_period | invalid_request_error | 422 | L'operació trimestral no va trobar factures en el període demanat, així que no hi ha res a empaquetar ni a enviar. |
operation_date_after_issue_date | invalid_request_error | 422 | operation_on és posterior a issued_on. Una data d'operació posterior a la d'expedició només és vàlida en pagaments anticipats (clau de règim 14 o 15). |
pack_return_invalid | invalid_request_error | 422 | La devolució d'un component de pack en una factura rectificativa incompleix les regles de devolució. El pack no és a la factura que es rectifica, el producte no és un dels seus components, la quantitat no és negativa, el preu difereix del preu repartit original o es retornen més unitats de les venudes. |
payment_method_invalid | invalid_request_error | 422 | La mateixa allowlist tancada que invalid_payment_method, reportada quan el valor es rebutja en llegir el camp de mètode de pagament del payload. |
rectified_invoice_inanulable | invalid_request_error | 422 | Aquesta factura ja té una rectificativa total (correction_type: full), que va tornar el seu import i la seva mercaderia. Anul·lar-la ara els tornaria per segona vegada. Una rectificativa parcial no bloqueja: la factura segueix viva i anul·lar-la és legítim. |
reminder_not_applicable | invalid_request_error | 422 | El recordatori de pagament no escau: la factura no està en issued ni overdue (una factura emesa es publica com a sent abans de la versió d'API 2026-10-01), no hi ha adreça de destinatari, falta l'enllaç públic o està desactivat, o ja va sortir un altre recordatori les últimes 24 hores. |
scheduled_for_in_past | invalid_request_error | 422 | scheduled_for no és estrictament futur, així que no hi ha cap espera a reservar. |
simplified_invoice_cannot_be_substituted | invalid_request_error | 422 | Una de les factures de la llista de substitució no es pot substituir: no és simplificada, està cancel·lada o anul·lada, pertany a una altra empresa, o ja té substitutiva. |
simplified_invoice_not_allowed | invalid_request_error | 422 | L'operació no és elegible per a factura simplificada: supera els 3.000 €, o és un lliurament intracomunitari, una exportació, una operació amb inversió del subjecte passiu, o el client necessita factura completa per deduir l'IVA. |
simplified_invoices_disabled | invalid_request_error | 422 | L'empresa no té habilitades les factures simplificades, així que no es pot crear una factura de tipus F2. |
simplified_limit_exceeded | invalid_request_error | 422 | Les línies portarien la factura simplificada (F2) per sobre del límit legal absolut de 3.000 € IVA inclòs. |
suplido_line_cannot_carry_taxes | invalid_request_error | 422 | La línia de suplert porta càrrega pròpia: tipus d'IVA, retenció, recàrrec d'equivalència, descompte, clau de règim, causa d'exempció o producte/paquet. Un suplert no és una operació de l'emissor, així que repercutir-hi un impost seria tributar per un lliurament que no has fet, i lligar-lo a un producte mouria un estoc que mai no has venut. |
suplido_not_allowed_in_simplified_invoice | invalid_request_error | 422 | La factura és simplificada (F2) i una simplificada no identifica el destinatari. Sense destinatari identificat no hi ha a qui acreditar el pagament per compte d'altri, així que l'import no admet el tractament de suplert en aquest tipus de factura. |
suplido_requires_source_invoice_reference | invalid_request_error | 422 | La línia de suplert no informa source_invoice_reference, el número del justificant que el tercer va expedir a nom del client. Sense aquest justificant el pagament no s'acredita com a fet per compte d'altri i Hisenda el tractaria com a base imposable pròpia de l'emissor, amb el seu IVA repercutit. |
tax_rate_mismatch | invalid_request_error | 422 | La línia tria un impost per id (tax_rate_id, retention_rate_id o surcharge_rate_id) i el contradiu: declara un tax_rate, retention_rate o surcharge_rate diferent del d'aquest impost, o l'impost és d'una altra classe que el seu camp (per exemple, una retenció a surcharge_rate_id). L'IVA triat qualifica a més la línia (règim, qualificació AEAT i causa d'exempció), així que totes dues dades han de coincidir. |
unattended_replay_mismatch | idempotency_error | 409 | Ja es va emetre una factura amb aquest external_id amb un altre tipus o un altre total, així que la petició no es pot tractar com un reenviament de la mateixa venda. Es respon amb 409, code i subcode unattended_replay_mismatch i param=external_id: l'external_id identifica UNA operació i no caduca. No és idempotency_key_reused, el 422 d'una Idempotency-Key reutilitzada amb un payload diferent. |
Relacionat
Codis d'error per categoria
Localitza un error per la categoria que l'emet.
Taula de referència completa
Tots els codis, estats HTTP, tipus i descripcions en una referència.
Model d'errors
Interpreta la resposta d'error i gestiona els errors per codi.