Saltar a contenido

Configuración

Variables de entorno

Requeridas

Variable Descripción Ejemplo
API_TOKEN Token admin global mi-super-secreto-123
WEBHOOK_SECRET HMAC key para webhooks MP abc123def456...
MP_APP_ID App ID de MercadoPago 4577471269195414
MP_CLIENT_SECRET Client Secret de MP abc123...
MP_REDIRECT_URI URL de callback OAuth https://mercadopago.histrix.com.ar/oauth/callback

Opcionales

Variable Descripción Default
PLATFORM_ID Platform ID para integration_data de MP No se envía

Configuración local

Crear archivo .dev.vars en la raíz del proyecto:

API_TOKEN=mi-token-local
WEBHOOK_SECRET=mi-webhook-secret
MP_APP_ID=4577471269195414
MP_CLIENT_SECRET=abc123
MP_REDIRECT_URI=http://localhost:5173/oauth/callback

No commitear .dev.vars

Este archivo contiene secretos. Asegurate de que esté en .gitignore.

wrangler.toml

name = "mercadopago-integration"
compatibility_date = "2024-12-01"

[vars]
PLATFORM_ID = "tu-platform-id"

[[d1_databases]]
binding = "webhook_db"
database_name = "mercadopago-db"
database_id = "tu-database-id"

[triggers]
crons = ["0 3 * * *"]

Vite

graph LR
    subgraph Dev["Development"]
        VITE["Vite Dev Server"] --> HMR["HMR + Hot Reload"]
        VITE --> TW["Tailwind CSS<br/>on-the-fly"]
        VITE --> CF["Cloudflare<br/>Local Runtime"]
    end

    subgraph Build["Production Build"]
        CLIENT["vite build --mode client"] --> STATIC["dist/client/static/<br/>client.js + style.css"]
        SERVER["vite build"] --> WORKER["dist/worker.js"]
    end

La configuración de Vite tiene dos modos:

  • mode === 'client': Buildea el dashboard (JSX + Tailwind) a archivos estáticos
  • Default: Buildea el worker de Cloudflare

Comandos

# Desarrollo
pnpm dev              # Dev server con Vite + Cloudflare local

# Build
pnpm build            # Build client + worker

# Deploy
pnpm deploy           # Deploy a Cloudflare Workers/Pages

# Base de datos
pnpm db:generate      # Generar migraciones Drizzle
pnpm db:migrate:local # Migrar D1 local
pnpm db:migrate:remote # Migrar D1 producción