oneapi
Autentificare
Anaf v1 / e-Transport

Nomenclatoare

Nomenclatoarele oficiale e-Transport: tipuri de operaţiune, scopuri, judeţe, puncte de trecere a frontierei, birouri vamale, tipuri de document. Cu q se caută în ele.

GET
https://oneapi.ro/api/anaf/v1/etransport/codes/{nomenclator}

Parametri de cale

NumeTipDescriereExemplu
nomenclatorobligatoriu string Numele nomenclatorului de coduri cerut (unităţi de măsură, ţări, tipuri de operaţiune…).

Parametri de interogare

NumeTipDescriereValori acceptate
limitaopțional string | null Câte intrări să întoarcă; nomenclatoarele mari (NC, birouri vamale) au mii de coduri. ex. 5
qopțional string | null Text de căutat în nomenclator (cod sau denumire). ex. lapte

Cum se comportă

  • Întoarce un nomenclator oficial folosit în declarație: operatiuni, scopuri, judete, ptf (puncte de trecere frontieră), birouri_vamale, tari, tipuri_document. Extrase din XSD-ul oficial ANAF.
  • nc (Nomenclatura Combinată — codul tarifar, ~12.500 de coduri) e prea mare pt a fi întors întreg: dă un ?q= — fie un prefix de cod (ex. 2203), fie un cuvânt din denumire (ex. bere) — și primești până la ?limita potriviri (implicit 50, max 500).

La ce folosește

  • Popularea unui formular cu valorile valide, înainte de build.
  • Căutarea codului tarifar NC potrivit unei mărfi (?q=).

Structura răspunsului

CâmpTipDescriere
data.nomenclator string Numele nomenclatorului cerut.
data.valori object Perechile cod → denumire.
meta.generat_la string Momentul la care s-a construit răspunsul (ISO 8601).
data.q string Interogarea de căutare (doar la nc).

Exemple de răspuns

GEThttps://oneapi.ro/api/anaf/v1/etransport/codes/operatiuni
{
    "data": {
        "nomenclator": "operatiuni",
        "valori": {
            "10": {
                "sigla": "AIC",
                "denumire": "Achiziţie intracomunitară"
            },
            "12": {
                "sigla": "LHI",
                "denumire": "Operațiuni în sistem lohn (UE) - intrare"
            },
            "14": {
                "sigla": "SCI",
                "denumire": "Stocuri la dispoziția clientului (Call-off stock) - intrare"
            },
            "20": {
                "sigla": "LIC",
                "denumire": "Livrare intracomunitară"
            },
            "22": {
                "sigla": "LHE",
                "denumire": "Operațiuni în sistem lohn (UE) - ieșire"
            },
            "24": {
                "sigla": "SCE",
                "denumire": "Stocuri la dispoziția clientului (Call-off stock) - ieșire"
            },
            "30": {
                "sigla": "TTN",
                "denumire": "Transport pe teritoriul naţional"
            },
            "40": {
                "sigla": "IMP",
                "denumire": "Import"
            },
            "50": {
                "sigla": "EXP",
                "denumire": "Export"
            },
            "60": {
                "sigla": "DIN",
                "denumire": "Tranzacţie intracomunitară - Intrare pentru depozitare/formare nou transport"
            },
            "70": {
                "sigla": "DIE",
                "denumire": "Tranzacţie intracomunitară - Ieşire după depozitare/formare nou transport"
            }
        }
    },
    "meta": {
        "generat_la": "2026-10-06T23: 59: 44+03: 00"
    }
}

Coduri de eroare

CodSlugCând apare
401neautentificatToken lipsă, invalid, expirat sau revocat.
403modul_interzisTokenul nu are acces la modulul rutei.
404negasitNomenclator necunoscut.
422xml_invalidUn parametru nu a trecut validarea (limita, q); detalii spune care şi de ce.
429cota_depasitaCota lunară a planului a fost depăşită (vezi Retry-After).

Erorile modulului Anaf au acelaşi plic ca restul platformei, cu două câmpuri în plus: {eroare: {cod, mesaj, camp, request_id}}. eroare.cod e stabil şi e cel după care ramifici în cod; la validare (422) codul e specific cazului: xml_invalid, xml_nu_e_factura, unitate_necunoscuta, luna_invalida ş.a. camp arată câmpul vinovat, când se poate identifica.

{
    "eroare": {
        "cod": "xml_invalid",
        "mesaj": "Un parametru nu a trecut validarea (limita, q); detalii spune care şi de ce.",
        "camp": "nomenclator",
        "request_id": "0199c1f0-6e1a-7c3d-9b2f-4a8e5d1c7b04"
    }
}