Saltar al contenido principal

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
Nunca confirmes tu archivo .env ni secretos en el control de versiones.

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/.
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).
Si productId falta o es inválido, el manejador devuelve una respuesta 400.

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.

Parámetros de consulta

productId
string
requerido
Identificador del producto (p. ej., ?productId=pdt_nZuwz45WAs64n3l07zpQR).
quantity
integer
Cantidad del producto.
fullName
string
Nombre completo del cliente.
firstName
string
Primer nombre del cliente.
lastName
string
Apellido del cliente.
email
string
Correo electrónico del cliente.
country
string
País del cliente.
addressLine
string
Dirección del cliente.
city
string
Ciudad del cliente.
state
string
Estado o provincia del cliente.
zipCode
string
Código postal del cliente.
disableFullName
boolean
Desactiva el campo de nombre completo.
disableFirstName
boolean
Desactiva el campo de primer nombre.
disableLastName
boolean
Desactiva el campo de apellido.
disableEmail
boolean
Desactiva el campo de correo electrónico.
disableCountry
boolean
Desactiva el campo de país.
disableAddressLine
boolean
Desactiva el campo de dirección.
disableCity
boolean
Desactiva el campo de ciudad.
disableState
boolean
Desactiva el campo de estado.
disableZipCode
boolean
Desactiva el campo de código postal.
paymentCurrency
string
Especifica la moneda del pago (p. ej., USD).
showCurrencySelector
boolean
Muestra el selector de moneda.
paymentAmount
integer
Especifica el monto del pago (p. ej., 1000 para $10.00).
showDiscounts
boolean
Muestra los campos de descuento.
metadata_*
string
Cualquier parámetro de consulta que comience con metadata_ se pasará como metadatos.
Si productId falta, el manejador devuelve una respuesta 400. Los parámetros de consulta inválidos también generan una respuesta 400.

Formato de Respuesta

El checkout estático devuelve una respuesta JSON con la URL de checkout:

Formato de Respuesta

El checkout dinámico devuelve una respuesta JSON con la URL de checkout:
Las sesiones de checkout ofrecen una experiencia de pago alojada más segura que maneja el flujo completo del pago tanto para compras únicas como suscripciones con control total de personalización.Consulta la Guía de Integración de Sesiones de Checkout para más detalles y una lista completa de campos soportados.

Formato de Respuesta

Las sesiones de checkout devuelven una respuesta JSON con la URL de checkout:

Manejador de Ruta del Portal del Cliente

El Manejador de Ruta del Portal del Cliente te permite integrar sin problemas el portal del cliente de Dodo Payments en tu aplicación Nuxt.

Parámetros de consulta

customer_id
string
requerido
El ID del cliente para la sesión del portal (p. ej., ?customer_id=cus_123).
send_email
boolean
Si se establece en true, envía un correo electrónico al cliente con el enlace del portal.
Devuelve 400 si customer_id falta.

Manejador de Ruta de Webhook

  • Método: Solo se admiten solicitudes POST. Otros métodos devuelven 405.
  • Verificación de Firma: Verifica la firma del webhook utilizando webhookKey. Devuelve 401 si la verificación falla.
  • Validación de Payload: Validado con Zod. Devuelve 400 para payloads inválidos.
  • Manejo de Errores:
    • 401: Firma inválida
    • 400: Payload inválido
    • 500: Error interno durante la verificación
  • Enrutamiento de Eventos: Llama al manejador de eventos apropiado según el tipo de payload.

Controladores de eventos webhook compatibles


Solicitud para LLM

Última modificación el 22 de mayo de 2026