Template SaaS en Next.js para productos que necesitan el estado de billing sincronizado desde Commet a su propia base de datos. Usa los webhooks de Commet como fuente de verdad para acceso del cliente, estado de suscripción, pagos, uso e historial local de eventos.
Stack: Next.js 16, Better Auth, Drizzle ORM, PostgreSQL, Commet SDK
Inicio Rápido
git clone https://github.com/commet-labs/commet.git
cd commet/examples/webhooks
pnpm install
pnpm devQué Incluye
Dos planes públicos con precios mensuales y anuales
Tres funcionalidades medidas: Llamadas API, Almacenamiento, Envíos de Email
Flujo de checkout y activación de suscripción
Endpoint firmado para recibir eventos de Commet
Registro idempotente de eventos antes de correr handlers críticos
Sincronización de estado desde
customer.state_changedActualizaciones de uso desde
usage.recordedFeed local para inspeccionar webhooks recibidos
Dashboard con plan, estado, renovación y acceso por funcionalidades
Archivos Clave
app/api/webhooks/commet/route.ts— Endpoint firmado con log de eventos e idempotencialib/billing/sync.ts— Sincronización del snapshot de estado del clientelib/billing/usage.ts— Persistencia de eventos de usolib/webhooks/events.ts— Registro local de eventos webhookapp/(dashboard)/dashboard/events/page.tsx— Feed de webhooksapp/(dashboard)/dashboard/page.tsx— Vista general del estado de billingapp/pricing/page.tsx— Precios dinámicos desde planes de Commet
Setup en Producción
Agregar
COMMET_API_KEYde tu organización sandbox o live de CommetAgregar
COMMET_WEBHOOK_SECRETdesde el endpoint de webhook en CommetConfigurar
NEXT_PUBLIC_APP_URLcon la URL deployadaRegistrar
/api/webhooks/commetcomo endpoint de webhook en CommetSuscribir el endpoint a eventos de customer, subscription, payment, invoice, checkout y usage
Más Información
Cloná el repo para arrancar, probá la demo en vivo o mirá el código en GitHub.
