Quando é preciso subsanar
O documento de validações da AEAT prevê a subsanação em três situações:
- O registo foi aceite com erros admissíveis, os códigos 2xxx. Há duas exceções que não se subsanam: a ClaveRegimen vazia com IPSI e a data e hora de geração posteriores às da AEAT.
- O registo foi rejeitado. Na remessa voluntária, os rejeitados têm de ser reenviados numa nova apresentação, corrigindo o erro.
- Detetas depois um dado incorreto num registo que foi aceite sem erros.
Não cabe subsanar quando a causa exige emitir uma fatura retificativa. A subsanação corrige um registo; não substitui uma retificativa.

As quatro formas de dar entrada a um registo
O anexo de operativas admissíveis da AEAT combina os dois campos assim:
| Operação | Subsanacion | RechazoPrevio | Quando |
|---|---|---|---|
| Entrada inicial | N ou vazio | N ou vazio | A fatura ainda não existe na AEAT. |
| Entrada por rejeição | S | X | Corrige uma entrada inicial que foi rejeitada e que, por isso, a AEAT não tem. |
| Entrada de subsanação | S | N ou vazio | Corrige um registo que a AEAT já tem. |
| Entrada por rejeição de subsanação | S | S | Repete uma subsanação que foi rejeitada. |
Os códigos desta família
| Código | O que falha |
|---|---|
| 1153 | RechazoPrevio X sem Subsanacion S. |
| 1161 | RechazoPrevio S sem Subsanacion S. |
| 1171 | Subsanacion ou RechazoPrevio com um valor fora da lista. |
| 1275 | Valor incorreto em RechazoPrevio. |
| 1276 | Valor incorreto em SinRegistroPrevio. |
| 3003 | El presentador no tiene los permisos necesarios para actualizar este registro de facturación. |
| 3004 | No es posible modificar la factura ya que ha sido dada de alta vía formulario. |
O 3003 aparece quando quem apresenta a subsanação não pode atualizar esse registo, e o 3004 quando a fatura original foi dada de entrada pelo formulário da AEAT e não a partir de um sistema de faturação.
O que faz hoje o nosso módulo
O registo de entrada que o módulo publicado constrói não leva Subsanacion nem RechazoPrevio: todas as suas entradas são iniciais. Por isso estes códigos não saem de um envio seu, e também por isso:
- Um registo rejeitado (1xxx)
- A fila volta a tentá-lo com os mesmos dados, porque o registo não muda depois de publicado, e à sexta tentativa deixa-o em Dead Letter. Nenhuma tentativa o converte numa entrada por rejeição.
- Um registo aceite com erros (2xxx)
- Fica como «Aceptado con errores (subsanar)». O módulo não envia a subsanação.
Isto é o que convém saber antes de mais nada: na Odoo, com o módulo publicado, corrigir um registo do VERI*FACTU não é automático.

O que fazer entretanto
- Não anule a fatura para tentar corrigi-la: anular cria um registo de anulação, que se encadeia e se envia, mas não corrige o registo anterior.
- Corrija na Odoo o dado de origem, seja o contacto, o imposto ou o diário, para que as faturas seguintes saiam bem.
- Escreva-nos para comercial@flexigobe.com com os registos afetados e a sua resposta. Preparamos consigo a subsanação que corresponda a cada um.
Os códigos desta página, com o texto da AEAT
Cada código com o seu texto literal, tal como o dá a lista de erros da AEAT:
| Código | Texto da AEAT |
|---|---|
| 1153 | Valor del campo RechazoPrevio no válido, solo podrá incluirse el campo RechazoPrevio con valor X si se ha informado el campo Subsanacion y tiene el valor S. |
| 1161 | El valor del campo RechazoPrevio no es válido, no podrá incluirse el campo RechazoPrevio con valor S si no se ha informado del campo Subsanacion o tiene el valor N. |
| 1171 | El valor del campo Subsanacion o RechazoPrevio no se encuentra en los valores permitidos. |
| 1275 | Valor incorrecto campo RechazoPrevio |
| 1276 | Valor incorrecto campo SinRegistroPrevio |
| 3003 | El presentador no tiene los permisos necesarios para actualizar este registro de facturación. |
| 3004 | No es posible modificar la factura ya que ha sido dada de alta vía formulario. |
Continue a ler
Verificado no código do módulo (versão 20.0) e nas fontes indicadas
Fontes
- www.agenciatributaria.es/static_files/AEAT_Desarrolladores/EEDD/IVA/VERI-FACTU/Validacione
- Código do módulo: flexigo_spain_verifactu 20.0 (aa2ea3d2): models/verifactu_aeat_client.py
- Código do módulo: flexigo_spain_verifactu 20.0 (aa2ea3d2): models/verifactu_cola_envio.py
- Código do módulo: flexigo_spain_verifactu 20.0 (aa2ea3d2): models/verifactu_registro.py
- Código do módulo: 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
