@iaempresa
@iaempresa
/
📚
+Más Recursos
/
💻
App sin Código
💛

Prompt base - Venta de Productos Online

Quiero construir una web/app SaaS llamada “MicroProduct Store” para creadores (MVP production-ready) que permita vender un producto digital (PDF o enlace a Notion) en minutos.

OBJETIVO (Money first):

  • Que un creador pueda publicar una landing y cobrar 10€–49€ por una guía en menos de 10 minutos.
  • Flujo impecable: visitar landing → comprar → pagar → recibir acceso automático → creador ve ventas.

USUARIOS Y ROLES

  1. Admin/Creator (yo): crea productos, edita landing, ve ventas y clientes.
  2. Buyer: compra y recibe acceso inmediatamente.

FUNCIONES PRINCIPALES (prioridad absoluta: que funcionen MUY bien)

A) Checkout + Pago:

  • Integrar Stripe (Payment Links o Checkout) con soporte EUR.
  • Tras pago exitoso: registrar orden, comprador y producto en DB.
  • Página de “Gracias” clara.

B) Entrega automática (fulfillment):

  • Si el producto es “archivo”: permitir subir PDF (guardarlo y entregarlo vía link seguro).
  • Si el producto es “enlace”: permitir poner URL (Notion/Drive) y entregar esa URL.
  • Enviar email automático al comprador con “Tu acceso” + link (y mostrarlo también en la página de Gracias).
  • Link de descarga/acceso debe ser seguro (token único por orden, expira opcionalmente en 7 días, pero que el comprador pueda pedir reenvío).

C) Landing Builder simple (sin editor complejo):

  • Un producto = una landing.
  • Campos: Título, Subtítulo, bullets (3–8), imagen/cover, precio, garantía (texto), FAQ (3–8), testimonios (opcionales), CTA principal.
- URL pública: /p/{slug}
  • Botón “Comprar ahora” anclado.

D) Cupones y pricing:

  • Crear cupones: porcentaje o cantidad fija, con límite de usos y fecha de expiración.
  • Campo “Cupón” en checkout (si Stripe Checkout no lo soporta directo, aplicar descuento antes de crear sesión de pago).

E) Panel de control (Creator Dashboard):

  • Métricas: ingresos total, ventas hoy/7 días/30 días, conversión básica (visitas vs compras).
  • Lista de órdenes: fecha, email, producto, precio, estado.
  • Export CSV de órdenes.

REQUISITOS DE PRODUCTO (calidad)

  • Debe ser robusto y simple. Nada de funciones extra innecesarias.
  • UX rápida móvil-first.
  • Estados de error bien tratados (pago fallido, email ya existe, link inválido, etc).
  • Logs mínimos y reintentos para email.
  • Seguridad: auth para admin, validación server-side, tokens firmados para links.

STACK / IMPLEMENTACIÓN (elige la más compatible con Emergent)

  • Frontend: React/Next.js (o el stack recomendado por Emergent).
  • Backend: API con rutas claras.
  • DB: tablas bien diseñadas.
  • Auth: login para Admin/Creator.
  • Emails: usar un proveedor sencillo (SendGrid/Mailgun/Resend) o el mecanismo nativo disponible.

MODELO DE DATOS (mínimo)

  • users (admin)
  • products (id, title, slug, price_cents, currency, cover_url, bullets, faq_json, testimonials_json, delivery_type[file|link], delivery_asset_url, active)
  • coupons (code, type, value, max_redemptions, redeemed_count, expires_at, active)
  • orders (id, product_id, buyer_email, amount_cents, currency, stripe_session_id, status, created_at)
  • order_access_tokens (order_id, token, expires_at, created_at)

FLUJOS (define y construye)

  1. Admin crea producto → publica → obtiene link de landing.
  2. Buyer visita landing → compra → Stripe checkout → webhook confirma pago → crea order + token → envía email + muestra acceso.
  3. Buyer reenvía acceso: “Reenviar acceso” con email → si existe orden pagada, reenviar email.
  4. Admin ve dashboard, órdenes, exporta CSV, crea cupones.

PÁGINAS

- Landing pública del producto: /p/{slug}
  • Checkout start: /api/checkout/create-session
  • Success: /success?session_id=...
- Access: /access/{token}
  • Admin login: /admin/login
  • Admin dashboard: /admin
- Admin product editor: /admin/products/new y /admin/products/{id}
  • Admin coupons: /admin/coupons

INSTRUCCIONES IMPORTANTES

  • Implementa Stripe con webhook real (verificación de firma).
  • No uses “mock payments”.
  • Asegura que el acceso solo se muestra si order.status = paid.
  • Crea seeds/ejemplo: un producto “Guía IAEmpresa 10€” para probar.

ENTREGABLE

  • App funcionando end-to-end: crear producto → landing → pago → entrega → dashboard.
  • Dame también un pequeño checklist de pruebas dentro del proyecto (como README) para validar que todo va perfecto.