downloadInvoiceXml()
Obtiene el XML como un objeto JSON con nombre de archivo, MIME y contenido base64.
Permiso: invoice:read
downloadInvoiceXml( id: string, options?: RequestOptions): Promise<InvoiceXmlOutput>Referencia HTTP: GET /invoices/{id}/xml
- No devuelve un Buffer, una URL ni un stream. Decodifica base64 para guardar los bytes; consulta el ejemplo de descarga del SDK.
- El contenido base64 del ejemplo está abreviado para mostrar el formato; no representa un CFDI completo. El XML timbrado es el documento fiscal canónico.
Parámetros
Sección titulada «Parámetros»| Argumento | Tipo | Obligatorio | Uso |
|---|---|---|---|
id | string | Sí | ID de FactuCat del documento, en formato UUID. No es el UUID fiscal. |
options | RequestOptions | No | signal e idempotencyKey; consulta las opciones por solicitud. |
Opciones por solicitud: signal e idempotencyKey.
Ejemplo
Sección titulada «Ejemplo»Usa el cliente factucat de Instala y conecta. Los IDs y datos fiscales de este ejemplo son ilustrativos: reemplázalos por los registros de tu cuenta y ambiente.
const resultado = await factucat.downloadInvoiceXml( "00112233-4455-4677-8899-aabbccddeeff",)console.log(resultado)Respuesta
Sección titulada «Respuesta»Resuelve una Promise<InvoiceXmlOutput>. El valor recibido es directamente data, sin el envoltorio HTTP ni sus metadatos.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
fileName | string | Sí | Nombre sugerido para el archivo. |
mimeType | "application/xml" | Sí | Tipo MIME del archivo. |
base64 | string | Sí | Contenido del archivo codificado en base64. Decodifícalo para obtener los bytes. |
Ejemplo de respuesta
{ "fileName": "factura.xml", "mimeType": "application/xml", "base64": "PD94bWwgdmVyc2lvbj0iMS4wIj8+"}Las fechas se entregan como cadenas ISO 8601. Un campo opcional puede estar ausente. Tipos, paginación y archivos.
La promesa se rechaza si la API devuelve un error, falla la conexión o los datos no cumplen el contrato. Cómo manejar los errores.