Saltar al contenido
Falmus

Obtener PDF público por CUF

GET/api/v1/public/facturas/:cuf/pdf

Obtiene la representación PDF de una factura publicada identificada por su CUF. No requiere X-API-Key, Bearer ni X-Tenant-ID. No recibe UUID interno, número de factura, empresa o ambiente como parámetros.

Contrato de la operación

Obtiene la representación PDF de una factura publicada identificada por su CUF. No requiere X-API-Key, Bearer ni X-Tenant-ID. No recibe UUID interno, número de factura, empresa o ambiente como parámetros.

Devuelve 200 con Content-Type: application/pdf y Content-Disposition: inline por defecto o attachment con download=1. La página siempre es Carta (612 × 792 puntos). Admite los alias formato=a4 (anterior predeterminado) y formato=carta; otros formatos devuelven 400. El PDF se construye desde el XML firmado original y la última versión publicada de la empresa, incluso para facturas anteriores. Si no existe publicación, usa el diseño predeterminado del sistema. Se genera mediante Gotenberg; no consulta a SIAT ni emite nuevamente. El XML firmado sigue siendo el documento fiscal fuente y puede consultarse mediante /public/facturas/{cuf}/xml.

Puede devolver 404 si no se encuentra una factura publicada con ese CUF. Una falla del renderizador devuelve error 5xx sin PDF alternativo. El enlace permite consultar datos fiscales del emisor y del cliente.

Ejemplo

Solicitud de ejemplo

Clave ficticia; no se ejecuta desde esta página
cURL · GET
export FALMUS_API_URL='https://staging-api.falmus.com/api/v1'
export FALMUS_API_KEY='flm_test_REEMPLAZA_CON_TU_CLAVE'
export CUF='REEMPLAZA_CON_CUF'

curl --request GET \
  --url "$FALMUS_API_URL/public/facturas/${CUF}/pdf" \
  --header "X-API-Key: $FALMUS_API_KEY"

Este ejemplo no incluye un cuerpo. Revisa el contrato para conocer los parámetros de ruta y consulta.

Respuesta

Ejemplo de respuesta

200 OKapplication/pdf

El cuerpo contiene los bytes del PDF. Con download=1 se entrega como archivo adjunto; en otro caso, se muestra en línea.

Datos ficticios; los identificadores y valores cambian en cada respuesta.