Une insertion ou mise à jour dédoublonnée sur tax_id et une recherche au registre ANAF pour les entreprises roumaines, afin que l'e-Factura ne soit pas refusée.
← Retour à la documentation API
Votre première facture en 6 étapes
- POST /v1/clients crée ou met à jour un client, dédoublonné sur tax_id et, à défaut, sur le nom normalisé.
- GET /v1/clients liste les clients avec limit, offset et une recherche plein texte q.
- GET /v1/lookup/company/{tax_id} vérifie un CUI roumain dans le registre d’ANAF et renvoie les données officielles.
- Préremplissez buyer à partir du résultat de la recherche afin que l’e-Factura ne soit pas refusée à cause d’un nom ou d’une adresse obsolète.
Tous les endpoints
| Méthode | Endpoint | Scope | Idempotency-Key | Requêtes / minute |
|---|---|---|---|---|
| GET | /clients Lister les clients | clients:read | — | 120 |
| POST | /clients Créer ou mettre à jour un client | clients:write | — | 30 |
| GET | /lookup/company/{tax_id} Valider un CUI roumain dans le registre ANAF | clients:read | — | 120 |
Ce qu'est l'API 4invoices
bash
# Dédoublonné sur tax_id, à défaut sur un nom normalisé :
# renvoyer le même client le MET À JOUR au lieu de créer un doublon.
curl -sS -X POST https://api.4invoices.net/v1/clients \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-d '{
"name": "Exemplu Comert SRL",
"tax_id": "RO12345678",
"email": "[email protected]",
"country": "RO",
"county": "Cluj",
"city": "Cluj-Napoca",
"address": "Str. Fabricii 12",
"iban": "RO49AAAA1B31007593840000"
}'bash
curl -sS https://api.4invoices.net/v1/lookup/company/RO12345678 \
-H "Authorization: Bearer $ACCESS_TOKEN"
# Données officielles du registre ANAF (Roumanie) — utilisez-les pour pré-remplir "buyer" afin que
# l'e-Factura ne soit pas rejetée pour un nom ou une adresse obsolète.https://api.4invoices.net/v1 · https://api.4invoices.net/v1/openapi.json
Erreurs fréquentes
- Vous n’avez pas besoin d’un client enregistré pour émettre : l’objet buyer peut être envoyé directement dans POST /invoices.
- Pour les acheteurs roumains, county doit être le vrai département ; pour Bucarest, indiquez le secteur dans city.
- tax_id est accepté avec ou sans préfixe pays (RO12345678 ou 12345678).
- Renvoyer le même client met à jour la fiche, de sorte qu’un import répété ne crée pas de doublons.
Questions et réponses pour développeurs
Quel scope la recherche dans le registre ANAF roumain nécessite-t-elle ?
clients:read. L’écriture de clients nécessite clients:write.
Puis-je importer des milliers de clients depuis un ancien système ?
Oui, mais respectez le quota d’écriture de 30 par minute. Importez par lots avec un backoff en cas de 429.
Et si le CUI ne figure pas dans le registre ?
La recherche renvoie 404 not_found. Vous pouvez tout de même émettre avec vos propres données, mais vous risquez un rejet au moment du dépôt (CIUS-RO, en Roumanie).