Skip to content

Descargar JSON

Obtén una URL temporal para descargar el JSON firmado de un DTE ya emitido. Úsalo en tu Saas, ERP o backend cuando necesites el archivo oficial del documento (archivo JSON del DTE) para archivo, auditoría o reenvío. Lumen valida el estado y te devuelve una URL prefirmada lista para descargar (válida 15 minutos).

Método: GET

https://api-sandbox.lumendte.com/v1/documents/{generationCode}/json

generationCode es el código de generación del DTE (ej. FF84E5DB-79C5-42CE-B415-EC510C53EFB5).


CampoTipoRequeridoDescripción
AuthorizationstringBearer <access_token> (Client Credentials)
x-company-tax-numberstringNRC de la empresa emisora (con o sin guiones)

La petición no requiere body ni query params.


Solo necesitas el path y los headers. Ejemplo con el generationCode de un documento emitido:

GET /v1/documents/FF84E5DB-79C5-42CE-B415-EC510C53EFB5/json
Authorization: Bearer tu_access_token
x-company-tax-number: 123456-7

Status: 200 OK

Usa url de inmediato: descarga el JSON o reenvíalo. La URL expira en 15 minutos. No la persistas en tu base de datos para uso posterior; vuelve a llamar este endpoint cuando necesites otra.

{
"url": "https://files.example.com/invoices/1/FF84E5DB-79C5-42CE-B415-EC510C53EFB5.json?X-Amz-Expires=900"
}

Terminal window
curl -X GET https://api-sandbox.lumendte.com/v1/documents/FF84E5DB-79C5-42CE-B415-EC510C53EFB5/json \
-H "Accept: application/json" \
-H "Authorization: Bearer tu_access_token" \
-H "x-company-tax-number: 123456-7"

El documento existe, pero su estado no permite descarga (por ejemplo REJECTED).

{
"errorCode": "ELECTRONIC_INVOICE_INVALID_STATUS",
"message": "Electronic invoice is not in a valid status to download (current status: REJECTED)",
"statusCode": 422
}

Fix: Solo puedes descargar si el estado es TRANSMITTED, ACCEPTED o CONTINGENCY. Verifica el estado del documento antes de pedir el JSON.

El documento es elegible, pero el archivo JSON todavía no está en almacenamiento.

{
"errorCode": "ELECTRONIC_INVOICE_FILE_NOT_STORED",
"message": "Electronic invoice JSON has not been stored yet",
"statusCode": 422
}

Fix: Reintenta en unos segundos. Si acabas de emitir, espera a que Lumen termine de guardar el JSON y vuelve a llamar el endpoint.