Una exportación devuelve el contenido como archivo adjunto, no dentro del sobre JSON habitual. La respuesta lleva su propio Content-Type y una cabecera Content-Disposition con el nombre de archivo sugerido:

Content-Type: text/csv; charset=utf-8
Content-Disposition: attachment; filename="<slug>_validaciones_2026-08-31.csv"

Un error durante una exportación sí vuelve al formato normal: el cuerpo es un documento de error con Content-Type: application/json. La distinción práctica es que el tipo de contenido indica si hubo éxito antes de leer el cuerpo.

El formato no es universal

No existe un conjunto único de formatos. Cada familia de exportaciones admite los suyos, y el parámetro format acepta únicamente los de su operación:

familiaformatos admitidos
Facturacióncsv, xlsx
Finanzascsv, xlsx, pdf, html según la operación
Validacionesxml, pdf
Previsualización de importacionescsv, xlsx, pdf, preview

Un valor fuera del conjunto de la operación se rechaza con 422; no hay conversión implícita ni formato por omisión compartido. La página de referencia de cada exportación declara los suyos.

Elección del formato

formatocuándo conviene
csvIngesta programática y volúmenes grandes. Es el más liviano
xlsxConsumo en hoja de cálculo, con tipos y formato preservados
pdfDocumento para archivar o presentar, no para procesar
htmlVista previa en navegador
xmlIntercambio con sistemas que lo exigen, como el CEP de Banxico

Topes

Las exportaciones en pdf limitan el número de filas del documento —1 000 en los estados de cuenta— porque la generación se hace en memoria. Superado el corte, el documento se entrega recortado y lo indica; para volúmenes mayores corresponde csv o xlsx.

Formatos de entrada

Las importaciones aceptan un conjunto distinto y más amplio, porque incluyen los archivos que un usuario puede tener a mano: además de csv, xlsx, xls, txt y json, las importaciones de validaciones admiten imágenes (png, jpg, webp) y archivos comprimidos con lotes de comprobantes.

La diferencia entre ambos conjuntos es deliberada: una exportación produce datos estructurados, mientras que una importación debe aceptar lo que exista del otro lado.