Saltar al contenido principal
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:
billing requiere al menos el código de país ISO de dos letras. customer es una unión de { customer_id } (para adjuntar 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 Uso

Registrar Eventos de Uso

Rastrea eventos personalizados para la facturación basada en uso:
Los eventos deben tener valores únicos event_id para idempotencia. Los IDs duplicados dentro de la misma solicitud son rechazados y las solicitudes posteriores con IDs existentes son ignoradas.

Recuperar Eventos de Uso

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

Configuración del Proxy

Configura la configuración de proxy para diferentes entornos de ejecución:

Node.js (usando undici)

Bun

Deno

Registro

Controla la verbosidad del registro utilizando variables de entorno u opciones del cliente:
Niveles de registro disponibles:
  • 'debug' - Mostrar mensajes de depuración, información, advertencias y errores
  • 'info' - Mostrar mensajes de información, advertencias y errores
  • 'warn' - Mostrar advertencias y errores (predeterminado)
  • 'error' - Mostrar solo errores
  • 'off' - Deshabilitar todo el registro
Al nivel de depuración, se registran todas las solicitudes y respuestas HTTP, incluidas las cabeceras y los cuerpos. Algunas cabeceras de autenticación están redactadas, pero los datos sensibles en los cuerpos pueden seguir siendo visibles.

Migración desde Node.js SDK

Si estás actualizando desde el SDK de Node.js heredado, el SDK de TypeScript ofrece mejoras en la seguridad de tipos y características:

View Migration Guide

Aprende cómo migrar del SDK de Node.js al SDK de TypeScript

Auto-Paginación

Los métodos de lista en la API de DodoPayments son paginados. Puedes usar la sintaxis for await … of para iterar a través de elementos en todas las páginas:
Alternativamente, puedes solicitar una sola página a la vez:

Requisitos

Se soportan los siguientes entornos de ejecución:
  • Navegadores web (Chrome, Firefox, Safari, Edge y más actualizados)
  • Node.js 20 LTS o posterior (non-EOL) versiones
  • Deno v1.28.0 o superior
  • Bun 1.0 o posterior
  • Cloudflare Workers
  • Vercel Edge Runtime
  • Jest 28 o mayor con el entorno "node"
  • Nitro v2.6 o mayor
Se soporta TypeScript >= 4.9.

Recursos

GitHub Repository

Ver código fuente y contribuir

API Reference

Documentación completa de la API

Discord Community

Obtén ayuda y conecta con desarrolladores

Report Issues

Reportar errores o solicitar funciones

Soporte

¿Necesitas ayuda con el SDK de TypeScript?

Contribuciones

¡Damos la bienvenida a las contribuciones! Consulta las directrices de contribución para comenzar.
Última modificación el 28 de mayo de 2026