Skip to main content
VeriFactu

VeriFactu errors with the customer tax ID: census, format and name

The customer's tax ID is the data that causes the most VERI*FACTU rejections, and the AEAT, the Spanish tax agency, checks it in three ways: whether it has a valid format, whether it is in its census and whether it comes with a name when it belongs to an individual. Our Odoo module stops the format errors before the invoice is posted; census errors can only be seen by the AEAT.

FlexigoTech · Editor in charge: Víctor Gómez · Updated 4 November 2026

Key facts

Module
VeriFactu
Versions
Odoo 17, 18, 19 and 20
Checked
in the module's source code, version 20.0 · against the sources linked at the end
Reading time
4 min

Format: what Odoo stops first

When an invoice with a Spanish tax ID (NIF) is posted, the module validates it before chaining: length of 9, digits, check letter, an NIE starting with X, Y or Z, and the CIF of companies. If something fails, the invoice is not posted and Cannot post invoice: invalid counterparty identifier. appears, followed by the reason. That is why the two AEAT format codes are rare with the module:

  • 1123: El formato del NIF es incorrecto., the tax ID format is wrong.
  • 1290: El campo ID no contiene un NIF con formato correcto., the ID field does not hold a correctly formatted tax ID.

If a customer has no tax ID in Odoo, there is nothing to validate and the invoice goes out as simplified, with no recipient.

Card for the customer tax ID errors in VeriFactu
The eight codes on this page, all in amber: the AEAT rejects the invoice record and carries on with the rest of the submission.

Census: what only the AEAT knows

A tax ID can be perfectly formed and still not exist in the AEAT census. There are several codes for that, and they do not all treat the invoice the same way:

CodeAEAT text, in shortEffect
1109 and 1110El NIF no está identificado en el censo de la AEAT.Reject the record.
1121El campo ID no está identificado en el censo de la AEAT.Rejects the record.
1193In Destinatarios, the tax ID must be identified and different from the issuer's.Rejects the record.
1154The issuer of the corrected or replaced invoice cannot be found in the census.Rejects the record.
2001The tax ID in the recipients block is not in the census.Accepts the record and asks for a correction.

The official list gives 1109 and 1110 the same text and does not explain what sets them apart. 2001, on the other hand, is explained in the validation document as an admissible error, and has its own page.

Two cases worth recognising

1193 has a catch: besides being in the census, the customer's tax ID has to be different from yours. An invoice to your own company, with your tax ID as customer, triggers it.

1154 looks at the block of the corrected invoice. In a credit note, the module identifies the original invoice with your own tax ID as issuer, so it could only appear if your company's tax ID were not in the census.

Invoicing records in Odoo with each customer's identifier
The Contraparte Identificador column is the tax ID that travels as recipient on each invoice; the simplified one carries none. Odoo 20 screenshot with demo data; the AEAT answers are simulated.

Name: code 1283

«Si el NIF de la contraparte es persona fisica se debe informar tambien de su NombreRazon»: if the counterparty's tax ID belongs to an individual, their name must be included too. With the module, the name always travels with the tax ID: it is the contact's name and, if that were empty, the number itself.

What to do with a rejection

  1. Check the tax ID with the customer and correct it on their Odoo contact for the next invoices.
  2. Remember that the submission is built from the record created at posting: the queue will retry the same record, with the old tax ID, until it lands in Dead Letter.
  3. For the rejected invoice, write to comercial@flexigobe.com with its number and we will close it with you.

The codes on this page, with the AEAT's text

Each code with its literal text, in Spanish, as the AEAT's error list gives it:

CodeAEAT text (Spanish)
1109El NIF no está identificado en el censo de la AEAT.
1110El NIF no está identificado en el censo de la AEAT.
1121El campo ID no está identificado en el censo de la AEAT.
1123El formato del NIF es incorrecto.
1154El NIF del emisor de la factura rectificada/sustitutiva no se ha podido identificar en el censo de la AEAT.
1193En el bloque Destinatarios si se identifica mediante NIF, el NIF debe estar identificado y ser distinto del NIF ObligadoEmision.
1283Si el NIF de la contraparte es persona fisica se debe informar tambien de su NombreRazon
1290El campo ID no contiene un NIF con formato correcto.

Keep reading

VeriFactu error 2001: your customer's tax ID is not in the AEAT censusVeriFactu error 2001: the recipient's tax ID is not in the AEAT census. Why the invoice is accepted anyway and what to do in Odoo 17 to 20.VeriFactu errors with foreign customers: 1239 and the IDOtro codesVeriFactu errors in the recipient block for customers outside Spain (1239, 1101, 1111, 1122, 1232…): what the AEAT requires and what Odoo sends with our module.VeriFactu errors with your company tax ID: 4104, 4107, 4109, 4115, 4116 and the IDEmisorFactura familyVeriFactu errors on the issuer tax ID (4104, 4107, 4109, 4115, 4116, 1108, 1215…): what the AEAT checks, which Odoo field it comes from and how to resend the submission.
Checked in the module's source code (version 20.0) and the linked sources

Sources