Skip to main content
Overlay checkout abre una ventana modal sobre tu página. Los clientes introducen sus datos de pago en el modal mientras tu página permanece visible detrás. Cuando cierran el modal, el control vuelve a tu página. Cuando completan el pago, se les redirige a return_url.
Modal de overlay checkout mostrado sobre una página de producto

Interactive Demo

Mira overlay checkout en acción con nuestra demostración en vivo.

Inicio rápido

Instala el SDK, inicialízalo y abre el checkout con una URL de checkout de la API de creación de sesiones de checkout:

Integración paso a paso

1

Install the SDK

Instala mediante npm, yarn o pnpm:
2

Initialize the SDK

Llama a Initialize una vez cuando se cargue tu aplicación, normalmente en tu componente principal o punto de entrada de la aplicación:
Inicializa siempre el SDK antes de abrir el checkout. Inicialízalo una vez cuando se cargue tu aplicación, no antes de cada intento de checkout.
3

Create a Checkout Button

Crea un componente que abra el modal de checkout:
4

Add the Button to Your Page

Usa el componente de botón de checkout en tu aplicación:
5

Handle Redirects

Crea páginas para gestionar las redirecciones del checkout después del pago:
6

Test Your Integration

  1. Inicia tu servidor de desarrollo:
  1. Prueba el flujo de checkout:
    • Haz clic en el botón de checkout
    • Verifica que aparezca el modal
    • Prueba el flujo de pago con credenciales de prueba
    • Confirma que las redirecciones funcionen correctamente
Deberías ver los eventos de checkout registrados en la consola de tu navegador.
7

Go Live

Cuando estés listo para producción:
  1. Cambia el modo a 'live':
  1. Actualiza las URL de checkout para usar sesiones de checkout activas desde tu backend
  2. Prueba el flujo completo en producción
  3. Supervisa los eventos y errores

Referencia de la API

Inicializar

Llama a Initialize una vez para configurar el SDK:

Abrir checkout

Abre el modal de checkout:

Cerrar checkout

Cierra el modal mediante programación:

Comprobar estado

Comprueba si el modal está abierto actualmente:

Eventos

Escucha los eventos de checkout mediante el callback onEvent proporcionado a Initialize:

Implementación mediante CDN

Para una integración rápida sin un paso de compilación, carga el SDK desde CDN:

Personalización del tema

La opción themeConfig del lado del cliente está obsoleta y se eliminará en la próxima versión principal del Checkout SDK (v2.0.0). Al pasarla, se registra una advertencia de obsolescencia en la consola del navegador. Configura el tema al crear la sesión de checkout mediante la API usando el parámetro customization.theme_config; consulta Personalización del tema de Checkout, o hazlo visualmente en la página Design del dashboard. Los temas configurados en la sesión se aplican por igual a overlay, inline y hosted checkout.
Esta sección explica la configuración del lado del cliente del tema obsoleto mediante Checkout SDK. El enfoque recomendado es configurar los temas del lado del servidor al crear una sesión de checkout mediante la API usando el parámetro theme_config. Consulta Personalización del tema de Checkout para la configuración a nivel de API, o usa la página Design del dashboard para configurar los temas visualmente con una vista previa en vivo.
Si debes usar la configuración del tema del lado del cliente, pasa themeConfig en el parámetro options:

Propiedades del tema

Todas las propiedades disponibles del tema para los modos claro y oscuro:

Gestión de errores

Implementa siempre la gestión de errores en tu callback onEvent:
Gestiona siempre el evento checkout.error para ofrecer una buena experiencia de usuario cuando se produzcan errores.

Prácticas recomendadas

  1. Inicializa una vez: Llama a Initialize una vez cuando se cargue tu aplicación, no antes de cada checkout
  2. Gestión de errores: Implementa una gestión adecuada de errores en tu callback de eventos
  3. Modo de prueba: Usa el modo "test" durante el desarrollo y cambia a "live" solo cuando estés listo para producción
  4. Gestión de eventos: Gestiona todos los eventos relevantes para ofrecer una experiencia de usuario completa
  5. URL válidas: Usa siempre URL de checkout válidas de la API de creación de sesiones de checkout
  6. TypeScript: Usa TypeScript para mejorar la seguridad de tipos y la experiencia del desarrollador
  7. Estados de carga: Muestra estados de carga mientras se abre el checkout para mejorar la UX
  8. Gestión del temporizador: Deshabilita el temporizador (showTimer: false) si quieres gestionar manualmente la caducidad de la sesión

Solución de problemas

Posibles causas:
  • El SDK no se inicializó antes de llamar a open()
  • URL de checkout no válida
  • Errores de JavaScript en la consola
  • Problemas de conectividad de red
Soluciones:
  • Verifica que la inicialización del SDK se produzca antes de abrir el checkout
  • Comprueba si hay errores en la consola del navegador
  • Asegúrate de que la URL de checkout sea válida y proceda de la API de creación de sesiones de checkout
  • Verifica la conectividad de red
Posibles causas:
  • El controlador de eventos no está configurado correctamente
  • Errores de JavaScript que impiden la propagación de eventos
  • El SDK no se inicializó correctamente
Soluciones:
  • Confirma que el controlador de eventos esté configurado correctamente en Initialize()
  • Comprueba si hay errores de JavaScript en la consola del navegador
  • Verifica que la inicialización del SDK se haya completado correctamente
  • Prueba primero con un controlador de eventos sencillo
Posibles causas:
  • Conflictos de CSS con los estilos de tu aplicación
  • La configuración del tema no se aplicó correctamente
  • Problemas de diseño responsive
Soluciones:
  • Comprueba si hay conflictos de CSS en las DevTools del navegador
  • Verifica que la configuración del tema sea correcta
  • Prueba con distintos tamaños de pantalla
  • Asegúrate de que no haya conflictos de z-index con el modal

Billeteras digitales

Para obtener información detallada sobre la configuración de Google Pay y otras billeteras digitales, consulta la página Billeteras digitales.
Apple Pay aún no es compatible con overlay checkout.

Compatibilidad con navegadores

El Checkout SDK de Dodo Payments es compatible con:
  • Chrome (última versión)
  • Firefox (última versión)
  • Safari (última versión)
  • Edge (última versión)
  • IE11+

Overlay checkout frente a Inline checkout

Elige el tipo de checkout adecuado para tu caso de uso:
Usa overlay checkout para una integración más rápida con cambios mínimos en tus páginas existentes. Usa inline checkout cuando quieras el máximo control sobre la experiencia de checkout y una identidad de marca coherente.

Recursos relacionados

Inline Checkout

Inserta el checkout directamente en tu página para obtener experiencias totalmente integradas.

Checkout Sessions API

Crea sesiones de checkout para impulsar tus experiencias de checkout.

Webhooks

Gestiona los eventos de pago del lado del servidor mediante webhooks.

Integration Guide

Guía completa para integrar Dodo Payments.
Para obtener más ayuda, visita nuestra comunidad de Discord o contacta con nuestro equipo de soporte para desarrolladores.
Última modificación el 26 de septiembre de 2026