Ves al contingut

Subsanació d'errors ​

La subsanació torna a enviar a l'AEAT el registre Veri*Factu d'una factura emesa, marcat amb Subsanacion=S i sense esborrar l'historial de registres. Serveix per corregir un error de remissió, no el contingut fiscal d'una factura ja entregada.

Operació extraordinària

Només aplica per corregir un error de remissió, habitualment d'integració. Si vols canviar imports, número o data, probablement necessites una rectificativa.

Només es pot subsanar una factura amb resposta ferma de l'AEAT a l'últim registre d'alta: rejected, accepted o accepted_error. Amb pending, in-process o unknown_response la crida retorna invoice.fix_requires_rejected.

Dos camins segons l'historial ​

POST /invoices/{id}/actions/request-fix decideix sol què fer:

Historial de la facturaQuè fa request-fix
Cap alta acceptada (l'últim registre és rejected)Reobre la factura a needs_fix perquè editis i tornis a emetre.
Alguna alta acceptada (accepted o accepted_error)La factura continua issued i immutable. Genera i encua a l'acte una subsanació amb el nom de l'emissor i les dades del client vigents, conservant número, data i imports. Retorna la factura sense canvis; el nou registre apareix a GET /verifactu-records?invoice_id=….

Acceptada amb errors: corregeix primer l'origen

Si l'AEAT ha acceptat amb errors per una dada del client (NIF, nom…), edita el client (PATCH /partners/{id}) abans de cridar request-fix.

Flux amb reobertura (cap alta acceptada) ​

issued ──request-fix──▶ needs_fix ──(edites)──▶ issue ──▶ issued
   (rejected)                                   (Subsanacion=S)
                         └── abandon-fix ──▶ issued

1. Reobrir ​

bash
curl -X POST https://api.test.bilteo.com/api/v1/invoices/{id}/actions/request-fix \
  -H "Authorization: Bearer bk_live_xxxxxxxxxxxxxxxx"

Passa la factura a needs_fix. Requereix invoices:fix i invoices:issue, i només funciona si mai hi ha hagut una alta acceptada i l'últim registre està rejected.

2. Corregir ​

Edita la factura amb els endpoints normals (PATCH /invoices/{id}, línies, etc.) per corregir les dades rebutjades. Número, sèrie, data d'emissió i dades de l'emissor queden bloquejats: la subsanació conserva la identitat de la factura.

3. Tornar a enviar ​

bash
curl -X POST https://api.test.bilteo.com/api/v1/invoices/{id}/actions/issue \
  -H "Authorization: Bearer bk_live_xxxxxxxxxxxxxxxx"

L'emissió des de needs_fix conserva el número i crea un nou registre amb Subsanacion=S i el RechazoPrevio calculat.

Abandonar ​

bash
curl -X POST https://api.test.bilteo.com/api/v1/invoices/{id}/actions/abandon-fix \
  -H "Authorization: Bearer bk_live_xxxxxxxxxxxxxxxx"

Torna a issued sense enviar res. Les edicions es conserven. Requereix invoices:fix.

RechazoPrevio ​

ValorQuan
XEl registre no existeix a l'AEAT: tots els intents previs han estat rebutjats.
SEl registre va existir a l'AEAT i l'última subsanació ha estat rebutjada.
NSense rebuig previ.

Només API

La subsanació és un flux d'integració de l'API pública. L'app no permet reobrir una factura a needs_fix.

Bilteo · Documentació