A 4invoices dokumentációja két rétegű: a panel, amelyet kódolás nélkül használ, és a nyilvános API, amelyen a saját rendszere számlát állít ki, és a dokumentumot a nemzeti e-számlázási rendszeren keresztül juttatja el (Romániában: az ANAF e-Factura). Ez az oldal a második réteg bejárata.
Nyissa meg a teljes API dokumentációt →
Mit automatizálhat
A nyilvános API lefedi a számla- és proformakiállítást, a sztornót, a vevőket cégnyilvántartási ellenőrzéssel (Romániában: ANAF-nyilvántartás), a számlatömböket és a teljes nemzeti e-számlázási folyamatot (Romániában: e-Factura): CIUS-RO előellenőrzés, SPV-beadás, státuszkövetés, aláírt válasz és a szállítói számlák beérkező mappája.
https://api.4invoices.net/v1 · 25 endpoints · OpenAPI specifikáció (kulcs nélkül)
invoices:read · invoices:write · clients:read · clients:write · efactura:read · efactura:submit
Hitelesítés
bash
curl -sS -X POST https://api.4invoices.net/v1/auth/token \
-H 'Content-Type: application/json' \
-d '{
"grant_type": "client_credentials",
"client_id": "cli_XXXXXXXXXXXX",
"client_secret": "sec_XXXXXXXXXXXXXXXXXXXX"
}'
# → {"access_token":"eyJ...","token_type":"Bearer","expires_in":3600,
# "scope":"invoices:read invoices:write efactura:submit"}Az első számla 6 lépésben
- Hozzon létre hitelesítő adatot a panelen, a Számlázás → Beállítások → API-hozzáférés alatt, és másolja ki a client_secret értéket — csak egyszer jelenik meg.
- Töltse ki a cégprofilt, és aktiváljon legalább egy fiscale típusú számlatömböt, különben a kiállítás issuer_profile_incomplete vagy no_series_configured hibát ad.
- Váltsa a hitelesítő adatot tokenre: POST /v1/auth/token grant_type client_credentials értékkel. A token egy óráig él — gyorsítótárazza, ne kérjen újat minden híváshoz.
- Állítsa ki a számlát: POST /v1/invoices Idempotency-Key fejléccel és vat_rate százalékként (21, nem 0.21).
- Futtassa az előellenőrzést (Romániában: CIUS-RO) a POST /v1/invoices/{id}/efactura/validate hívással, majd küldje a nemzeti e-számlázási rendszerbe (Romániában: ANAF) a POST /v1/invoices/{id}/efactura/submit hívással.
- Kövesse az állapotot a GET /v1/efactura/submissions/{id} hívással, amíg accepted vagy rejected nem lesz.
bash
# 1 — token (1 óra, gyorsítótárazza)
ACCESS_TOKEN=$(curl -sS -X POST https://api.4invoices.net/v1/auth/token \
-H 'Content-Type: application/json' \
-d '{"grant_type":"client_credentials","client_id":"cli_XXX","client_secret":"sec_XXX"}' \
| python3 -c 'import sys,json; print(json.load(sys.stdin)["access_token"])')
# 2 — állítsa ki a számlát (Idempotency-Key KÖTELEZŐ)
curl -sS -X POST https://api.4invoices.net/v1/invoices \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-H 'Idempotency-Key: order-10457-invoice' \
-d '{"buyer":{"name":"Exemplu Comert SRL","tax_id":"RO12345678","county":"Cluj","city":"Cluj-Napoca","country":"RO"},
"lines":[{"description":"Abonament SaaS","quantity":1,"unit_price":400,"vat_rate":21}]}'
# 3 — preflight CIUS-RO, then send to ANAF
curl -sS -X POST https://api.4invoices.net/v1/invoices/inv_01J7ABC/efactura/validate \
-H "Authorization: Bearer $ACCESS_TOKEN"
curl -sS -X POST https://api.4invoices.net/v1/invoices/inv_01J7ABC/efactura/submit \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-H 'Idempotency-Key: efactura-inv_01J7ABC-1'Útmutatók téma szerint
Minden témának saját oldala van a hozzá tartozó végpontokkal, példákkal és hibákkal.