Uma inserção ou atualização deduplicada por tax_id e uma consulta ao registo da ANAF para empresas romenas, para que a e-Factura não seja rejeitada.
← Voltar à documentação da API
A primeira fatura em 6 passos
- POST /v1/clients cria ou atualiza um cliente, com deduplicação por tax_id e, na sua falta, pelo nome normalizado.
- GET /v1/clients lista os clientes com limit, offset e pesquisa de texto livre q.
- GET /v1/lookup/company/{tax_id} valida um CUI romeno no registo da ANAF e devolve os dados oficiais.
- Preencha buyer com o resultado da consulta, para que a e-Factura não seja rejeitada por um nome ou endereço desatualizados.
Todos os endpoints
| Método | Endpoint | Scope | Idempotency-Key | Pedidos / minuto |
|---|---|---|---|---|
| GET | /clients Listar clientes | clients:read | — | 120 |
| POST | /clients Criar ou atualizar um cliente | clients:write | — | 30 |
| GET | /lookup/company/{tax_id} Validar um CUI romeno no registo da ANAF | clients:read | — | 120 |
O que é a API 4invoices
bash
# Deduplicado por tax_id e, na falta dele, pelo nome normalizado:
# voltar a enviar o mesmo cliente ATUALIZA-O em vez de criar um duplicado.
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"
# Dados oficiais do registo da ANAF (Roménia) — use-os para preencher "buyer" previamente, para que
# a e-Factura não seja rejeitada por um nome ou morada desatualizados.https://api.4invoices.net/v1 · https://api.4invoices.net/v1/openapi.json
Erros frequentes
- Não precisa de um cliente guardado para emitir: o objeto buyer pode ser enviado diretamente no POST /invoices.
- Para compradores romenos, county tem de ser o distrito real; para Bucareste, indique o setor em city.
- tax_id é aceite com ou sem o prefixo do país (RO12345678 ou 12345678).
- Reenviar o mesmo cliente atualiza o registo, pelo que uma importação repetida não cria duplicados.
Perguntas e respostas para desenvolvedores
Que scope é necessário para a consulta ao registo romeno da ANAF?
clients:read. A escrita de clientes exige clients:write.
Posso importar milhares de clientes de um sistema legado?
Sim, mas respeite o limite de 30 escritas por minuto. Importe em lotes, com backoff perante um 429.
E se o CUI não constar do registo?
A consulta devolve 404 not_found. Pode emitir na mesma com os seus próprios dados, mas arrisca uma rejeição na submissão (CIUS-RO, na Roménia).