Fuego Social — Pagos: Guía de Activacion
Todo el codigo esta listo. Manana solo necesitas hacer esto:
1. Stripe
1.1 Crear cuenta
- Ir a https://dashboard.stripe.com/register
- Usar el email de Fuego Social
1.2 Obtener claves
- Dashboard → Developers → API keys
- Copiar
Publishable key(pk_live_...) →STRIPE_PUBLISHABLE_KEY
- Copiar
Secret key(sk_live_...) →STRIPE_SECRET_KEY
1.3 Configurar webhook
- Dashboard → Developers → Webhooks → Add endpoint
- URL:
https://fuegosocial.com/api/webhooks/stripe
- Eventos a escuchar:
- payment_intent.succeeded
- payment_intent.payment_failed
- charge.refunded
- Copiar el "Signing secret" (whsec_...) →
STRIPE_WEBHOOK_SECRET
1.4 Activar Stripe Connect (para pagar a los hosts)
- Dashboard → Connect → Get started
- Tipo: Standard accounts
- Esto permite que cada host reciba su pago directamente
2. MercadoPago
2.1 Crear cuenta
- Ir a https://www.mercadopago.com.ar (o .com.mx / .com.br segun el pais objetivo)
- Crear cuenta de vendedor (no personal)
2.2 Crear aplicacion
- Ir a https://www.mercadopago.com.ar/developers/panel/app
- Crear nueva aplicacion → "Fuego Social"
- Copiar:
- Access token → MERCADOPAGO_ACCESS_TOKEN
- Public key → MP_PUBLIC_KEY
2.3 Configurar webhook
- En la aplicacion → Webhooks
- Agregar URL:
https://fuegosocial.com/api/webhooks/mercadopago
- Evento:
payment
- Copiar el secret →
MERCADOPAGO_WEBHOOK_SECRET
2.4 Marketplace (opcional, para split a hosts)
- Solicitar acceso a "Marketplace" en el soporte de MP
- Dashboard → OAuth → Copiar Client ID y Client Secret
→ MP_CLIENT_ID, MP_CLIENT_SECRET
3. Aplicar la migracion de DB
``bash
psql -U tenant -d fuegosocial -f migrations/002_payments.sql
`
4. Agregar las claves al .env
`bash
cp server/.env.example server/.env
Editar server/.env con las claves reales
`
5. Integrar las rutas en api.js
En server/api.js, agregar al inicio:
`js
const { PAYMENT_ROUTES } = require("./payment-routes");
`
Y en el array ROUTES, antes del catch-all 404:
`js
...PAYMENT_ROUTES,
`
Ver el comentario al final de server/payment-routes.js para el snippet completo.
Flujo de pago
Stripe (tarjeta internacional / EUR / USD)
- Frontend: POST /api/payments/stripe/intent
→ recibeclient_secret
- Frontend: Stripe.js confirma el pago con client_secret
- Stripe: llama al webhook /api/webhooks/stripe
→ booking se marcapaid
MercadoPago (ARS / BRL / MXN)
- Frontend: POST /api/payments/mp/preference
→ recibeinit_pointURL
- Usuario: redirigido a MercadoPago, paga, vuelve
- MP: llama al webhook /api/webhooks/mercadopago
→ booking se marcapaid
Archivos creados
| Archivo | Descripcion |
|---|---|
server/lib/payments.js | Servicio de pagos (Stripe + MP) |
server/payment-routes.js | Rutas API de pagos + webhooks |
migrations/002_payments.sql | Campos de MP, payment_events, payouts |
server/.env.example | Variables de entorno documentadas |
| server/lib/env.js` | Actualizado con nuevas vars |