Vai al contenuto principale
VeriFactu

Errore 2004 di VeriFactu: l'ora del tuo record è avanti rispetto a quella dell'AEAT

Ogni record di fatturazione riporta il momento esatto in cui è stato generato, con il suo fuso orario. L'AEAT lo confronta con l'ora dei propri sistemi e, se il tuo arriva dal futuro oltre un margine, risponde con il 2004. È uno dei pochi errori che l'AEAT accetta senza chiedere una correzione, ma segnala qualcosa sul tuo server.

FlexigoTech · Responsabile: Víctor Gómez · Aggiornato il 4 novembre 2026

In breve

Modulo
VeriFactu
Versioni
Odoo 17, 18, 19 e 20
Verificato
nel codice del modulo, versione 20.0 · nelle fonti collegate in fondo
Lettura
3 min

Il campo e cosa controlla l'AEAT

Il campo si chiama FechaHoraHusoGenRegistro e memorizza data, ora e fuso orario del momento in cui il sistema ha generato il record, nella forma AAAA-MM-DDThh:mm:ss più lo scostamento dall'UTC. Il documento di validazione dell'AEAT stabilisce che deve essere minore o uguale alla data del sistema dell'AEAT, con un margine di errore. Se lo supera, l'AEAT restituisce un avviso senza rifiuto.

Il testo del 2004 nell'elenco dell'AEAT è «El valor del campo FechaHoraHusoGenRegistro debe ser la fecha actual del sistema de la AEAT, admitiéndose un margen de error de:» e si ferma lì: l'elenco non pubblica quanti secondi o minuti valga quel margine.

Scheda del 2004 e dei codici 1243, 1244 e 1268
Il 2004, in blu perché l'AEAT accetta il record, e i tre codici dello stesso campo che invece lo rifiutano, in ambra.

I quattro codici di questo campo

CodiceTesto dell'AEATEffetto
2004El valor del campo FechaHoraHusoGenRegistro debe ser la fecha actual del sistema de la AEAT, admitiéndose un margen de error de:Accettato; l'AEAT non chiede di correggere.
1243Error técnico al obtener el cálculo de la fecha del huso horario.Rifiuta il record per un guasto tecnico dell'AEAT.
1244El campo FechaHoraHusoGenRegistro tiene un formato incorrecto.Rifiuta il record.
1268La longitud del campo FechaHoraHusoGenRegistro no cumple con las especificaciones.Rifiuta il record.

Nel suo elenco di errori ammissibili, l'AEAT segna questo caso come uno dei due che non richiedono correzione. L'altro è la ClaveRegimen vuota con l'imposta IPSI.

Da dove Odoo prende l'ora

Il modulo prende il momento in cui ha generato il record di fatturazione, al momento della registrazione della fattura, con il suo scostamento dall'UTC. Quel momento viene memorizzato e non può essere modificato in seguito, come l'impronta, perché fa parte di ciò che viene concatenato. Il formato lo costruisce sempre allo stesso modo il modulo stesso, quindi un 1244 o un 1268 con un invio del nostro modulo non dovrebbe comparire: se lo vedi, inviacelo.

Per il 2004, la domanda è se l'orologio del server Odoo fosse avanti al momento della registrazione della fattura. Il modulo include un cron, Verifactu: Clock Drift Check, che ogni 1 ora confronta l'ora di Odoo con quella del suo database PostgreSQL, e un pulsante per farlo quando vuoi. Non confronta con nessun orologio esterno: se Odoo e il database girano sulla stessa macchina, o sono avanti entrambi, non segnala nulla. L'ora reale si verifica con un server NTP.

Stato della catena in Odoo con i pulsanti Verificare integrità e Check Clock Drift
In Stato della catena ci sono i due pulsanti: Verificare integrità e Check Clock Drift, quello che confronta l'ora di Odoo con quella del database. Schermata di Odoo 20 con dati dimostrativi.

Cosa fare in ogni caso

  • Con un 2004, nulla sulla fattura: è registrata. Chiedi a chi gestisce il server di confrontare il suo orologio con un server NTP e di sincronizzarlo se è avanti. Check Clock Drift non serve a questo: confronta solo Odoo con il suo database.
  • Con un 1243, attendi: è un errore tecnico dal lato dell'AEAT e la coda riprova da sola, con attese da 2 minuti a 12 ore, fino al sesto tentativo.
  • Con un 1244 o un 1268, scrivi a comercial@flexigobe.com con la risposta dell'invio.

In Odoo, un 2004 lascia il record come «Aceptado con errores (subsanar)», la stessa etichetta di tutti i codici 2xxx. Per questo codice in particolare l'AEAT dice che non serve alcuna correzione: puoi lasciarlo così.

Un orologio in ritardo dà errore?

La regola dell'AEAT verifica solo se la tua ora è maggiore della loro più il margine. Un record con l'ora indietro non fa scattare questo controllo.

Continua a leggere

Errore 2000 di VeriFactu: l'AEAT ricalcola la tua impronta e non corrispondeErrore 2000 di VeriFactu: l'AEAT ricalcola l'impronta SHA-256 e non ottiene la tua. Perché la fattura risulta registrata e cosa fare in Odoo 17, 18, 19 e 20.Errore 2007 di VeriFactu: l'AEAT aveva già fatture tue e riceve un altro «primer registro»L'errore 2007 di VeriFactu: l'AEAT ha già fatture del tuo NIF fatte con lo stesso sistema e riceve un altro primo record. Cause in Odoo 17-20 e come risolvere.Errori tecnici VeriFactu: quando il problema è nei sistemi dell'AEATErrori tecnici VeriFactu lato AEAT (4108, 4110, 4111, 4118, 4128, 3500, 3501, 1129, 1256, 1288): quali riprova Odoo e quali rinvii tu.
Verificato nel codice del modulo (versione 20.0) e nelle fonti collegate

Fonti