Salta al contingut
Log in

Enviar factures (d'extrem a extrem)

Aquesta guia mostra un flux d’API net per enviar factures: crear o reutilitzar un contacte, crear o importar una factura, enviar-la i recuperar els fitxers finals.

  • Clau d’API: X-B2B-API-Key
  • Versió d’API: X-B2B-API-Version
  • ACCOUNT_ID: el compte que emet la factura.

IDs importants:

  • ACCOUNT_ID: compte propietari (paràmetre de ruta a /accounts/{ACCOUNT_ID}/...).
  • CONTACT_ID: contacte destinatari (emmagatzemat dins del compte).
  • INVOICE_ID: identificador de factura (usat als endpoints /invoices/{INVOICE_ID}...).

1) Obtenir o crear el contacte destinatari

Section titled “1) Obtenir o crear el contacte destinatari”
Finestra del terminal
curl --request GET \
--url 'https://api-staging.b2brouter.net/accounts/{ACCOUNT_ID}/contacts?offset=0&limit=25&name=Example%20Customer' \
--header 'X-B2B-API-Key: {YOUR_API_KEY}' \
--header 'X-B2B-API-Version: {YOUR_API_VERSION}' \
--header 'accept: application/json'

Si coneixeu l’identificador i el país del destinatari, podeu recuperar informació pública del directori i usar-la per construir el contacte.

Finestra del terminal
curl --request GET \
--url https://api-staging.b2brouter.net/directory/es/ESB63276174 \
--header 'X-B2B-API-Key: {YOUR_API_KEY}' \
--header 'X-B2B-API-Version: {YOUR_API_VERSION}' \
--header 'accept: application/json'

1.3) Crear un contacte (si no en teniu cap)

Section titled “1.3) Crear un contacte (si no en teniu cap)”
Finestra del terminal
curl --request POST \
--url https://api-staging.b2brouter.net/accounts/{ACCOUNT_ID}/contacts \
--header 'X-B2B-API-Key: {YOUR_API_KEY}' \
--header 'X-B2B-API-Version: {YOUR_API_VERSION}' \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--data '{
"contact": {
"name": "Example Customer",
"country": "es",
"is_client": true,
"email": "billing@example.com",
"tin_scheme": "9920",
"tin_value": "ESB00000000",
"transport_type_code": "b2brouter",
"document_type_code": "json"
}
}'

Nota: CONTACT_ID es retorna a la resposta. No el confondreu amb ACCOUNT_ID.

2) Crear (JSON) o importar (XML) la factura

Section titled “2) Crear (JSON) o importar (XML) la factura”
Finestra del terminal
curl --request POST \
--url https://api-staging.b2brouter.net/accounts/{ACCOUNT_ID}/invoices \
--header 'X-B2B-API-Key: {YOUR_API_KEY}' \
--header 'X-B2B-API-Version: {YOUR_API_VERSION}' \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--data '{
"send_after_import": false,
"invoice": {
"type": "IssuedInvoice",
"contact_id": {CONTACT_ID},
"number": "INV-0001",
"date": "2026-01-21",
"terms": "custom",
"due_date": "2026-02-21",
"currency": "EUR",
"invoice_lines_attributes": [
{
"quantity": 1,
"price": 10,
"description": "Example service",
"taxes_attributes": [
{ "name": "VAT", "category": "S", "percent": 21 }
]
}
]
}
}'

2.2) Importar factura des d’un fitxer (quan ja genereu XML)

Section titled “2.2) Importar factura des d’un fitxer (quan ja genereu XML)”
Finestra del terminal
curl --request POST \
--url 'https://api-staging.b2brouter.net/accounts/{ACCOUNT_ID}/invoices/import?send_after_import=false' \
--header 'X-B2B-API-Key: {YOUR_API_KEY}' \
--header 'X-B2B-API-Version: {YOUR_API_VERSION}' \
--header 'content-type: application/octet-stream' \
--data 'data:text/xml;name=invoice.xml;base64,PD94bWw+Li4u'
Finestra del terminal
curl --request POST \
--url https://api-staging.b2brouter.net/invoices/send_invoice/{INVOICE_ID} \
--header 'X-B2B-API-Key: {YOUR_API_KEY}' \
--header 'X-B2B-API-Version: {YOUR_API_VERSION}'

4) Recuperar la factura i descarregar els fitxers finals

Section titled “4) Recuperar la factura i descarregar els fitxers finals”
Finestra del terminal
curl --request GET \
--url 'https://api-staging.b2brouter.net/invoices/{INVOICE_ID}?include=lines' \
--header 'X-B2B-API-Key: {YOUR_API_KEY}' \
--header 'X-B2B-API-Version: {YOUR_API_VERSION}' \
--header 'accept: application/json'

4.2) Descarregar fitxers de factura legals/originals

Section titled “4.2) Descarregar fitxers de factura legals/originals”

Consulteu la guia Descarregar factures.