POST /subscriptions/v1/card-async/tokens con la moneda, el email y la URL a la que regresa el cliente después del registro.{
"currency": "CLP",
"email": "user@example.com",
"callbackUrl": "https://yoursite.com/subscription/return"
}token de un solo uso, vigente por 30 minutos.⚠️ Nota PCI: Puedes incluir cardNumberdirectamente en esta petición de forma opcional, pero solo si tu backend cumple con PCI DSS.
POST /subscriptions/v1/card-async/init con el token, los datos del plan, el monto y la fecha de inicio de cobro. La respuesta devuelve un redirectUrl y un subscriptionId.{
"token": "AbCDef123456Z7Ghi8901234jkLMNopQ",
"planName": "Plan Mensual",
"periodicity": "monthly",
"startDate": "2026-06-01",
"amount": {
"subtotalIva": 0,
"subtotalIva0": 10000,
"iva": 0,
"ice": 0,
"currency": "CLP"
},
"contactDetails": {
"documentType": "RUT",
"documentNumber": "12345678-9",
"firstName": "Catalina",
"lastName": "Fuentes",
"email": "user@example.com",
"phoneNumber": "+56912345678"
},
"language": "es",
"fullResponse": "v2"
}{
"subscriptionId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"redirectUrl": "https://webpay.transbank.cl/..."
}💡 Guarda el subscriptionId— lo necesitas para todos los cargos, autorizaciones y operaciones de gestión futuras.
redirectUrl. Ahí se autentica y autoriza el registro de la tarjeta en el portal de Transbank, y luego regresa a tu callbackUrl.POST /subscriptions/v1/card/{subscriptionId} — cargo a demandaGET /subscriptions/v1/card/search/{subscriptionId} — consulta la información de la suscripciónPATCH /subscriptions/v1/card/{subscriptionId} — actualiza el planDELETE /subscriptions/v1/card/{subscriptionId} — cancela la suscripciónperiodicity y startDate.POST /subscriptions/v1/card/{subscriptionId}/authorize — Reserva fondos en la tarjeta registrada. No hace falta redirigir a Webpay — la tarjeta ya está guardada.{
"amount": {
"subtotalIva": 0,
"subtotalIva0": 10000,
"iva": 0,
"ice": 0,
"currency": "CLP"
},
"name": "Catalina",
"lastName": "Fuentes",
"email": "user@example.com",
"fullResponse": "v2"
}ticketNumber.POST /subscriptions/v1/card/{subscriptionId}/capture — Captura el monto reservado dentro de 7 días.{
"ticketNumber": "319228478889680318",
"amount": {
"subtotalIva": 0,
"subtotalIva0": 10000,
"iva": 0,
"ice": 0,
"currency": "CLP"
},
"fullResponse": "v2"
}| Moneda | Código | Notas |
|---|---|---|
| Peso chileno | CLP | Solo montos enteros — sin decimales |
| Unidad de Fomento | UF | Unidad monetaria indexada |
| Valor | Descripción |
|---|---|
daily | Cada 1 día |
weekly | Cada 7 días |
biweekly | Cada 15 días |
monthly | Cada 30 días |
threefortnights | Cada seis semanas (42 días) |
bimonthly | Cada 60 días |
quarterly | Cada 90 días |
fourmonths | Cada 120 días |
halfYearly | Cada 180 días |
yearly | Cada 360 días |
custom | Intervalo recurrente personalizado |
retryConfiguration:{
"retryConfiguration": {
"retryType": "fixed",
"value": [5, 15, 25]
}
}retryType | Comportamiento |
|---|---|
schedule | Reintenta cada N días durante todo el periodo de facturación |
fixed | Reintenta solo en días específicos del mes |
| Cargos recurrentes asíncronos | One-Click estándar | |
|---|---|---|
| Registro | El cliente se redirige a Transbank/Webpay | Basado en token, sin redirección |
| Procesador | Transbank (Webpay) | Red de tarjetas directa |
| Autorización/Captura | Sin redirección — usa la tarjeta guardada | Sin redirección — usa la tarjeta guardada |
| Solo Chile | ✅ Sí | ✅ Sí (mediante la integración con Webpay) |
https://api.kushkipagos.com/¿Tienes una sugerencia sobre esta documentación? Contáctanos.