Ir al contenido

Periodos de una suscripción

Cada periodo con su cobro, del más reciente al más antiguo.

GEThttps://api.kuti.pe/v1/subscriptions/{id}/cycles
status del periodo: AWAITING_AMOUNT (monto variable: esperamos tu monto), OPEN (sin pagar), PROCESSING (débito en curso), PAID, UNCOLLECTIBLE (no se pudo cobrar) y SKIPPED (se saltó sin cobrar).

Path

Campo
Descripción
id
stringrequerido
Id de la suscripción en el path (sub_…).Ej: sub_01J8Z3K4M5N6P7Q8R9S0T1U2V3

Language

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.listCycles("sub_01J8Z3K4M5N6P7Q8R9S0T1U2V3");
console.log(result);
SDK oficial · guía en /sdks
Response

Elige un ejemplo de respuesta:

application/json
200OK
{
  "success": true,
  "data": [
    {
      "id": "subc_01J8Z3K4M5N6P7Q8R9S0T1U2V4",
      "billing_period": "2026-11",
      "due_date": "2026-11-05",
      "amount": {
        "amount": "99.00",
        "currency": "PEN"
      },
      "status": "OPEN",
      "attempts": 1,
      "last_failure_code": "insufficient_funds",
      "next_attempt_at": "2026-11-06T14:00:00.000Z",
      "payment_intent_id": "pi_01J8Z3K4M5N6P7Q8R9S0T1U2V6",
      "checkout_url": "https://pay.kuti.pe/c/9K2MDQ4XTA",
      "paid_at": null
    },
    {
      "id": "subc_01J8Z3K4M5N6P7Q8R9S0T1U2V3",
      "billing_period": "2026-10",
      "due_date": "2026-10-05",
      "amount": {
        "amount": "99.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"
    }
  ]
}