Cosa risponde l'AEAT
Ogni invio contiene tra 1 e 1.000 record. La risposta riporta uno stato per l'intero invio (Correcto, ParcialmenteCorrecto o Incorrecto), uno stato per record (Correcto, AceptadoConErrores o Incorrecto) e il tempo di attesa fino all'invio successivo.
L'AEAT pubblica il suo catalogo ufficiale degli errori, con 247 codici, in tre famiglie:
| Famiglia | Cosa significa | Cosa fare |
|---|---|---|
| 4xxx: invio intero rifiutato | Niente di quell'invio è stato registrato. | Correggi la causa e reinvia l'invio completo. |
| Record rifiutato | Quel record non è accettato; il resto dell'invio sì. | Correggi quel record e reinvia solo quello. |
| 2xxx: accettato con errori | Il record è registrato, ma c'è qualcosa da correggere. | Non reinviarlo come nuovo: correggi ciò che indica il codice. |
Due casi conviene riconoscerli subito. Il codice 3000 segnala un record duplicato: se risulta già corretto o accettato con errori, non serve reinviarlo. E l'impronta, uno SHA-256 concatenato al record precedente, viene ricalcolata dall'AEAT: se non coincide, il record viene accettato con un errore da correggere.

Prima di arrivare all'AEAT: il certificato
L'AEAT identifica l'emittente dal certificato presentato al momento della connessione. Senza certificato, il suo servizio reindirizza alla pagina di errore 4033, «nessun certificato rilevato». Con un certificato che non si convalida, alla 4011. In Odoo questi casi si fermano prima:
No active certificate for company …: l'azienda non ha un certificato attivo. Caricalo in Configuration › Certificates.The certificate … of company … has expired.: è scaduto. C'è un avviso quotidiano di scadenza proprio per non arrivare a questo punto.
Cosa blocca il tuo sistema prima dell'invio
| Messaggio | Cosa manca | Soluzione |
|---|---|---|
Company … has no NIF for Veri*Factu. | L'azienda non ha il NIF. | Compilalo nei dati dell'azienda. |
Invalid NIF length: "…" (must be 9 chars) | Il NIF del cliente non ha 9 caratteri. | Controlla il NIF nel contatto. |
Invalid NIF digits: "…" | Il NIF contiene caratteri non validi. | Correggilo nel contatto. |
Cannot post invoice: invalid counterparty identifier. | L'identificativo del cliente non è valido. | Correggi l'identificativo prima di registrare. |
Record … has no tax breakdown (Desglose) to declare. | La fattura non ha il dettaglio delle imposte. | Controlla le imposte nelle righe. |
Record … is chained to a previous record that does not exist. | La catena dei record è interrotta. | Non toccarla a mano: controlla lo stato della catena e scrivici. |
The AEAT accepts at most 1000 records per request. | Un invio con più record del consentito. | La coda li divide; se vedi questo messaggio, avvisaci. |

Dove guardare in Odoo
La coda di invio si elabora ogni minuto e si trova in AEAT Submission › Submission Queue. Gli errori restituiti dall'AEAT hanno il loro elenco in AEAT Errors, e il catalogo completo dei codici in AEAT Error Catalogue. Queste tre schermate risolvono la maggior parte dei casi senza aprire il documento tecnico dell'AEAT, anche se è linkato qui sotto nel caso ti serva.

Il modulo è pubblicato per Odoo 17, 18, 19 e 20. Se un codice non è nel catalogo, mandaci il testo esatto della risposta: lo cercheremo nel documento ufficiale delle validazioni.
Continua a leggere
Verificato nel codice del modulo (versione 20.0) e nelle fonti collegate
Fonti
- 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_
- Codice del modulo: flexigo_spain_verifactu 20.0 (4dc42be4): models/account_move.py
- Codice del modulo: flexigo_spain_verifactu 20.0 (4dc42be4): models/verifactu_aeat_client.py
- Codice del modulo: flexigo_spain_verifactu 20.0 (4dc42be4): models/verifactu_nif_validator.py
- Codice del modulo: flexigo_spain_verifactu 20.0 (4dc42be4): data/verifactu_crons.xml
- Codice del modulo: flexigo_spain_verifactu 20.0 (4dc42be4): views/menu_views.xml
- apps.odoo.com/apps/modules/20.0/flexigo_spain_verifactu
