Checkout API Route
Integra el checkout de Dodo Payments en tu aplicación Nuxt usando una ruta del servidor.
Customer Portal API Route
Permite a los clientes gestionar sus suscripciones y detalles mediante una ruta del servidor de Nuxt.
Webhooks API Route
Recibe y procesa eventos de webhook de Dodo Payments de forma segura en Nuxt.
Descripción general
Esta guía explica cómo integrar Dodo Payments en tu aplicación Nuxt mediante el módulo oficial de Nuxt. Aprenderás a configurar las rutas de API para checkout, el portal de clientes y webhooks, así como a manejar de forma segura las variables de entorno.
Instalación
1
Install the Nuxt module
Ejecuta el siguiente comando en la raíz de tu proyecto:
2
Register the module in nuxt.config.ts
Agrega
@dodopayments/nuxt a tu arreglo de modules y configúralo:nuxt.config.ts
Ejemplos de Manejadores de Rutas de API
Todas las integraciones de Dodo Payments en Nuxt se manejan mediante rutas del servidor en el directorio
server/routes/api/.- Checkout API Route
- Customer Portal API Route
- Webhook API Route
Usa este manejador para integrar el checkout de Dodo Payments en tu aplicación Nuxt. Admite flujos de pago estáticos (GET), dinámicos (POST) y de sesión (POST).
Manejador de Ruta de Checkout
Dodo Payments admite tres tipos de flujos de pago para integrar pagos en tu sitio web; este adaptador es compatible con todos ellos.
- Enlaces de Pago Estáticos: URLs instantáneamente compartibles para la recolección de pagos rápida y sin código.
- Enlaces de Pago Dinámicos: Genera programáticamente enlaces de pago con detalles personalizados utilizando la API o SDKs.
- Sesiones de Checkout: Crea experiencias de checkout seguras y personalizables con carritos de productos preconfigurados y detalles del cliente.
Static Checkout (GET)
Static Checkout (GET)
Parámetros de consulta compatibles
string
requerido
Identificador del producto (p. ej.,
?productId=pdt_nZuwz45WAs64n3l07zpQR).integer
Cantidad del producto.
string
Nombre completo del cliente.
string
Nombre del cliente.
string
Apellidos del cliente.
string
Dirección de correo electrónico del cliente.
string
País del cliente.
string
Línea de dirección del cliente.
string
Ciudad del cliente.
string
Estado o provincia del cliente.
string
Código postal del cliente.
boolean
Desactivar el campo de nombre completo.
boolean
Desactivar el campo de nombre.
boolean
Desactivar el campo de apellidos.
boolean
Desactivar el campo de correo electrónico.
boolean
Desactivar el campo de país.
boolean
Desactivar el campo de línea de dirección.
boolean
Desactivar el campo de ciudad.
boolean
Desactivar el campo de estado.
boolean
Desactivar el campo de código postal.
string
Especificar la moneda del pago (p. ej.,
USD).boolean
Mostrar el selector de moneda.
number
Fija el importe cobrado en unidades monetarias principales (p. ej.,
12.5 para 12,50 $). Solo para productos Pay What You Want; se ignora si está por debajo del precio mínimo del producto.boolean
Mostrar los campos de descuento.
string
Cualquier parámetro de consulta que comience por
metadata_ se pasará como metadata.Formato de Respuesta
El checkout estático devuelve una respuesta JSON con la URL de checkout:Dynamic Checkout (POST)
Dynamic Checkout (POST)
- Envía los parámetros como un cuerpo JSON en una solicitud POST.
- Admite pagos únicos y recurrentes.
- Para obtener la lista completa de campos admitidos en el cuerpo POST, consulta:
Formato de respuesta
Dynamic Checkout devuelve una respuesta JSON con la URL de checkout:Checkout Sessions (POST)
Checkout Sessions (POST)
Checkout Sessions ofrece una experiencia de checkout alojada y más segura que gestiona el flujo de pago completo tanto para compras únicas como para suscripciones, con control total de personalización.Consulta la Guía de integración de Checkout Sessions para obtener más detalles y una lista completa de los campos compatibles.
Formato de respuesta
Checkout Sessions devuelve una respuesta JSON con la URL de checkout:Controlador de rutas de Customer Portal
El controlador de rutas de Customer Portal te permite integrar sin problemas el portal de clientes de Dodo Payments en tu aplicación Nuxt.Parámetros de consulta
string
requerido
El ID del cliente para la sesión del portal (p. ej.,
?customer_id=cus_123).boolean
Si se establece en
true, envía un correo electrónico al cliente con el enlace al portal.Controlador de rutas de Webhook
- Método: Solo se admiten solicitudes POST. Los demás métodos devuelven 405.
- Verificación de firma: Verifica la firma del webhook mediante
webhookKey. Devuelve 401 si la verificación falla. - Validación de la carga útil: Se valida con Zod. Devuelve 400 para cargas útiles no válidas.
- Gestión de errores:
- 401: Firma no válida
- 400: Carga útil no válida
- 500: Error interno durante la verificación
- Enrutamiento de eventos: Llama al controlador de eventos adecuado según el tipo de carga útil.