> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cbpayapp.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Postman

> Colección lista para importar y probar toda la API

export const PostmanFreshness = ({iso, lang = "es"}) => {
  const [now, setNow] = useState(() => Date.now());
  useEffect(() => {
    const t = setInterval(() => setNow(Date.now()), 1000);
    return () => clearInterval(t);
  }, []);
  const ts = new Date(iso).getTime();
  if (!iso || Number.isNaN(ts)) {
    return null;
  }
  const secs = Math.max(0, Math.floor((now - ts) / 1000));
  const UNITS = {
    en: [[31536000, "year", "years"], [2592000, "month", "months"], [86400, "day", "days"], [3600, "hour", "hours"], [60, "minute", "minutes"], [1, "second", "seconds"]],
    es: [[31536000, "año", "años"], [2592000, "mes", "meses"], [86400, "día", "días"], [3600, "hora", "horas"], [60, "minuto", "minutos"], [1, "segundo", "segundos"]],
    zh: [[31536000, "年", "年"], [2592000, "个月", "个月"], [86400, "天", "天"], [3600, "小时", "小时"], [60, "分钟", "分钟"], [1, "秒", "秒"]]
  };
  const units = UNITS[lang] || UNITS.es;
  let rel;
  for (const [size, one, many] of units) {
    if (secs >= size || size === 1) {
      const n = Math.floor(secs / size);
      const unit = n === 1 ? one : many;
      rel = lang === "en" ? `${n} ${unit} ago` : lang === "zh" ? `${n}${unit}前` : `hace ${n} ${unit}`;
      break;
    }
  }
  const label = lang === "en" ? `Updated ${rel}` : lang === "zh" ? `更新于${rel}` : `Actualizada ${rel}`;
  return <p className="text-sm text-gray-500 dark:text-zinc-400">
      <strong>{label}</strong>
    </p>;
};

Descarga la colección oficial de Postman de CBPay, generada desde la misma
especificación OpenAPI de esta documentación: incluye todos los endpoints,
con un request por caso de uso (cada ejemplo nombrado del spec) y una
respuesta guardada por operación.

<Card title="CBPay API — Colección Postman" icon="download" href="/postman/cbpay-api.postman_collection.json">
  Descargar `cbpay-api.postman_collection.json` (v2.1)
</Card>

> **Colección actualizada:** 2026-07-18 19:19 UTC · 252 requests · versión `a4f0a3b6ae5b`

<PostmanFreshness iso="2026-07-18T19:19:00Z" lang="es" />

## Cómo usarla

<Steps>
  <Step title="Importa la colección">
    En Postman: **Import** → arrastra el archivo descargado.
  </Step>

  <Step title="Configura tus variables">
    La colección trae dos variables:

    | Variable  | Valor                                            |
    | --------- | ------------------------------------------------ |
    | `baseUrl` | `https://api.qbank.cl/platform` (ya configurada) |
    | `token`   | Tu JWT de sesión o API key `pk_...`              |
  </Step>

  <Step title="Prueba">
    Todas las requests heredan la autenticación Bearer con `{{token}}`.
    Empieza por `GET /v1/me` para validar tu credencial y `GET /v1/balances`
    para ver tu saldo.
  </Step>
</Steps>

<Note>
  La colección se regenera con cada versión de la API — descárgala de nuevo
  después de cada entrada del [changelog](/es/changelog) para tener los
  últimos endpoints.
</Note>
