Saltar al contenido principal

Intermitencias (Status 202)

Si PADE devuelve un error intermitente reconocido durante el timbrado, Facturapi conserva la factura con status: "pending", sin UUID y con su sello CFD original. El folio queda reservado durante seis horas y la API responde con 202 Accepted. Esto significa que la solicitud fue aceptada, pero su procesamiento todavía no termina. Los errores de validación y demás errores que no sean elegibles para recuperación se devuelven de forma normal.

Facturapi guarda una copia de los datos necesarios para validar la recuperación: RFC del emisor y receptor, serie, folio, total, moneda, tipo de CFDI, sello y fecha de emisión. Diez minutos después consulta a PADE por los CFDI que coincidan con el RFC del emisor, la serie y el folio, y valida cada resultado contra esos datos para evitar asociar un CFDI incorrecto.

Se realizan hasta cinco intentos de recuperación, uno cada 10 minutos. La solicitud original del minuto 0 no cuenta como intento:

TiempoAcción
Minuto 0El timbrado original falla por una intermitencia; la API responde 202
Minuto 10Intento de recuperación 1
Minuto 20Intento de recuperación 2
Minuto 30Intento de recuperación 3
Minuto 40Intento de recuperación 4
Minuto 50Intento de recuperación 5

Si se recupera un CFDI válido, Facturapi guarda el UUID, el timbre y el XML; marca la factura como valid; consume el folio reservado; registra el uso y las relaciones contables; marca la tarea de recuperación como exitosa; emite el evento de actualización de estado de la factura; y detiene los reintentos.

Si el quinto intento no recupera un CFDI válido, Facturapi marca la tarea de recuperación y la factura como failed, libera el folio reservado y deja de reintentar. El código 202 solo comunica que la tarea de recuperación continuará en segundo plano; el código de estado no es lo que inicia los reintentos.

Mientras la factura permanezca en pending, no vuelvas a crearla ni asignes su folio a otro comprobante. Puedes consultar su estado mediante el método de obtener factura o suscribirte al webhook invoice.status_updated.