Factuarea API
Albaranes

Buscar un albarán por external ID

Busca un único albarán por su `external_id` (enviado en el body JSON), la clave de integración que lo mapea a un registro en un sistema de terceros (ERP/CRM/e-commerce). Devuelve el albarán coincidente o 404 `delivery_note_not_found` si ningún albarán usa ese external_id dentro de tu empresa.

POST
/delivery_notes/find-by-external-id
AuthorizationBearer <token>

En: header

Cuerpo de la petición

application/json

Definiciones de TypeScript

Usa el tipo request body en TypeScript.

Cuerpo de la respuesta

application/json

application/json

application/json

application/json

application/json

application/json

application/json

{
  "data": {
    "id": "01931b3e-7c4a-7f2e-9a8b-3c5d6e7f8a06",
    "object": "delivery_note",
    "number": "A-2026-00031",
    "series": {
      "id": "01931b3e-7c4a-7f2e-9a8b-3c5d6e7f8a0e",
      "code": "F-2026"
    },
    "client": {
      "id": "01931b3e-7c4a-7f2e-9a8b-3c5d6e7f8a01",
      "name": "Acme Corporation"
    },
    "status": "signed",
    "issued_on": "2026-01-19",
    "delivery_date": "2026-01-21",
    "signed_at": "2026-01-21T14:50:00Z",
    "signed_by": "María García López",
    "signature_image_url": "https://files.factuarea.com/signatures/01931b3e-7c4a-7f2e-9a8b-3c5d6e7f8a06.png",
    "vehicle_plate": "5678JKL",
    "driver": {
      "name": "Pedro Sánchez Ruiz",
      "tax_id": "12345678Z"
    },
    "tracking": {
      "number": "TRK-2026-0099",
      "carrier": "SEUR"
    },
    "received_by": {
      "name": "María García López",
      "tax_id": "87654321X"
    },
    "billing_emails": [
      "administracion@cliente.com"
    ],
    "subtotal": 800,
    "taxes_total": 168,
    "total": 968,
    "currency": "EUR",
    "notes": "Entregado en almacén central.",
    "external_id": "ERP-ALB-2026-0031",
    "lines": [
      {
        "object": "delivery_note_line",
        "description": "Cajas de material A4 (500u)",
        "product": {
          "id": "01931b3e-7c4a-7f2e-9a8b-3c5d6e7f8a09",
          "name": "Consultoría hora estándar"
        },
        "quantity": 2,
        "unit_price": 400,
        "tax_rate": 21,
        "retention_rate": 0,
        "surcharge_rate": 0,
        "discount_percent": 0,
        "subtotal": 800,
        "taxes": 168,
        "total": 968
      }
    ],
    "metadata": {
      "erp_code": "IVA-GEN",
      "ledger_account": "477000"
    },
    "tags": [
      "logistica",
      "almacen-central"
    ],
    "custom_fields": [
      {
        "field": "muelle_carga",
        "value": "Muelle 3"
      }
    ],
    "converted_to_id": null,
    "created_at": "2026-01-19T08:00:00Z",
    "updated_at": "2026-01-21T14:50:00Z"
  }
}

{
  "error": {
    "type": "authentication_error",
    "code": "missing_api_key",
    "message": "No se ha proporcionado una API key válida en el header Authorization.",
    "param": null,
    "doc_url": "https://docs.factuarea.com/guides/errors#missing_api_key",
    "request_id": "req_01HKQS5N8VR7QXJ9K3T6BWPMZA"
  }
}

{
  "error": {
    "type": "authorization_error",
    "code": "insufficient_scope",
    "message": "Esta API key no tiene el scope requerido para esta operación.",
    "param": null,
    "doc_url": "https://docs.factuarea.com/guides/errors#insufficient_scope",
    "request_id": "req_01HKQS5NBC3P8M1KX4V7SLNHQD"
  }
}

{
  "error": {
    "type": "idempotency_error",
    "code": "idempotency_key_reused",
    "message": "La cabecera `Idempotency-Key` ya se usó con un body distinto. Usa una clave nueva o reenvía exactamente el mismo body.",
    "param": null,
    "doc_url": "https://docs.factuarea.com/guides/errors#idempotency_key_reused",
    "request_id": "req_01HKQS5NHT9A4U7R2E3F8GZWTJ"
  }
}

{
  "error": {
    "type": "invalid_request_error",
    "code": "parameter_invalid",
    "message": "El campo `name` es obligatorio y no puede estar vacío.",
    "param": "name",
    "doc_url": "https://docs.factuarea.com/guides/errors#parameter_invalid",
    "request_id": "req_01HKQS5NGS8Z3T6Q1D2E7FYVSI"
  }
}

{
  "error": {
    "type": "rate_limit_error",
    "code": "rate_limit_exceeded",
    "message": "Has excedido el rate limit de 60 peticiones por minuto. Reintenta tras 30 segundos.",
    "param": null,
    "doc_url": "https://docs.factuarea.com/guides/errors#rate_limit_exceeded",
    "request_id": "req_01HKQS5NKW1C6W9T4G5H0JBZVL"
  }
}

{
  "error": {
    "type": "api_error",
    "code": "internal_error",
    "message": "Ha ocurrido un error inesperado. Si persiste, contacta con soporte adjuntando el request_id.",
    "param": null,
    "doc_url": "https://docs.factuarea.com/guides/errors#internal_error",
    "request_id": "req_01HKQS5NLX2D7X0U5H6J1KCAWM"
  }
}