El que respon l'AEAT
Cada enviament porta entre 1 i 1.000 registres. La resposta inclou un estat per a tot l'enviament (Correcto, ParcialmenteCorrecto o Incorrecto), un estat per registre (Correcto, AceptadoConErrores o Incorrecto) i el temps d'espera fins al següent enviament.
L'AEAT publica el seu catàleg oficial d'errors, amb 247 codis, en tres famílies:
| Família | Què vol dir | Què cal fer |
|---|---|---|
| 4xxx: enviament sencer rebutjat | No s'ha registrat res d'aquest enviament. | Corregeix la causa i torna a enviar tot l'enviament. |
| Registre rebutjat | Aquest registre no s'accepta; la resta de l'enviament sí. | Corregeix aquest registre i torna a enviar només aquest. |
| 2xxx: acceptat amb errors | El registre queda registrat, però s'ha de corregir alguna cosa. | No el tornis a enviar com a nou: corregeix el que diu el codi. |
Val la pena reconèixer de seguida dos casos concrets. El codi 3000 indica un registre duplicat: si ja consta com a correcte o acceptat amb errors, no cal tornar-lo a enviar. I l'empremta (huella), un SHA-256 encadenat amb el registre anterior, la recalcula l'AEAT: si no coincideix, el registre s'accepta amb un error que s'ha de corregir.

Abans d'arribar a l'AEAT: el certificat
L'AEAT identifica l'emissor pel certificat que es presenta en connectar. Sense certificat, el seu servei redirigeix a la pàgina d'error 4033, «no s'ha detectat cap certificat». Amb un certificat que no valida, a la 4011. A Odoo, aquests casos s'aturen abans:
No active certificate for company …: l'empresa no té cap certificat actiu. Puja'l a Configuration › Certificates.The certificate … of company … has expired.: ha caducat. Hi ha un avís diari de caducitat perquè no arribis fins aquí.
El que el teu sistema bloqueja abans d'enviar
| Missatge | Què falta | Solució |
|---|---|---|
Company … has no NIF for Veri*Factu. | L'empresa no té NIF. | Omple'l a les dades de l'empresa. |
Invalid NIF length: "…" (must be 9 chars) | El NIF del client no té 9 caràcters. | Revisa el NIF al contacte. |
Invalid NIF digits: "…" | El NIF conté caràcters no vàlids. | Corregeix-lo al contacte. |
Cannot post invoice: invalid counterparty identifier. | L'identificador del client no és vàlid. | Corregeix l'identificador abans de publicar. |
Record … has no tax breakdown (Desglose) to declare. | La factura no té desglossament d'impostos. | Revisa els impostos de les línies. |
Record … is chained to a previous record that does not exist. | La cadena de registres està trencada. | No la toquis a mà: revisa l'estat de la cadena i escriu-nos. |
The AEAT accepts at most 1000 records per request. | Un enviament amb més registres dels permesos. | La cua els divideix; si veus això, avisa'ns. |

On mirar a Odoo
La cua d'enviaments es processa cada minut i és a AEAT Submission › Submission Queue. Els errors retornats per l'AEAT tenen la seva pròpia llista a AEAT Errors, i el catàleg complet de codis, a AEAT Error Catalogue. Aquestes tres pantalles resolen la majoria de casos sense obrir el document tècnic de l'AEAT, tot i que te l'enllacem a sota per si el necessites.

El mòdul està publicat per a Odoo 17, 18, 19 i 20. Si un codi no és al catàleg, envia'ns el text exacte de la resposta: el trobarem al document oficial de validacions.
Continua llegint
Comprovat al codi del mòdul (versió 20.0) i a les fonts enllaçades
Fonts
- www.agenciatributaria.es/static_files/AEAT_Desarrolladores/EEDD/IVA/VERI-FACTU/Validacione
- prewww2.aeat.es/static_files/common/internet/dep/aplicaciones/es/aeat/tikeV1.0/cont/ws/Sis
- sede.agenciatributaria.gob.es/Sede/errores/erro4033.html
- www.agenciatributaria.es/static_files/AEAT_Desarrolladores/EEDD/IVA/VERI-FACTU/Veri-Factu_
- Codi del mòdul: flexigo_spain_verifactu 20.0 (4dc42be4): models/account_move.py
- Codi del mòdul: flexigo_spain_verifactu 20.0 (4dc42be4): models/verifactu_aeat_client.py
- Codi del mòdul: flexigo_spain_verifactu 20.0 (4dc42be4): models/verifactu_nif_validator.py
- Codi del mòdul: flexigo_spain_verifactu 20.0 (4dc42be4): data/verifactu_crons.xml
- Codi del mòdul: flexigo_spain_verifactu 20.0 (4dc42be4): views/menu_views.xml
- apps.odoo.com/apps/modules/20.0/flexigo_spain_verifactu
