Saltar al contenido principal
El SDK de PHP proporciona una forma robusta y flexible de integrar Dodo Payments en tus aplicaciones PHP. Construido siguiendo los estándares modernos de PHP con autoloading PSR-4, ofrece una amplia cobertura de pruebas y documentación detallada.

Instalación

Instala el SDK con Composer:
El SDK requiere PHP 8.1.0 o superior y Composer para la gestión de dependencias.

Inicio rápido

Inicializa el cliente y crea una sesión de pago:
Guarda tus claves de API de forma segura utilizando variables de entorno. Nunca las expongas en tu código ni las incluyas en el control de versiones.

Características principales

PSR-4 Compliant

Cumple con las Recomendaciones de Estándares de PHP para el desarrollo moderno en PHP

Modern PHP

Diseñado para PHP 8.1+ con declaraciones de tipo y tipos estrictos

Extensive Testing

Cobertura de pruebas integral para garantizar fiabilidad y estabilidad

Exception Handling

Tipos de excepción claros para distintos escenarios de error

Objetos de valor

El SDK utiliza parámetros nombrados para especificar argumentos opcionales. Puedes inicializar objetos de valor usando el constructor estático with:
También hay constructores disponibles como patrón alternativo:

Configuración

Configuración de reintentos

Ciertos errores se reintentan automáticamente 2 veces por defecto con un retroceso exponencial corto. Los siguientes errores activan reintentos automáticos:
  • Errores de conexión (problemas de conectividad de red)
  • 408 Request Timeout
  • 409 Conflict
  • 429 Rate Limit
  • 500+ Internal errors
  • Timeouts
Configura el comportamiento de reintentos de forma global o por solicitud:

Operaciones comunes

Crear una sesión de pago

Genera una sesión de pago:

Gestionar clientes

Crea y recupera información de clientes:

Gestionar suscripciones

Crea y administra suscripciones recurrentes:
billing requiere al menos el código country ISO de dos letras. Pase AttachExistingCustomer::with(customerID: '...') para adjuntar un cliente existente, o NewCustomer::with(email: '...', name: '...') para crear uno. productPrice está en la denominación más baja de la moneda.

Paginación

Trabajar con respuestas de lista paginadas:

Manejo de Errores

Cuando la biblioteca no puede conectarse a la API o recibe un código de estado negativo (4xx o 5xx), se lanza una subclase de APIException:

Tipos de Error

Siempre envuelva llamadas API en bloques try-catch para manejar posibles errores de manera elegante y proporcionar retroalimentación significativa a los usuarios.

Uso Avanzado

Endpoints No Documentados

Realizar solicitudes a endpoints no documentados:

Parámetros No Documentados

Enviar parámetros no documentados a cualquier endpoint o leer propiedades de respuesta no documentadas:
Los parámetros extra* con el mismo nombre sobrescriben los parámetros documentados.

Integración con Frameworks

Laravel

Crear un servicio para aplicaciones Laravel:
Agregar configuración en config/services.php:

Symfony

Crear un servicio en Symfony:
Registrar en config/services.yaml:

Recursos

GitHub Repository

Ver el código fuente y contribuir

API Reference

Documentación completa de la API

Discord Community

Obtener ayuda y conectar con desarrolladores

Report Issues

Reportar errores o solicitar funciones

Soporte

¿Necesitas ayuda con el SDK de PHP?

Contribuyendo

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