FGO API Ghiduri Referință API

Migrarea de la v1

v2 nu e v1 cu alte adrese. Contractul e altul, și nicio integrare v1 nu trece pe v2 fără modificări. Ghidul ăsta spune ce se schimbă și unde s-a mutat fiecare operație.

Ce e diferit

v1 v2
Autentificare hash calculat de integrator, cod unic în corp cheie API în Authorization: Bearer, cod unic în Fgo-Cod-Unic
Adrese factura/emitere, articol/list, totul POST REST: POST /v2/facturi, GET /v2/articole, resursa în cale
Nume de câmpuri PascalCase snake_case
Răspuns reușit corp liber, Success: true { "data": ..., "meta": ... }
Eroare 200 cu Success: false și un mesaj statusul real — 400, 403, 404, 429 — și application/problem+json cu un type stabil
Paginare număr de pagină cursor opac din meta.pagination
Identificatori numere text opac cu prefix: cli_4f1c9b2e…
Câmpurile din liste toate, mereu ceri ce vrei prin fields
Identitatea facturii Serie + Numar în corp serie + numar, în cale

Cea mai mare schimbare de comportament: erorile nu mai sunt 200. În v1, o factură neemisă răspundea 200 cu Success: false; în v2 răspunde 400 cu motivul în corp. Dacă integrarea ta se uita la Success, în v2 se uită la status.

Unde s-a mutat fiecare operație

v1 v2
factura/emitere POST /v2/facturi
factura/getstatus GET /v2/facturi/{serie}/{numar}
factura/print POST /v2/facturi/{serie}/{numar}/genereaza-link-de-descarcare
factura/listfacturiasociate GET /v2/facturi/{serie}/{numar}/asociate
factura/anulare POST /v2/facturi/{serie}/{numar}/anuleaza
factura/stornare POST /v2/facturi/{serie}/{numar}/storneaza
factura/stergere DELETE /v2/facturi/{serie}/{numar}
factura/awb PUT /v2/facturi/{serie}/{numar}/awb
factura/trimiterespv POST /v2/facturi/{serie}/{numar}/trimite-in-spv
factura/incasare POST /v2/facturi/{serie}/{numar}/incasari
factura/stergereincasare DELETE /v2/facturi/{serie}/{numar}/incasari/{serie_incasare}/{numar_incasare}
articol/list GET /v2/articole
articol/get GET /v2/articole?cod=... (sau cod_bare= / nume=, după setarea firmei „Căutare articole după”)
articol/gestiune GET /v2/gestiuni
client/list GET /v2/clienti
nomenclator/judet GET /v2/nomenclatoare/judete
nomenclator/localitati GET /v2/nomenclatoare/localitati?cod_judet=...
nomenclator/banca GET /v2/nomenclatoare/banci
nomenclator/valuta GET /v2/nomenclatoare/valute
nomenclator/tara GET /v2/nomenclatoare/tari
nomenclator/tva GET /v2/nomenclatoare/cote-tva
nomenclator/tipfactura GET /v2/nomenclatoare/tipuri-factura
nomenclator/tipincasare GET /v2/nomenclatoare/tipuri-incasare

Patru operații din v1 nu au echivalent în v2:

v2 are și operații fără echivalent în v1: furnizori și facturile lor, solduri, rapoarte, balanță, poziția la ANAF, arhive PDF, fișe de partener. Le găsești în referință.