Ir al contenido

Desarrolladores

Una API de extracción preparada para producción.

Sube archivos, consulta el estado, recibe webhooks firmados y lee campos normalizados con identificadores de solicitud, idempotencia, tokens de prueba y contrato OpenAPI.

Ciclo de la API

Diseñada para reintentos, procesamiento asíncrono y un contexto de soporte claro.

Las cargas son asíncronas e idempotentes. Los documentos procesados devuelven campos normalizados; los bloqueados o fallidos aportan información que tu integración puede dirigir al destino adecuado o mostrar a soporte.

Carga
curl -X POST "https://www.exdata.app/api/v1/documents" \
  -H "Authorization: Bearer $EXDATA_API_TOKEN" \
  -H "Idempotency-Key: invoice-upload-001" \
  -F "file=@invoice.pdf" \
  -F "locale=en" \
  -F "custom_types[]=invoice"
Resultado
{
  "status": "completed",
  "mode": "live",
  "is_e_invoice": true,
  "extractions": {
    "type": {
      "value": "invoice",
      "candidates": ["invoice"]
    },
    "document_number": {
      "value": "RE-2026-1048",
      "candidates": ["RE-2026-1048"]
    },
    "sender_name": {
      "value": "Meyer Supply GmbH",
      "candidates": ["Meyer Supply"]
    },
    "recipient_name": {
      "value": "Northwind Operations Ltd.",
      "candidates": ["Northwind Operations"]
    },
    "payment_due_date": {
      "value": "2026-06-14",
      "candidates": ["14.06.2026"]
    },
    "net_amount": {
      "value": "1079.50",
      "candidates": ["1,079.50"]
    },
    "tax_breakdowns": {
      "value": [
        {
          "taxable_amount": "1079.50",
          "tax_amount": "205.10",
          "tax_rate": "19.00",
          "tax_collection_mechanism": "seller_collected"
        }
      ],
      "candidates": ["VAT 19% 205.10"]
    },
    "gross_amount": {
      "value": "1284.60",
      "candidates": ["EUR 1,284.60"]
    },
    "currency": {
      "value": "EUR",
      "candidates": ["EUR"]
    },
    "iban": {
      "value": "DE89370400440532013000",
      "candidates": ["DE89 3704 0044 0532 0130 00"]
    }
  },
  "latest_extraction_run": {
    "extraction_schema_version": "2026-08-28.1",
    "normalization_version": "base:2026-10-21.3"
  }
}

Ruta de integración

Prueba tu integración en condiciones de producción antes de consumir créditos.

1

Crea un token de prueba

Los tokens de prueba usan los mismos endpoints, validación, idempotencia, webhooks y errores que los tokens de producción.

2

Sube archivos representativos

Usa PDF representativos, tus propias etiquetas y el idioma correspondiente a cada documento. Las claves de idempotencia evitan que las cargas repetidas generen duplicados.

3

Pasa a tokens de producción

Pasa a tokens de producción después de probar el sondeo, los webhooks, la gestión de errores y el mapeo de datos a tus sistemas.

Después del lanzamiento

Los detalles de integración son visibles cuando importan.

Si un documento falla, se bloquea o devuelve un resultado inesperado, tu integración debe contar con información que pueda procesar automáticamente y un acceso claro a los detalles en el espacio de trabajo.

Identificadores de solicitud
Cada respuesta incluye un identificador para que soporte vincule una consulta con la solicitud exacta.
Cabeceras de webhook firmadas
Las entregas incluyen cabeceras de evento, entrega, marca temporal y firma para que el receptor pueda verificarlas.
Errores legibles por máquinas
Los errores incluyen mensaje, código e identificador de solicitud para gestionar bien reintentos y soporte.
Contrato OpenAPI
El contrato de la API v1 está publicado y validado para mantener alineados SDK, integraciones y documentación.
Límites y espera progresiva
Los límites por token y cuenta protegen el servicio y ofrecen un modelo claro de reintento.

Documentación

Empieza con la guía rápida y conecta después el sondeo o los webhooks.