Saltar al contenido principal

GitHub Repository

Boilerplate mínimo de Go + Dodo Payments

Descripción general

La plantilla Go proporciona un punto de partida listo para producción para integrar Dodo Payments con tu backend de Go. Esta plantilla incluye manejo de sesiones de pago, verificación de webhooks, integración del portal del cliente y sigue las mejores prácticas de Go para ayudarte a comenzar a aceptar pagos rápidamente.
Este boilerplate utiliza Go 1.21+ con patrones de arquitectura limpia (cmd, internal, templates), plantillas HTML y el SDK dodopayments-go para una integración de API sin fisuras.

Características

  • Configuración rápida - Comienza en menos de 5 minutos
  • Integración de pagos - Flujo de pago preconfigurado usando el SDK dodopayments-go
  • UI moderna - Página de precios limpia con tema oscuro y plantillas HTML
  • Gestión de webhooks - Verifica y procesa eventos de pago de forma segura
  • Portal del cliente - Administración de suscripciones en autoservicio
  • Buenas prácticas de Go - Arquitectura limpia con cmd, internal e templates
  • Checkout prellenado - Demuestra cómo pasar datos del cliente para mejorar la experiencia de usuario

Requisitos previos

Antes de comenzar, asegúrate de tener:
  • Go 1.21+
  • Cuenta de Dodo Payments (para acceder a las claves de API y Webhook desde el panel)

Inicio rápido

1

Clona el repositorio

2

Instala las dependencias

O manualmente:
3

Get API Credentials

Regístrate en Dodo Payments y obtén tus credenciales desde el panel de control:
¡Asegúrate de estar en Modo de prueba mientras desarrollas!
4

Configure Environment Variables

Crea un archivo .env en el directorio raíz:
Actualiza los valores con tus credenciales de Dodo Payments:
.env
Nunca añadas tu archivo .env al control de versiones. Ya está incluido en .gitignore.
5

Add Your Products

Actualiza internal/lib/products.go con tus ID de producto reales de Dodo Payments:
6

Ejecuta el servidor de desarrollo

O manualmente:
Abre http://localhost:8000 para ver tu página de precios!
Deberías ver una página de precios con tema oscuro y tus productos listos para comprar.

Estructura del proyecto

Puntos finales de la API

La plantilla incluye los siguientes puntos finales preconfigurados:

Personalización

Actualiza la información del producto

Edita internal/lib/products.go para modificar:
  • ID de productos (desde tu panel de Dodo)
  • Precios
  • Características
  • Descripciones

Pre-llenar datos del cliente

En templates/index.html, reemplaza los datos de cliente codificados con tus datos reales de usuario:
En una aplicación de producción, inyectarías dinámicamente estos valores desde tu sistema de autenticación.

Eventos de Webhook

El boilerplate demuestra cómo gestionar eventos de webhook en internal/api/webhook.go. Los eventos compatibles incluyen: Agrega tu lógica de negocio dentro del manejador de webhook para:
  • Actualizar permisos de usuario en tu base de datos
  • Enviar correos electrónicos de confirmación
  • Proveer acceso a productos digitales
  • Rastrear analíticas y métricas

Pruebas de Webhooks Localmente

Para el desarrollo local, utiliza herramientas como ngrok para exponer tu servidor local:
Actualiza la URL del webhook en tu Panel de Dodo Payments:

Despliegue

Compilar para producción

O manualmente:

Desplegar en Vercel

[ Desplegar con Vercel ](https://vercel.com/new/clone?repository-url=https://github.com/dodopayments/go-boilerplate)

Docker

Crea un Dockerfile:
Compila y ejecuta:

Consideraciones para producción

Antes de desplegar en producción:
  • Cambia DODO_PAYMENTS_ENVIRONMENT a live_mode
  • Usa claves de API de producción desde el panel
  • Actualiza la URL del webhook a tu dominio de producción
  • Habilita HTTPS para todos los endpoints

Solución de problemas

Asegúrate de que los módulos de Go estén correctamente descargados:
Causas comunes:
  • ID de producto inválido: verifica que exista en tu panel de Dodo
  • Clave de API o entorno incorrecto en .env
  • Consulta los registros del servidor para mensajes de error detallados
Para pruebas locales, usa ngrok para exponer tu servidor:
Actualiza la URL del webhook en tu panel de Dodo a la URL de ngrok. Asegúrate de actualizar tu archivo .env con la clave correcta de verificación de webhook.
Asegúrate de ejecutar el servidor desde el directorio raíz del proyecto o de que la ruta de las plantillas esté correctamente configurada en tu código.

Aprende más

Go SDK

Documentación completa del SDK de Go

Webhooks Documentation

Conoce todos los eventos de webhook y las mejores prácticas

Checkout Sessions

Profundiza en la configuración de sesiones de pago

API Reference

Documentación completa de la API de Dodo Payments

Soporte

¿Necesitas ayuda con la plantilla?
Última modificación el 9 de junio de 2026