Skip to main content

Residencia de los datos

La infraestructura de Ipsofactura corre en Microsoft Azure, región México Central: base de datos, almacenamiento de XML/PDF y procesamiento. Los datos no salen de México para su almacenamiento.

Conservación de los CFDIs

  • El XML timbrado y su representación impresa (PDF) se almacenan en blob storage privado y se conservan mientras tu cuenta esté activa — puedes volver a descargarlos en cualquier momento vía GET /cfdi/{id}/xml y GET /cfdi/{id}/pdf.
  • Recomendamos igualmente guardar tu propia copia del XML: es tu comprobante fiscal y el SAT te obliga a conservarlo 5 años.
  • Una política formal de retención y un mecanismo de export masivo están en definición; esta página se actualizará cuando se publiquen.

URLs de descarga (TTL)

GET /cfdi/{id}/xml y GET /cfdi/{id}/pdf no devuelven el archivo: devuelven una URL firmada (xml_url / pdf_url), de solo lectura, que vive 15 minutos desde que se genera. La URL no exige API key: quien la tenga puede descargar el archivo mientras siga vigente, igual que una SAS de Azure. Son dos plazos distintos, y sólo el primero aplica en producción: En sandbox, pasados esos 15 minutos GET /cfdi/{id}/xml responde 404 DOCUMENT_NOT_AVAILABLE y el archivo no se puede recuperar; descarga el XML en cuanto timbres. Ver Sandbox › Diferencias con producción.
Guarda el id del CFDI, nunca la URL. La URL es una credencial temporal del documento: si la persistes en tu base de datos, a los 15 minutos apunta a nada. Cuando necesites el archivo, vuelve a llamar al endpoint con el id — en producción genera una URL nueva, sin costo y sin límite de veces.
Descarga el archivo en el momento en que recibes la URL, y no la compartas por correo, chat ni logs: cualquiera que la tenga puede descargar el CFDI mientras siga vigente.

Cuando el documento no se puede entregar

Estos endpoints nunca devuelven 200 con xml_url / pdf_url vacío. Si el documento no puede entregarse, la respuesta es un error explícito: GET /cfdi/{id}/pdf genera la representación impresa al vuelo la primera vez que la pides, así que en ese endpoint no verás DOCUMENT_NOT_AVAILABLE.

Logs de API

Para soporte y auditoría conservamos un log por request (endpoint, status, código de error, prefijo de la API key usada). Los cuerpos de request/respuesta se guardan solo para los endpoints de timbrado, complemento de pago, cancelación y alta de empresas, y siempre con los campos sensibles (contraseñas, llaves privadas) enmascarados antes de persistir. Estos logs se purgan automáticamente a los 30 días. Tu API key nunca se almacena: solo su hash y el prefijo de 13 caracteres para identificarla (ver API keys).