Ves al contingut

Cicle de vida d'una factura ​

Una factura passa per una màquina d'estats ben definida. Només els esborranys es poden editar; quan s'emet, queda congelada i entra a la cadena Veri*Factu.

Estats ​

EstatSignificatEditable
draftEsborrany. Encara no és un document fiscal.✅
issuedEmesa: numerada, congelada i amb registre Veri*Factu.❌
canceledAnul·lada (se n'ha generat el registre d'anul·lació).❌
replacedSimplificada (F2) substituïda per una completa (F3).❌
rectified_substRectificada per substitució (terminal).❌
rectified_diffRectificada per diferències (continua vigent).❌
scheduledPlantilla d'una recurrència activa (esborrany congelat).❌
needs_fixEmesa reoberta per subsanar un registre rebutjat que mai ha estat acceptat.✅

needs_fix és un document real

Conserva el número i els registres Veri*Factu (es pot imprimir i està protegit contra l'eliminació), però es reobre temporalment per corregir l'error que ha rebutjat l'AEAT.

Accions ​

draft ──issue──▶ issued ──cancel──▶ canceled
                   │
                   ├─ rectify  ─▶ (nova rectificativa R1–R5; l'original passa a
                   │               rectified_subst | rectified_diff)
                   ├─ replace  ─▶ (nova F3; l'original F2 passa a replaced)
                   └─ request-fix ─▶ needs_fix ──issue──▶ issued   (subsanació)
                                          └──abandon-fix──▶ issued  (sense enviar)
  • Emetre — POST /invoices/{id}/actions/issue · àmbit invoices:issue. Numera, congela imports (al tipus de canvi del dia d'emissió) i envia a l'AEAT.
  • Anul·lar — POST /invoices/{id}/actions/cancel · àmbit invoices:cancel. Requereix una resposta ferma de l'AEAT a l'últim registre (accepted, accepted_error o rejected). És una operació poc habitual, només per a factures emeses per error; per corregir una factura vàlida, rectifica-la.
  • Rectificar — POST /invoices/{id}/actions/rectify. Crea una rectificativa (R1–R5) per diferències (I) o substitució (S). És el camí per corregir el contingut d'una factura emesa.
  • Substituir (F2 → F3) — POST /invoices/{id}/actions/replace · àmbit invoices:replace_simplified.
  • Subsanar — request-fix / abandon-fix. Operació extraordinària i poc freqüent, només per corregir un registre Veri*Factu amb resposta ferma per un error d'enviament, no el contingut fiscal. Reobre a needs_fix només si mai hi ha hagut una alta acceptada; si n'hi ha hagut, encua la subsanació directament i la factura continua issued.

Rectificar ≠ subsanar

Si l'AEAT rebutja una factura per una dada fiscal incorrecta que ja has lliurat al client, cal emetre una rectificativa. La subsanació només serveix per corregir un registre que ha fallat per un error tècnic o d'integració.

Bilteo · Documentació