FacturareIntră în aplicație
API pentru firma taFacturi primite · pagina 7 din 9

Facturile primite

Facturile furnizorilor din SPV, păstrate și după cele 60 de zile ale ANAF.

Actualizat la

De unde vin

Facturile de la furnizori vin din SPV, prin conexiunea ANAF a firmei, deci doar pentru o firmă verificată (altfel 409 company_not_verified). Le citim din SPV la fiecare jumătate de oră, iar la cererea ta de listă cel mult o dată la cinci minute. ANAF păstrează mesajele 60 de zile; cele citite o dată rămân la noi.

Citirea

  • GET …/received: lista, cele mai noi primele, cu furnizorul, numărul, data, totalul și moneda (după ce XML-ul a fost citit). Filtre: perioada și CUI-ul furnizorului.
  • GET …/received/{received_id}: o factură, cu XML-ul citit în invoice: furnizorul și cumpărătorul, liniile, cotele de TVA, totalurile, scadența, IBAN-ul pentru plată. Dacă XML-ul nu fusese descărcat, îl descărcăm acum.
  • /xml: XML-ul original; /pdf: factura în PDF, desenată de noi din XML.

Id-ul unei facturi primite este id-ul mesajului din SPV (un șir de cifre).

Facturile noi

Când apare o factură nouă în SPV, primești evenimentul received_invoice.created, cu furnizorul și numărul. Pentru linii și sume, citești factura după id. Fără webhook, GET /events?type=received_invoice.created dă aceleași evenimente.

Plata furnizorilor

PUT …/received/{received_id}/payment marchează factura plătită (sau neplătită), cu data și o notă. Este evidența ta; nu trimite nimic la ANAF și nici furnizorului.

{ "paid": true, "paid_on": "2026-10-10", "note": "OP 2210" }

Referința

Facturile primite

GET /api/v1/companies/{company_id}/received

Permisiune: received:read.

Facturile de la furnizori din SPV, cele mai noi primele, păstrate și după cele 60 de zile ale ANAF. Doar pentru o firmă verificată. Lista se reîmprospătează din SPV cel mult o dată la 5 minute.

ParametruTipCe este
company_id în adresăintegerId-ul firmei.
fromdateApărute în SPV de la data.
todatePână la data (inclusiv).
supplier_cifstringDe la un furnizor (CUI, cu sau fără RO).
limitintegerCâte pe pagină, 1–100. Implicit 25.
starting_afterstringnext_cursor din pagina anterioară.

Răspuns 200: o List de ReceivedInvoice.

O factură primită

GET /api/v1/companies/{company_id}/received/{received_id}

Permisiune: received:read.

Cu XML-ul citit în invoice: furnizorul, liniile, TVA-ul, totalurile, IBAN-ul. Dacă XML-ul nu era descărcat, îl descărcăm acum.

ParametruTipCe este
company_id în adresăintegerId-ul firmei.
received_id în adresăstringId-ul mesajului din SPV.

Răspuns 200: ReceivedInvoice.

{
  "id": "4321098765", "object": "received_invoice", "received_at": "2026-10-08 09:14:02", "issue_date": "2026-10-07",
  "number": "DELTA-2291", "supplier": { "name": "Delta Energie SA", "cif": "RO14399840" },
  "total": 1520.4, "currency": "RON", "total_ron": 1520.4, "downloaded": true,
  "payment": { "paid": null, "paid_on": null, "note": null }
}

XML-ul facturii primite

GET /api/v1/companies/{company_id}/received/{received_id}/xml

Permisiune: received:read.

XML-ul original din SPV.

ParametruTipCe este
company_id în adresăintegerId-ul firmei.
received_id în adresăstringId-ul mesajului din SPV.

Răspuns 200: un fișier XML (application/xml).

PDF-ul facturii primite

GET /api/v1/companies/{company_id}/received/{received_id}/pdf

Permisiune: received:read.

Factura în PDF, desenată de noi din XML.

ParametruTipCe este
company_id în adresăintegerId-ul firmei.
received_id în adresăstringId-ul mesajului din SPV.

Răspuns 200: un fișier PDF (application/pdf).

Marchează plata unei facturi primite

PUT /api/v1/companies/{company_id}/received/{received_id}/payment

Permisiune: received:read și payments:write.

Pentru evidența ta: plătită sau nu, când.

ParametruTipCe este
company_id în adresăintegerId-ul firmei.
received_id în adresăstringId-ul mesajului din SPV.

Corp: ReceivedPaymentInput, de exemplu.

{ "paid": true, "paid_on": "2026-10-10", "note": "OP 2210" }

Răspuns 200: ReceivedInvoice.

Obiectul ReceivedInvoice

O factură primită de la un furnizor, prin SPV.

CâmpTipCe este
idstringId-ul mesajului din SPV.
objectreceived_invoiceMereu received_invoice.
received_atstringCând a apărut în SPV (ora României, AAAA-LL-ZZ hh:mm:ss).
issue_datedate sau nullData facturii.
numberstring sau nullNumărul facturii.
supplierobjectFurnizorul: name, cif.
totalnumber sau nullTotalul cu TVA (negativ la o notă de credit), după ce XML-ul a fost citit.
currencystring sau nullMoneda.
total_ronnumber sau nullTotalul în lei.
downloadedbooleanXML-ul a fost descărcat de la ANAF.
paymentobjectMarcajul tău de plată: paid (null: nemarcată), paid_on, note.
invoiceobjectDoar la o singură factură: XML-ul citit (furnizor, cumpărător, linii, TVA, totaluri, IBAN).

Obiectul ReceivedPaymentInput

Marchează plătită (sau neplătită) o factură primită.

CâmpTipCe este
paidbooleanPlătită. Obligatoriu.
paid_ondateData plății. Implicit azi.
notestringNotă (lipsă: rămâne cea veche).