Wie Odoo einen ausländischen Kunden identifiziert
Das Modul bestimmt den Identifikatortyp beim Buchen der Rechnung anhand von zwei Feldern des Kontakts: Land und USt-IdNr.
- Kunde mit Land Spanien oder ohne Land
- Wird im Feld NIF übermittelt. Beginnt die Nummer mit X, Y oder Z, wird sie als NIE behandelt.
- Kunde aus einem anderen EU-Land
- Wird in IDOtro mit IDType 02 (NIF-IVA) und ohne CodigoPais übermittelt.
- Kunde von außerhalb der EU
- Wird in IDOtro mit dem CodigoPais seines Landes und IDType 04 übermittelt, oder mit IDType 03 (Reisepass), wenn die Nummer mehr als 20 Zeichen hat oder keines alphanumerisch ist.
Die Nummer wird mit höchstens 20 Zeichen übermittelt. Vor diesem Hintergrund lassen sich fast alle folgenden Codes über Land und Steuernummer des Kontakts erklären.

Die Codes im Einzelnen
| Code | Was die AEAT sagt | Was zu prüfen ist |
|---|---|---|
| 1239 | Error en el bloque Destinatario. | Den gesamten Block: Land, Steuernummer und Name des Kontakts. |
| 1101 | El valor del campo CodigoPais es incorrecto. | Das Land des Kontakts. |
| 1102 | El valor del campo IDType es incorrecto. | Der abgeleitete Dokumenttyp. |
| 1103 | El valor del campo ID es incorrecto. | Die Nummer des Kontakts. |
| 1111 | El campo CodigoPais es obligatorio cuando IDType es distinto de NIF-IVA (02). | Ein Kunde ohne Land in Odoo. |
| 1122 | El campo CodigoPais indicado no coincide con los dos primeros dígitos del identificador. | Eine Nummer mit dem Präfix eines anderen Landes. |
| 1126 | El valor del CodigoPais solo puede ser ES cuando el IDType sea Pasaporte (03) o No Censado (07)… | Ein spanischer Kunde, der über IDOtro gesendet wird. |
| 1131 | El valor del campo ID ha de ser el NIF de una persona física cuando el campo IDType tiene valor No Censado (07). | Typ 07, den das Modul nicht verwendet. |
| 1222 | El valor del campo ID del bloque IDOtro es incorrecto. | Die Nummer eines ausländischen Kunden. |
| 1232, 1233 und 1234 | IDOtro mit CodigoPais ES erfordert IDType 03, 07 oder einen der beiden. | Spanien als Land bei einem Kunden mit Reisepass. |
| 1254 und 1255 | NIF-IVA des Vereinigten Königreichs: XI ist vor dem 01/01/2021 nicht zulässig, GB ab dem 01/02/2021 nicht. | Das Datum des Geschäftsvorfalls und das Präfix. |
Bei IDType 02 prüft die AEAT außerdem, ob die Nummer der Struktur der NIF-IVA des Mitgliedstaats entspricht und in Großbuchstaben geschrieben ist. In der Praxis muss die Steuernummer eines europäischen Kunden in Odoo mit ihrem Länderpräfix gespeichert sein, so wie VIES sie prüft.
Was in Odoo passiert, wenn die AEAT ablehnt
Diese Codes lehnen den Datensatz ab, nicht die Übermittlung: Die übrigen Rechnungen derselben Anfrage gehen durch. Die Warteschlange setzt die abgelehnte Rechnung auf Retrying und sendet sie mit wachsenden Wartezeiten erneut, von 2 Minuten bis 12 Stunden; beim sechsten Versuch wechselt sie in Dead Letter, und der Datensatz erhält den Status «Error permanente».

Ein erneuter Versuch ändert nichts, wenn die Daten falsch sind, denn die Übermittlung entsteht aus dem Datensatz, der beim Buchen der Rechnung angelegt wurde, nicht aus dem Kontakt. Deshalb besteht die Lösung aus zwei Teilen:
- Korrigieren Sie Land oder Steuernummer des Kontakts, damit die nächsten Rechnungen korrekt sind.
- Für die bereits abgelehnte Rechnung sieht die AEAT eine Neuanmeldung nach Ablehnung vor, mit Subsanacion S und RechazoPrevio X. Das veröffentlichte Modul erzeugt diesen Datensatz nicht von selbst: Schreiben Sie an comercial@flexigobe.com mit der Rechnungsnummer, dann klären wir es gemeinsam.
Die Codes dieser Seite mit dem Text der AEAT
Jeder Code mit seinem wörtlichen Text, wie die Fehlerliste der AEAT ihn ausgibt:
| Code | Text der AEAT |
|---|---|
| 1239 | Error en el bloque Destinatario. |
| 1101 | El valor del campo CodigoPais es incorrecto. |
| 1102 | El valor del campo IDType es incorrecto. |
| 1103 | El valor del campo ID es incorrecto. |
| 1111 | El campo CodigoPais es obligatorio cuando IDType es distinto de NIF-IVA (02). |
| 1122 | El campo CodigoPais indicado no coincide con los dos primeros dígitos del identificador. |
| 1126 | El valor del CodigoPais solo puede ser ES cuando el IDType sea Pasaporte (03) o No Censado (07). Si IDType es No Censado (07) el CodigoPais debe ser ES (España). |
| 1131 | El valor del campo ID ha de ser el NIF de una persona física cuando el campo IDType tiene valor No Censado (07). |
| 1222 | El valor del campo ID del bloque IDOtro es incorrecto. |
| 1232 | Si se identifica a través de la agrupación IDOtro y CodigoPais tiene valor ES (España), el campo IDType debe valer Pasaporte (03). |
| 1233 | Si se identifica a través de la agrupación IDOtro y CodigoPais tiene valor ES (España), el campo IDType debe valer No Censado (07). |
| 1234 | Si se identifica a través de la agrupación IDOtro y CodigoPais tiene valor ES (España), el campo IDType debe valer Pasaporte (03) o No Censado (07). |
| 1254 | Si FechaOperacion (FechaExpedicionFactura si no se informa FechaOperacion) es anterior a 01/01/2021 no se permite el valor 'XI' para Identificaciones NIF-IVA |
| 1255 | Si FechaOperacion (FechaExpedicionFactura si no se informa FechaOperacion) es mayor o igual que 01/02/2021 no se permite el valor 'GB' para Identificaciones NIF-IVA |
Wenn der Code, den Sie sehen, nicht in dieser Tabelle steht, finden Sie den vollständigen Katalog unter Envío a AEAT › Catálogo de Errores AEAT, mit dem wörtlichen Text der AEAT.
Weiterlesen
Geprüft im Quellcode des Moduls (Version 20.0) und in den verlinkten Quellen
Quellen
- www.agenciatributaria.es/static_files/AEAT_Desarrolladores/EEDD/IVA/VERI-FACTU/Validacione
- Quellcode des Moduls: flexigo_spain_verifactu 20.0 (aa2ea3d2): models/verifactu_cadena.py
- Quellcode des Moduls: flexigo_spain_verifactu 20.0 (aa2ea3d2): models/verifactu_aeat_client.py
- Quellcode des Moduls: flexigo_spain_verifactu 20.0 (aa2ea3d2): models/verifactu_cola_envio.py
- Quellcode des Moduls: flexigo_spain_verifactu 20.0 (aa2ea3d2): models/verifactu_registro.py
- Quellcode des Moduls: flexigo_spain_verifactu 20.0 (aa2ea3d2): data/verifactu_error_catalogue.xml
- prewww2.aeat.es/static_files/common/internet/dep/aplicaciones/es/aeat/tikeV1.0/cont/ws/err
