Solicitar reenvío al comprador
/v1/documents/{id}/deliveriesEstado: parcial. Ambientes: simulation, qualification. Permisos: documents:deliver.
Alcance: Entrega de ensayo de una revisión validada. Idempotente, diez solicitudes manuales por documento/revisión/hora, cien destinatarios activos por empresa/ambiente y sin duplicar destinatarios pendientes. Espera el paquete completo. No envía correo real.
Solicitar reenvío al comprador
Authorization
ClientApiKey Secreto ligado a empresa, actor, permisos y ambiente. No admite cambiar empresa por body/header.
In: header
Path Parameters
Identificador opaco. No autoriza acceso por sí mismo.
uuid1 <= length <= 36Header Parameters
Obligatoria en mutaciones. Alcance: empresa/ambiente/operación/recurso destino. Retención mínima 90 días y mientras haya trabajo pendiente. Mismo contenido recupera resultado; contenido diferente produce 409.
^[A-Za-z0-9][A-Za-z0-9._:-]{7,127}$1 <= length <= 128Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/v1/documents/497f6eca-6276-4993-bfeb-53cbbbba6f08/deliveries" \ -H "Idempotency-Key: string" \ -H "Content-Type: application/json" \ -d '{ "recipients": [ "user@example.com" ], "reason": "string", "revision": 1 }'{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "document_id": "b792e8ae-2cb4-4209-85b9-32be4c2fcdd6", "revision": 1, "status": "not_ready", "recipients": [ "user@example.com" ], "created_at": "2019-08-24T14:15:22Z", "next_attempt_at": "2019-08-24T14:15:22Z", "failure_code": "string", "source": "automatic", "channel": "local_test", "recipient_results": [ { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "recipient": "user@example.com", "status": "not_ready", "attempt_count": 0, "next_attempt_at": "2019-08-24T14:15:22Z", "failure_code": "string", "reconciliation_required": true, "recovery_action": "none" } ]}Consultar historial de entrega GET
**Estado:** parcial. **Ambientes:** simulation, qualification. **Permisos:** `documents:read`. **Alcance:** Historial local por documento, limit 1–100 y cursor firmado por tenant/ambiente/recurso; resume estado por destinatario sin afirmar lectura ni aceptación comercial. Consultar historial de entrega
Admitir Invoice POST
**Estado:** parcial. **Ambientes:** simulation, qualification. **Permisos:** `documents:write`. **Alcance:** Admite el perfil restringido COP, IVA 0/5/19, unidad 94, producto 999, pago 10 y BaseQuantity 1. simulation produce resultados ficticios; qualification exige rango, certificado, autorización revisada y configuración vigentes. La respuesta 202 confirma recepción, no aceptación DIAN. Reglas de comprador v2: persona CC/NIT, empresa NIT con dirección o consumidor final (222222222222, tipo 13, R-99-PN, tributo ZZ); sin identidad RUT verificada. Correo ausente solo avisa. Perfil optativo co-sale-cop-iva-v1/v3: IVA gravado/exento/excluido solo en simulación sin firma ni notas; habilitación real bloqueada. Alternativa AG-041: customer_id de un cliente guardado activo en lugar de buyer (nunca los dos: BUYER_SOURCE_CONFLICT; ninguno: VALIDATION_ERROR con BUYER_REQUIRED); el documento conserva la copia del comprador al admitirlo y un reintento recupera el mismo documento aunque el cliente cambie. 202 admite una revisión de forma durable y reserva saldo. La DIAN responde después. Mismo Idempotency-Key o referencia equivalente recupera la admisión original sin nueva reserva, aunque el cliente guardado haya cambiado o se haya archivado después. No transmitir si la capability no está habilitada. Acepta buyer completo o customer_id de un cliente guardado activo (nunca los dos): el documento conserva la copia del comprador al admitirlo. customer_id ajeno o inexistente: 404 CUSTOMER_NOT_FOUND; archivado: 409 CUSTOMER_ARCHIVED.