Administra tus recursos de Dodo Payments, crea sesiones de pago y prueba webhooks directamente desde la terminal. Diseñado para desarrolladores que prefieren la línea de comandos.
Instalación
npm install -g dodopayments-cli
Instalación manual
- Descarga la última versión desde GitHub Releases para tu sistema
- Extrae y renombra el binario a
dodo
- Muévelo a un directorio incluido en tu PATH:
sudo mv ./dodo /usr/local/bin/
Autenticación
Antes de usar la CLI, autentícate con tu clave API:
Esto hará lo siguiente:
- Abrir tu navegador en la página de claves API de Dodo Payments
- Solicitarte que ingreses tu clave API
- Pedirte que selecciones el entorno (Modo de prueba o Modo en vivo)
- Almacenar tus credenciales localmente en
~/.dodopayments/api-key
La CLI permite almacenar una clave API por entorno. Si se configuran claves tanto para modo de prueba como en vivo, se te pedirá que elijas qué entorno usar en la sesión actual.
Uso
La sintaxis general es:
dodo ‹category› ‹sub-command›
Ejecutar dodo sin argumentos muestra todas las categorías disponibles. Ejecutar dodo <category> sin subcomandos muestra los subcomandos disponibles para esa categoría.
Productos
Administra tu catálogo de productos.
| Comando | Descripción |
|---|
dodo products list | Listar todos los productos (paginados) |
dodo products create | Abrir el panel para crear un producto |
dodo products info | Ver detalles de un producto específico |
Pagos
Ver transacciones de pago.
| Comando | Descripción |
|---|
dodo payments list | Listar todos los pagos (paginados) |
dodo payments info | Obtener información sobre un pago específico |
Clientes
Administra tu base de clientes.
| Comando | Descripción |
|---|
dodo customers list | Listar todos los clientes (paginados) |
dodo customers create | Crear un nuevo perfil de cliente |
dodo customers update | Actualizar los datos de un cliente existente |
Descuentos
Administra cupones y descuentos.
| Comando | Descripción |
|---|
dodo discounts list | Listar todos los descuentos (paginados) |
dodo discounts create | Crear un nuevo descuento basado en porcentaje |
dodo discounts delete | Eliminar un descuento por ID |
Licencias
Administra licencias de software.
| Comando | Descripción |
|---|
dodo licences list | Listar todas las claves de licencia (paginadas) |
Complementos
Administra complementos de productos.
| Comando | Descripción |
|---|
dodo addons list | Listar todos los complementos (paginados) |
dodo addons create | Abrir el panel para crear un complemento |
dodo addons info | Ver detalles de un complemento específico |
Reembolsos
Ver información sobre reembolsos.
| Comando | Descripción |
|---|
dodo refund list | Listar todos los reembolsos (paginados) |
dodo refund info | Ver detalles de un reembolso específico |
Checkout
Crear sesiones de pago.
| Comando | Descripción |
|---|
dodo checkout new | Crear una nueva sesión de pago y obtener la URL de checkout |
El comando de checkout admite opciones avanzadas que incluyen recopilación mínima de dirección, URL de retorno, aplicación de 3D Secure, códigos de descuento y metadata.
Pruebas de Webhooks
La CLI incluye dos herramientas potentes para probar webhooks durante el desarrollo: un listener que reenvía webhooks de prueba en vivo a tu servidor local y un trigger que envía cargas útiles simuladas a cualquier endpoint.
Escuchar Webhooks
Reenvía webhooks de Dodo Payments directamente a tu servidor de desarrollo local en tiempo real.
Enter your local endpoint URL
Indica la URL local donde deseas recibir los webhooks (por ejemplo, http://localhost:3000/webhook).
Automatic setup
La CLI crea automáticamente un endpoint de webhook en tu cuenta de Dodo Payments si aún no existe, luego abre una conexión WebSocket para recibir eventos en tiempo real.
Receive and forward
Cuando se dispara un evento de webhook (por un pago de prueba, cambio de suscripción, etc.), la CLI lo recibe, registra el tipo de evento y reenvía la solicitud completa con encabezados y cuerpo a tu endpoint local. La respuesta de tu endpoint se registra y se devuelve.
El listener de webhooks solo funciona con una clave API en modo de prueba. Asegúrate de haber iniciado sesión con una clave en modo de prueba antes de usar dodo wh listen.
El listener conserva los encabezados originales del webhook (webhook-id, webhook-signature, webhook-timestamp) al reenviarlos a tu endpoint local, para que puedas probar tu lógica de verificación de firmas.
Activar Webhooks de Prueba
Envía cargas útiles simuladas a cualquier endpoint para realizar pruebas rápidas sin necesidad de crear transacciones reales.
Esto te guía a través de:
- Configurar una URL de endpoint de destino
- Opcionalmente configurar Business ID, Product ID y Metadata
- Seleccionar un evento específico para activar desde un menú interactivo
- Enviar la carga útil simulada y ver la respuesta
Después de cada evento, puedes seleccionar otro evento para activar o salir, lo que facilita probar múltiples controladores de eventos en una sola sesión.
La herramienta trigger envía cargas simuladas sin firmas de webhook. Desactiva la verificación de firmas de webhook durante las pruebas usando unsafe_unwrap() en lugar de unwrap() en tu manejador de webhooks.
Eventos de Webhook compatibles
| Categoría | Eventos |
|---|
| Suscripción | subscription.active, subscription.updated, subscription.on_hold, subscription.renewed, subscription.plan_changed, subscription.cancelled, subscription.failed, subscription.expired |
| Pago | payment.success, payment.failed, payment.processing, payment.cancelled |
| Reembolso | refund.success, refund.failed |
| Disputa | dispute.opened, dispute.expired, dispute.accepted, dispute.cancelled, dispute.challenged, dispute.won, dispute.lost |
| Licencia | licence.created |
Variables de entorno
| Variable | Descripción |
|---|
DODO_WH_TEST_SERVER_URL | Anular la URL predeterminada del servidor de retransmisión de webhooks utilizada por dodo wh listen |
Recursos
Soporte