Enviar el monto del periodo
Solo monto variable: envías el total del periodo y KUTI lo debita al Yape afiliado de tu cliente.
POSThttps://api.kuti.pe/v1/subscriptions/{id}/charges
Llámalo al recibir subscription.amount_required, o cuando cierres tu periodo sin esperar el aviso. Un solo cobro por periodo: repetir el mismo period responde 409 SUBSCRIPTION_PERIOD_ALREADY_CHARGED.
Parámetros del body
Campo
Descripción
idstringrequerido
Id de la suscripción en el path (sub_…).Ej:
sub_01J8Z3K4M5N6P7Q8R9S0T1U2V3amountstringrequerido
Total a cobrar en este periodo (máximo 2500.00).Ej:
184.00descriptionstringopcional
Lo que verá tu cliente en este cobro. Por defecto, la descripción de la suscripción.Ej:
92 alumnos en octubreperiodstringopcional
Periodo que se cobra. Sin enviarlo: el que está esperando monto (latest_cycle.billing_period).Ej:
2026-10Language
Credentials
Header
Authorization
Secret key de developer · ejemplos con SDK oficial
API Request
$ npm install @kuti-pe/node
import { KutiClient } from "@kuti-pe/node";
const kuti = new KutiClient({ secretKey: process.env.KUTI_SECRET_KEY! });
const result = await kuti.subscriptions.charge("sub_01J8Z3K4M5N6P7Q8R9S0T1U2V3", { amount: "184.00" });
console.log(result.status);SDK oficial · guía en /sdks
Response
Elige un ejemplo de respuesta:
application/json
200OK
{
"success": true,
"data": {
"id": "sub_01J8Z3K4M5N6P7Q8R9S0T1U2V3",
"merchant_id": "mer_01J8Z3K4M5N6P7Q8R9S0T1U2V3",
"livemode": false,
"customer": {
"id": "cus_01J8Z3K4M5N6P7Q8R9S0T1U2V3",
"name": "María López",
"email": "maria@example.pe",
"phone": "+51987654567"
},
"description": "Consumo mensual",
"billing_mode": "variable",
"amount": null,
"setup_url": null,
"items": [],
"frequency": "MONTHLY",
"interval": 1,
"day_of_month": 5,
"last_day_of_month": false,
"day_of_week": null,
"start_date": "2026-10-05",
"end_date": null,
"charge_time": "09:00",
"next_charge_at": "2026-11-05T14:00:00.000Z",
"status": "ACTIVE",
"payment_method": {
"id": "pm_01J8Z3K4M5N6P7Q8R9S0T1U2V3",
"type": "YAPE",
"phone_last4": "4567",
"status": "ACTIVE"
},
"retry_policy": {
"interval_days": [
1,
3,
5
],
"on_exhausted": "past_due"
},
"latest_cycle": {
"id": "subc_01J8Z3K4M5N6P7Q8R9S0T1U2V3",
"billing_period": "2026-10",
"due_date": "2026-10-05",
"amount": {
"amount": "184.00",
"currency": "PEN"
},
"status": "PAID",
"attempts": 1,
"last_failure_code": null,
"next_attempt_at": null,
"payment_intent_id": "pi_01J8Z3K4M5N6P7Q8R9S0T1U2V5",
"checkout_url": null,
"paid_at": "2026-10-05T14:00:03.000Z"
},
"external_reference": "cliente-4821",
"metadata": {},
"cancelled_at": null,
"created_at": "2026-10-05T14:00:00.000Z",
"updated_at": "2026-10-05T14:00:03.000Z"
}
}