Skip to main content
La CLI de Onflay (onflay) es la forma más rápida de arrancar un proyecto de integración sin tocar el dashboard. Define tu catálogo en un archivo TypeScript, aplícalo al entorno y genera tipos listos para usar en tu backend, todo desde la terminal.

Instalación y autenticación

No necesitas instalar nada de forma global. Usa npx directamente o agrégala como devDependency:
Autentica exportando tu API key de sandbox:
Agrega ONFLAY_API_KEY a tu archivo .env y cárgalo con dotenv-cli o el mecanismo de tu framework. La CLI lo detecta automáticamente. También puedes usar onflay whoami para validar entorno y base URL resuelta.

Flujo CLI-first para un proyecto nuevo

Puedes configurar toda tu integración sin abrir el dashboard:
1

Scaffold inicial (opcional)

Ejecuta npx onflay init para crear pricing.onflay.ts, webhook route y .env.example automáticamente.
2

Crea el archivo de catálogo

Define tus productos, precios o listings en pricing.onflay.ts.
3

Revisa el plan

Ejecuta catalog plan para ver qué se creará o modificará sin aplicar nada.
4

Aplica el catálogo

Ejecuta catalog apply para sincronizar el archivo con tu entorno sandbox.
5

Genera los tipos

Ejecuta catalog sync para aplicar + generar tipos en un solo comando (o catalog codegen si ya aplicaste antes).
6

Levanta el túnel de webhooks

Ejecuta onflay listen para recibir eventos en tu servidor local.
7

Dispara un evento de prueba

Ejecuta onflay trigger para simular un pago completado y probar tu handler.

Catálogo declarativo

El catálogo es un archivo .ts que exporta la definición de lo que vendes. La CLI lo lee, calcula la diferencia con el entorno y aplica solo los cambios necesarios — similar a Terraform para tu catálogo de Onflay.

Estructura del archivo

El campo nickname es tu identificador local estable. No lo cambies sin usar antes onflay catalog mv, o la CLI lo tratará como un objeto nuevo.

Pagos únicos

Para productos sin recurrencia, omite interval:

catalog plan — previsualizar cambios

Muestra qué se creará, actualizará o archivará sin modificar nada en el entorno.
Salida de ejemplo:
Úsalo en CI para detectar drift entre el archivo y el entorno. Con --exit-code, la CLI termina con código 2 cuando detecta drift:

catalog apply — aplicar cambios

Sincroniza el archivo con el entorno activo según la API key configurada.
apply modifica objetos en el entorno apuntado por ONFLAY_API_KEY. Con sk_test_ toca sandbox; con sk_live_ toca producción. Revisa siempre el plan antes.

catalog codegen — generar tipos TypeScript

Genera un archivo con los IDs reales de Onflay mapeados a tus keys, listo para importar en tu backend:
Archivo generado (src/onflay-catalog.ts):
Úsalo directamente al crear sesiones de checkout (modo compatibilidad lineItems):

catalog sync — apply + codegen en un solo paso

catalog mv — renombrar claves sin recrear objetos

Si quieres renombrar un nickname sin que el siguiente apply lo trate como “borrado + creado”, usa:

Webhooks locales

Levanta un túnel para recibir eventos de Onflay en tu servidor local durante el desarrollo:
La CLI imprime un secret temporal que expira al cerrar el proceso:
La CLI también intenta guardarlo automáticamente en .env.local en el directorio actual. Si prefieres configurarlo manualmente, expórtalo para que tu handler lo use:
O agrégalo a tu .env.local si tu framework lo carga automáticamente.
En producción usa el secret permanente del dashboard, no el whsec_dev_... que genera listen.

Disparar eventos de prueba

Simula un evento sin necesitar un pago real:
Eventos disponibles para trigger:
trigger solo funciona en sandbox. No lo uses con sk_live_.

Gestión de eventos

Consulta y reenvía eventos pasados del entorno:
events resend es útil para reprobar un handler sin crear una transacción nueva.

Scripts recomendados en package.json

Con esto puedes correr pnpm catalog:plan antes de cada deploy para verificar que el catálogo esté sincronizado.