Aller au contenu principal
VeriFactu

Erreurs 3001 et 3002 de VeriFactu : annuler une facture que l'AEAT n'a pas ou qu'elle a déjà annulée

Annuler une facture dans Odoo, lorsqu'elle possède déjà son enregistrement VERI*FACTU, crée un enregistrement d'annulation qui part lui aussi vers l'AEAT. L'AEAT recherche la facture à annuler et répond par un code si elle ne la trouve pas ou si elle était déjà annulée. En outre, l'enregistrement d'annulation possède son propre bloc, Generador, avec une dizaine d'autres codes.

FlexigoTech · Responsable : Víctor Gómez · Mis à jour le 4 novembre 2026

L'essentiel

Module
VeriFactu
Versions
Odoo 17, 18, 19 et 20
Vérifié
dans le code du module, version 20.0 · dans les sources citées à la fin
Lecture
4 min

Les deux codes d'état

CodeTexte de l'AEATSignification
3001El registro de facturación ya ha sido dado de baja.Cette facture était déjà annulée auprès de l'AEAT.
3002No existe el registro de facturación.L'AEAT n'a aucune facture avec cet identifiant.

Les deux figurent dans la liste des rejets : l'annulation n'est pas acceptée, le reste de l'envoi l'est.

Fiche des codes d'annulation de VeriFactu
Les codes 3001, 3002 et ceux du bloc Generador, tous des codes de rejet de l'enregistrement.

Ce que fait Odoo lors de l'annulation d'une facture

Lorsque vous annulez une facture qui possède un enregistrement d'inscription, le module crée un enregistrement d'annulation et le chaîne comme les autres. Cet enregistrement porte l'identifiant de la facture annulée, avec votre NIF, son numéro et sa date d'émission, ainsi que son chaînage, les données du logiciel, la date et l'empreinte. La file d'attente l'envoie comme les autres.

Remarquez une condition : le module crée l'annulation dès que la facture possède un enregistrement d'inscription, quel que soit l'état de cet enregistrement. C'est de là que vient le 3002 le plus fréquent.

Quand apparaît chacun

Le 3002 après un rejet. Si l'inscription d'une facture a été rejetée et a fini en Dead Letter, l'AEAT ne l'a jamais enregistrée. Si vous annulez ensuite cette facture dans Odoo, l'annulation recherche un enregistrement qui n'existe pas, et la réponse est 3002.

Le 3001 en double. Si une facture figure déjà comme annulée auprès de l'AEAT et qu'une autre annulation arrive avec le même identifiant, la réponse est 3001. Cela peut arriver si la facture a été annulée par un autre moyen avant de l'être dans Odoo.

Dans les deux cas, l'annulation rejetée est relancée avec les mêmes données, à intervalles de 2 minutes à 12 heures, et finit en Dead Letter au sixième essai.

File d'envoi vers l'AEAT regroupée par état
La file regroupée par état : les enregistrements d'annulation passent par les mêmes états que les inscriptions. Capture d'Odoo 20 avec des données de démonstration ; les réponses de l'AEAT sont simulées.

Le bloc Generador

Selon le document de validations de l'AEAT, une annulation peut indiquer qui l'a générée grâce au champ GeneradoPor et au bloc Generador, qui vont toujours ensemble. Si le générateur est identifié par un NIF, celui-ci doit être renseigné et différent de celui de l'obligé. C'est de là que proviennent les codes 1224, 1225, 1227, 1228, 1229, 1230, 1231, 1258, 1259 et 1273, ainsi que le 1214, qui exige que le champ NumeroOTAlta soit un nombre positif de quatre chiffres.

L'enregistrement d'annulation du module ne comporte ni GeneradoPor ni Generador : aucun de ces codes ne peut donc provenir d'un envoi de ce module.

Que faire

  • Avant d'annuler une facture dont l'inscription est en Dead Letter, écrivez-nous : l'annulation ne règle rien et laisse une annulation sans objet.
  • En cas de 3001, vérifiez si la facture a été annulée auparavant par d'autres moyens.
  • Dans tous les cas, envoyez-nous le numéro de la facture à comercial@flexigobe.com et nous la examinerons avec vous.

Les codes de cette page, avec le texte de l'AEAT

Chaque code avec son texte littéral, tel que le donne la liste des erreurs de l'AEAT :

CodeTexte de l'AEAT (espagnol)
3001El registro de facturación ya ha sido dado de baja.
3002No existe el registro de facturación.
1214El campo NumeroOTAlta debe ser númerico positivo de 4 posiciones.
1224Si se informa el campo GeneradoPor deberá existir la agrupación Generador y viceversa.
1225El valor del campo GeneradoPor es incorrecto.
1227Si el campo GeneradoPor es igual a E debe estar relleno el campo NIF del bloque Generador.
1228En el bloque Generador si se cumplimenta NIF, no deberá existir la agrupación IDOtro y viceversa, pero es obligatorio que se cumplimente uno de los dos.
1229Si el valor de GeneradoPor es igual a T el valor del campo IDType del bloque Generador no debe ser No Censado (07).
1230Si el valor de GeneradoPor es igual a D y el CodigoPais tiene valor ES (España), el valor del campo IDType del bloque Generador debe ser Pasaporte (03) o No Censado (07).
1231El valor del campo IDType del bloque Generador es incorrecto.
1258El valor de campo NIF del bloque Generador es incorrecto.
1259En el bloque Generador si se identifica mediante NIF, el NIF debe estar identificado y ser distinto del NIF ObligadoEmision.
1273Error en el bloque de Generador.

À lire aussi

Erreur 3000 de VeriFactu : l'AEAT a déjà cette facture enregistréeL'erreur 3000 de VeriFactu signifie que l'AEAT a déjà cette facture. Quand elle survient, quel statut revient et pourquoi Odoo 17, 18, 19 et 20 ne la renvoie pas.Erreurs VeriFactu avec factures rectificatives : TipoRectificativa, factures rectifiées et substituéesErreurs VeriFactu sur rectificatives et substitutives (1107, 1114 à 1119) : quand TipoRectificativa et ImporteRectificacion s'appliquent et comment Odoo envoie un avoir.Subsanar dans VeriFactu : comment corriger un enregistrement et les erreurs de Subsanacion et RechazoPrevioComment corriger dans VeriFactu un enregistrement rejeté ou accepté avec erreurs : subsanation, RechazoPrevio, codes 1153 à 1276, 3003 et 3004, et Odoo.
Vérifié dans le code du module (version 20.0) et dans les sources citées

Sources