Limity daty wystawienia
Dokument walidacji AEAT ustala trzy limity dla FechaExpedicionFactura, czyli daty wystawienia:
- Nie może być późniejsza niż bieżąca data. Jeśli jest, kod to 1112.
- Nie może być wcześniejsza niż 28/10/2024, dzień wejścia w życie rozporządzenia VERI*FACTU. Kod 1152.
- Może być wcześniejsza niż data operacji tylko przy kluczach reżimu 14 lub 15. Kod 1146.
Do tego dochodzi 1133, który zabrania dat wystawienia sprzed dwudziestu lat, oraz dwa kody formatu: 1145, dla pojedynczego rekordu, i 4106, który znajduje się w nagłówku i dlatego odrzuca całe żądanie. 1105 jest kodem ogólnym: El valor del campo FechaExpedicionFactura es incorrecto., czyli wartość pola FechaExpedicionFactura jest nieprawidłowa.

Data operacji
FechaOperacion, czyli data operacji, jest opcjonalna i stosuje się ją, gdy operacja nie pokrywa się z datą faktury. Jej limity według AEAT:
| Kod | Reguła |
|---|---|
| 1125 | Nie może wykraczać poza rok następujący po bieżącej dacie. |
| 1134 | Nie może być starsza niż dwadzieścia lat. |
| 1173 | Może być późniejsza niż dziś tylko przy kluczach reżimu 14 lub 15. |
| 1147 | Przy kluczu 14 jest obowiązkowa i późniejsza niż data wystawienia. |
Jakie daty wysyła Odoo
Moduł jako datę wystawienia przyjmuje datę faktury w Odoo, a jeśli faktura jej nie ma, dzisiejszy dzień. Jako datę operacji używa tej samej, a wysyłka zawiera FechaOperacion tylko wtedy, gdy różni się od daty wystawienia. W praktyce faktura z Odoo wychodzi bez FechaOperacion, więc cztery kody z tabeli nie powinny pojawiać się przy wysyłce z modułu. Ponadto moduł zawsze deklaruje klucz reżimu 01, więc wyjątki dla kluczy 14 i 15 go nie dotyczą.

Dwa przypadki, które faktycznie się zdarzają
Faktura z datą z przyszłości. Odoo pozwala zatwierdzić fakturę z datą późniejszą niż dziś, na przykład by mieć ją przygotowaną. VERI*FACTU już nie: rekord trafia z datą wystawienia późniejszą niż ta w AEAT i zostaje odrzucony kodem 1112. Rozwiązanie to zatwierdzenie jej właściwego dnia, z datą tego dnia.
Faktura sprzed VERI*FACTU. Jeśli w Odoo zatwierdzisz spóźnioną fakturę z datą wcześniejszą niż 28 października 2024, rekord zostaje odrzucony kodem 1152. Faktury wystawione przed tą datą nie wchodzą w VERI*FACTU.
Co dzieje się z odrzuconą fakturą
Kolejka próbuje ją wysłać do sześciu razy, z przerwami od 2 minut do 12 godzin, a potem zostawia ją w Dead Letter. Ponowne próby niosą tę samą datę, bo rekord zachowuje tę, którą miał przy zatwierdzeniu, więc nie zadziałają. Zmiana daty faktury w Odoo też nie zmienia już utworzonego rekordu.
Napisz na comercial@flexigobe.com z numerem faktury, a pomożemy ją zamknąć. A przy kolejnych sprawdź datę przed zatwierdzeniem: to jedyna rzecz, którą łatwo zmienić.
Kody z tej strony z tekstem AEAT
Każdy kod z dosłownym tekstem, po hiszpańsku, tak jak podaje lista błędów AEAT:
| Kod | Tekst AEAT (hiszpański) |
|---|---|
| 1105 | El valor del campo FechaExpedicionFactura es incorrecto. |
| 1112 | El campo FechaExpedicionFactura es superior a la fecha actual. |
| 1133 | El valor del campo FechaExpedicionFactura no debe ser inferior a la fecha actual menos veinte años. |
| 1145 | Formato de fecha incorrecto. |
| 1152 | La fecha de expedición no puede ser inferior al 28 de octubre de 2024. |
| 4106 | El formato de fecha es incorrecto. |
| 1125 | El valor del campo FechaOperacion tiene una fecha superior a la permitida. |
| 1134 | El valor del campo FechaOperacion no debe ser inferior a la fecha actual menos veinte años. |
| 1146 | Sólo se permite que la fecha de expedicion de la factura sea anterior a la fecha operación si los detalles del desglose son ClaveRegimen 14 o 15 e Impuesto 01, 03 o vacío. |
| 1147 | Si ClaveRegimen es 14, FechaOperacion es obligatoria y debe ser posterior a la FechaExpedicionFactura. |
| 1173 | Sólo se permite que la fecha de operación sea superior a la fecha actual si los detalles del desglose son ClaveRegimen 14 o 15 e Impuesto IVA(01) o IGIC(03) o vacío. |
Czy 4106 też dotyczy faktury?
Niekoniecznie. To błąd formatu daty w nagłówku, dlatego odrzuca całą wysyłkę. Wysyłka z modułu nie zawiera dat w nagłówku, więc jeśli go widzisz, napisz do nas z odpowiedzią.
Czytaj dalej
Sprawdzone w kodzie źródłowym modułu (wersja 20.0) i w podlinkowanych źródłach
Źródła
- www.agenciatributaria.es/static_files/AEAT_Desarrolladores/EEDD/IVA/VERI-FACTU/Validacione
- Kod modułu: flexigo_spain_verifactu 20.0 (aa2ea3d2): models/verifactu_cadena.py
- Kod modułu: flexigo_spain_verifactu 20.0 (aa2ea3d2): models/verifactu_aeat_client.py
- Kod modułu: flexigo_spain_verifactu 20.0 (aa2ea3d2): models/verifactu_cola_envio.py
- Kod modułu: flexigo_spain_verifactu 20.0 (aa2ea3d2): models/verifactu_registro.py
- prewww2.aeat.es/static_files/common/internet/dep/aplicaciones/es/aeat/tikeV1.0/cont/ws/err
