Skip to main content
El SDK de TypeScript proporciona acceso conveniente del lado del servidor a la API REST de Dodo Payments para aplicaciones de TypeScript y JavaScript. Cuenta con definiciones de tipos completas, manejo de errores, reintentos, tiempos de espera y auto-paginación para un procesamiento de pagos sin problemas.

Instalación

Instala el SDK usando el administrador de paquetes de tu preferencia:

Inicio Rápido

Inicializa el cliente con tu clave API y comienza a procesar pagos:
Siempre guarda tus claves API de forma segura utilizando variables de entorno. Nunca las comites en el control de versiones ni las expongas en código del lado del cliente.

Características Principales

TypeScript First

Soporte completo para TypeScript con definiciones de tipos exhaustivas para todos los endpoints de la API

Auto-Pagination

La paginación automática para respuestas de listas facilita el trabajo con conjuntos de datos extensos

Error Handling

Tipos de errores integrados con mensajes detallados para distintos escenarios de fallos

Smart Retries

Reintentos automáticos configurables con retroceso exponencial para errores transitorios

Configuración

Variables de Entorno

Establece variables de entorno para una configuración segura:
.env

Configuración de Tiempo de Espera

Configura los tiempos de espera de las solicitudes a nivel global o por solicitud:

Configuración de Reintentos

Configura el comportamiento de reintentos automáticos:
El SDK vuelve a intentar automáticamente las solicitudes que fallan debido a errores de red o problemas del servidor (respuestas 5xx) con retroceso exponencial.

Operaciones Comunes

Crear una Sesión de Pago

Genera una sesión de pago para recopilar información de pago:

Gestionar Clientes

Crea y recupera información de clientes:

Manejar Suscripciones

Crea y gestiona suscripciones recurrentes:
POST /subscriptions (the SDK’s subscriptions.create method) está obsoleto. Sigue funcionando para las integraciones existentes, pero las nuevas integraciones deben crear suscripciones mediante una Checkout Session.
billing requiere como mínimo el código de país ISO de dos letras. customer es una unión de { customer_id } (para asociar un cliente existente) o { email, name? } (para crear uno nuevo). product_price se expresa en la denominación más baja de la moneda.

Facturación basada en el uso

Ingerir eventos de uso

Registra eventos personalizados para la facturación basada en el uso:
Los eventos deben tener valores event_id únicos para garantizar la idempotencia. Las identificaciones duplicadas dentro de la misma solicitud se rechazan, y las solicitudes posteriores con identificaciones existentes se ignoran.

Recuperar eventos de uso

Obtén información detallada sobre los eventos de uso:

Configuración del proxy

Configura los ajustes del proxy para distintos runtimes:

Node.js (usando undici)

Bun

Deno

Registro

Controla el nivel de detalle de los registros mediante variables de entorno u opciones del cliente:
Niveles de registro disponibles:
  • 'debug' - Muestra mensajes de depuración, información, advertencias y errores
  • 'info' - Muestra mensajes de información, advertencias y errores
  • 'warn' - Muestra advertencias y errores (predeterminado)
  • 'error' - Muestra solo errores
  • 'off' - Desactiva todos los registros
En el nivel de depuración, se registran todas las solicitudes y respuestas HTTP, incluidos los encabezados y los cuerpos. Algunos encabezados de autenticación se redactan, pero los datos confidenciales de los cuerpos aún pueden quedar visibles.

Migración desde el SDK de Node.js

Si estás actualizando desde el SDK de Node.js heredado, el SDK de TypeScript ofrece una seguridad de tipos y unas funcionalidades mejoradas:

View Migration Guide

Aprende a migrar del SDK de Node.js al SDK de TypeScript

Paginación automática

Los métodos de listado de la API de DodoPayments utilizan paginación. Puedes usar la sintaxis for await … of para iterar por los elementos de todas las páginas:
Como alternativa, puedes solicitar una sola página cada vez:

Requisitos

Se admiten los siguientes runtimes:
  • Navegadores web (versiones actualizadas de Chrome, Firefox, Safari, Edge y otros)
  • Node.js 20 LTS o posterior, en versiones (no EOL)
  • Deno v1.28.0 o superior
  • Bun 1.0 o posterior
  • Cloudflare Workers
  • Vercel Edge Runtime
  • Jest 28 o superior con el entorno "node"
  • Nitro v2.6 o superior
Se admite TypeScript >= 4.9.

Recursos

GitHub Repository

Consulta el código fuente y contribuye

API Reference

Documentación completa de la API

Discord Community

Obtén ayuda y conéctate con otros desarrolladores

Report Issues

Informa de errores o solicita funcionalidades

Soporte

¿Necesitas ayuda con el SDK de TypeScript?

Contribuciones

¡Agradecemos las contribuciones! Consulta las directrices de contribución para comenzar.
Última modificación el 17 de agosto de 2026