Private-Merchant-Id). Nunca la expongas en código de cliente o de frontend: llama siempre al endpoint de token desde tu backend.GET /payouts/transfer/v1/bankList (o a v2 para metadata extendida) para obtener los bancos de destino disponibles. Usa el valor code como bankId en la solicitud de token.POST /payouts/transfer/v1/tokens con los datos de la cuenta del destinatario y la información del pago. Devuelve un token de un solo uso.{
"bankId": "002",
"accountType": "CC",
"accountNumber": "1234567890123",
"currency": "PEN",
"totalAmount": 500.00,
"documentType": "DNI",
"documentNumber": "12345678",
"name": "Carlos Ramirez",
"mail": "user@example.com",
"paymentDescription": "Supplier payment #789"
}POST /payouts/transfer/v1/init con el token. La respuesta devuelve un ticketNumber y un transactionReference.{
"token": "V0OzRB100000xhxQB8035251pHLBQsq5",
"fullResponse": "v2"
}{
"status": "INITIALIZED",
"ticketNumber": "1574298975417951",
"transactionReference": "aef8884f-cd4d-4b9b-9efa-ad582629e4f2"
}GET /payouts/transfer/v1/transaction/{ticketNumber} para verificar que la dispersión se procesó.status:| Valor | Significado |
|---|---|
INITIALIZED | Transferencia aceptada y en cola para procesarse |
APPROVAL | Fondos enviados correctamente al destinatario |
DECLINED | Transferencia rechazada |
VOIDED | Transferencia anulada antes de procesarse |
| Moneda | Código |
|---|---|
| Sol peruano | PEN |
| Dólar estadounidense | USD |
| Valor | Descripción |
|---|---|
DNI | Documento Nacional de Identidad 🇵🇪 |
CE | Carné de Extranjería 🇵🇪 |
PAS | Pasaporte 🇵🇪 |
RUC | Registro Único de Contribuyentes 🇵🇪 |
| Valor | Descripción |
|---|---|
CC | Cuenta Corriente |
CA | Cuenta Ahorros |
CM | Cuenta maestra (solo Perú) |
| Condición | Formato |
|---|---|
BCP (bankId: "002") con CC | Exactamente 13 dígitos |
BCP (bankId: "002") con CA | Exactamente 14 dígitos |
| Cualquier otro banco | CCI (Código de Cuenta Interbancaria): exactamente 20 dígitos, sin espacios, guiones ni caracteres especiales |
| Campo | Requerido | Descripción |
|---|---|---|
bankId | Sí | Código del banco de destino, obtenido del endpoint de lista de bancos. |
accountType | Sí | Tipo de cuenta bancaria: CC, CA o CM. |
accountNumber | Sí | Número de cuenta bancaria del destinatario. Revisa las reglas de formato de arriba. |
currency | Sí | PEN o USD. |
totalAmount | Sí | Monto total a dispersar. |
documentType | Sí | Tipo de documento del destinatario. |
documentNumber | Sí | Número de documento del destinatario. |
name | Sí | Nombre completo del destinatario. En Perú no se permiten caracteres especiales. |
mail | No | Correo electrónico del destinatario. |
paymentDescription | No | Descripción del pago, que se muestra en el estado de cuenta bancario. |
DELETE /payouts/transfer/v1/transaction/{ticketNumber}ticketNumber que devuelve el endpoint de estado. Las anulaciones solo son posibles mientras la transacción está en estado INITIALIZED.GET /wallet/v1/merchant/balance{
"balanceDate": 1687371952224,
"currency": "PEN",
"currentBalance": 717169.22
}webhooks en tu solicitud init para recibir notificaciones de estado en tiempo real:{
"webhooks": ["https://yoursite.com/kushki/notify"]
}| Endpoint | Descripción |
|---|---|
GET /payouts/transfer/v1/bankList | Devuelve el code y el name del banco. Úsalo para transferencias ACH estándar. |
GET /payouts/transfer/v2/bankList | Respuesta extendida con internationalCodes y metadata adicional. |
https://api.kushkipagos.com/¿Tienes una sugerencia sobre esta documentación? Escríbenos.