Además de los pagos exitosos, Forpay notifica al paymentWebhook cuando un cobro es rechazado o queda en estado intermedio (en proceso, en validación, reversado, etc.).
Pago rechazado
Cuando el cobro falla, installment.state.id = -99 y el objeto payment no se incluye en el payload.
Payload de ejemplo
{
"businessPartner": {
"businessPartnerId": "2",
"identificationDocument": {
"documentType": "RUT",
"documentNumber": 77209349,
"verificationNumber": "7"
}
},
"customer": {
"userId": "19000",
"identificationDocument": {
"documentType": "RUT",
"documentNumber": 20296421,
"verificationNumber": "4"
},
"internalUserId": 1527
},
"product": {
"type": "MANDATE",
"internalId": 3573,
"id": "153",
"serviceId": "2Z3573ZM"
},
"installment": {
"state": {
"id": -99,
"name": "RECHAZADA"
},
"dateTime": "2024-04-11T14:41:28.323Z",
"internalId": 20720,
"id": "884",
"amount": 100,
"metadata": {
"f_installmentsNumber": 1
},
"installmentDueDate": "2024-02-14",
"description": "Límites Oneclick, máximo monto de pago excedido",
"currency": {
"id": 1,
"name": "PESOS"
}
},
"signature": "rb/U787G7TAVHSr1kb2FNDx1AGmiGRXYuWt2MkeaBsk="
}Tabla de estados de cuota
installment.state.id | Nombre | Descripción |
|---|---|---|
| 1 | PENDIENTE | Cuota generada, a la espera de su fecha de cobro |
| 2 | PAGADA | Cobro realizado con éxito. Incluye payment con authorizationCode |
| 6 | ANULADA | La cuota fue invalidada |
| 9 | EN PROCESO DE COBRO | Transacción enviada al procesador, sin confirmación aún |
| 10 | REPACTADA | La deuda fue movida a un nuevo compromiso |
| 11 | FINALIZADA | Proceso de cobro concluido |
| 12 | REVERSADA | El pago fue devuelto al cliente |
| 15 | EN VALIDACIÓN | Esperando confirmación externa de éxito |
| -99 | RECHAZADA | Cobro fallido. No se incluye el objeto payment |
Nota HMAC para pagos no exitosos
Para cualquier estado que no sea id: 2 (PAGADA), los campos del objeto payment no se concatenan al calcular la firma HMAC. Ver Verificación HMAC.

