Estados de transacción

La API INFI devuelve el estado en el campo status de cada transacción. Los valores posibles dependen del tipo (pix_in para cobros, withdrawal para retiros).

Cobro (type: "pix_in")

EstadoSignificado
pendingCobro creado. Espera pago del cliente.
Pago confirmado y acreditado al saldo.
failedFalla reportada por el proveedor.
expiredExpiró antes de ser pagado.
cancelledCancelado.
refundedReembolso total. Se debita el saldo del comerciante.
partially_refundedReembolso parcial. refundedAmountCents indica cuánto se devolvió. Puede recibir más reembolsos.
chargebackChargeback aplicado — saldo del comerciante debitado.

Retiro (type: "withdrawal")

EstadoSignificado
pending_approvalAprobación manual activa para esta cuenta. Espera revisión del equipo INFI. El saldo no se debitó.
pendingAceptado, en validación inicial. Saldo ya debitado en modo automático.
processing_debitRetiro aprobado manualmente — saldo recién debitado, a punto de enviarse al proveedor.
processingEl proveedor confirmó la recepción de la orden. Espera liquidación.
Liquidado al destinatario.
failedFalló. Saldo regresó a la cuenta.
cancelled / rejectedRetiro cancelado/rechazado. Saldo regresó.
failed_unknownEstado indeterminado — el proveedor puede haberlo procesado o no. El saldo queda debitado. Estado final en hasta 24h.
transfer_refundedUn retiro ya liquidado fue devuelto por el destinatario (PIX Reversal). Saldo reacreditado por completo.
transfer_partially_refundedDevolución parcial del destinatario.

Transiciones típicas

Cobro:

  • pendingpaid (camino feliz).
  • pendingexpired o cancelled.
  • paidrefunded o partially_refunded (reembolso).
  • paidchargeback.

Retiro:

  • pendingprocessingpaid (modo automático).
  • pending_approvalprocessing_debitprocessingpaid (modo manual).
  • pending / processingfailed / cancelled / rejected (saldo devuelto).
  • paidtransfer_refunded (destinatario devolvió).
  • processingfailed_unknown (indeterminado — exige conciliación).

paid, failed, cancelled, rejected, chargeback son finales. refunded y transfer_refunded también — una vez totales, no reciben más.

failed_unknown

En retiros, si el proveedor quedó en estado indeterminado (timeout, respuesta ambigua), INFI:

  1. No devuelve el saldo automáticamente.
  2. Devuelve HTTP 202 con status: "failed_unknown".
  3. Concilia con el proveedor en hasta 24h y actualiza a paid o failed.

No dupliques la operación — la clave PIX puede haberse enviado. Espera la conciliación o consulta GET /v1/transactions/:id.