# Experiencia Visitor (`bewpro.com/*` público)

> Usuario no autenticado en bewpro.com. Funnel de conversión hacia signup/checkout.
> Estado: ⚠️ 5/15 ejes aplicables ✅ — Infraestructura OK, conversión sub-optimal.
>
> Última actualización: 2026-05-12

---

## Quién es el usuario

Prospect que llega a bewpro.com vía:
- Google Ads / SEO orgánico (mayoría)
- Referido por reseller o cliente actual
- Social media / blog post
- Directo (typed the URL)

**Lo que el usuario espera:**
- Entender en <10 segundos qué hace BewPro
- Ver pricing / lo que recibe
- Probar / comprar con fricción mínima
- Social proof (otros lo usan, funciona)

**Lo que NO espera:**
- Llenar 4 forms antes de ver pricing
- Adivinar "cuál de los 250 productos es para mí"
- OAuth dummy que no hace nada al click
- Footer sin CTA secundaria

---

## Rutas públicas implementadas

| Ruta | Propósito | Estado |
|------|-----------|--------|
| `/` | Home (demo-agnostic wrapper) | ⚠️ genérico |
| `/about` | About module | ✅ |
| `/contact` | Form contacto + reCAPTCHA v3 | ✅ |
| `/pricing` | Pricing público | ⚠️ link no visible en nav |
| `/products-catalogue` | Catálogo de productos | ⚠️ sin filtro precio/industria |
| `/products-catalogue/{slug}` | Detalle producto | ⚠️ sin CTA compra visible |
| `/products-catalogue/category/{slug}` | Por categoría | ✅ |
| `/products-catalogue/tag/{slug}` | Por tag | ✅ |
| `/blog`, `/blog/{slug}` | Blog público | ⚠️ link escondido |
| `/news`, `/news/{slug}` | News | ⚠️ link escondido |
| `/faqs` | FAQs públicos | ⚠️ link escondido |
| `/legal/terms` | Términos | ✅ |
| `/legal/privacy` | Privacy policy | ✅ |
| `/legal/cookies` | Cookie policy | ✅ |
| `/legal/refund` | Política de reembolso | ✅ (linkeado en footer Customer) |
| `/login` | Login | ⚠️ Google OAuth dummy |
| `/register` | Registro | ❌ OAuth no funcional, sin captcha |
| `/password/forgot`, `/password/reset` | Password recovery | ✅ |
| `/checkout/{slug}` | Guest checkout (POST + GET) | ❌ vista no encontrada |
| `/checkout/success` | Confirmación | ✅ |
| `/my-billing` | Portal facturación (token-based) | ✅ |
| `/sitemap`, `/sitemap.xml` | SEO | ✅ |

---

## Standard de Madurez — audit por eje

| Eje | Status | Hallazgo |
|-----|--------|----------|
| 1. Estructura base | ⚠️ | Home no usa la convención x-admin-header (es público, layout distinto) — pero falta hero/CTA estructurado |
| 2. Onboarding | ❌ | Sin onboarding visible. El "onboarding" es: home explica qué es esto y derive a register/catalog. Hoy no lo hace bien. |
| 3. Stats top | N/A | No aplica para visitor — pero social proof (clientes activos, sitios provisionados, $$$ ahorrado) sí. |
| 4. Filtros + search | ⚠️ | Catálogo tiene category/tag pero NO precio NI industria visible. Search route existe sin UI. |
| 5. Empty states | ❌ | Catálogo no tiene empty state si una categoría queda vacía. |
| 6. Lifecycle banners | N/A | — |
| 7. Progress + ETA | N/A | — |
| 8. Primary + secondary | ❌ | **Crítico**: `/products-catalogue/{slug}` NO tiene CTA "Comprar ahora" visible. Es el #1 issue del funnel. |
| 9. Help in-panel | ⚠️ | FAQs existen pero escondidos. Footer no linkea. |
| 10. Integraciones | ⚠️ | Checkout flow opaco (vista no claramente identificada). Stripe Embed o Checkout? |
| 11. Auth + permisos | N/A | — |
| 12. Responsive | ⚠️ | Filtros offcanvas en mobile, OK. Pero falta CTA "Comprar" inline mobile (la decisión de compra mobile-first es el grueso del tráfico Ads). |
| 13. Flash + alerts | ⚠️ | Cookie banner GDPR OK. Sin alerts post-form-submit relevantes. |
| 14. Footer útil | ⚠️ | Linkea legal pages pero **sin pricing, sin blog, sin "Centro de Ayuda" público**. Pérdida de discovery. |
| 15. Idioma + tono | ✅ | 100% ES, accesible. |

**Score aplicable: 5/13 ✅ (excluí 2 N/A). El resto ⚠️/❌.**

**Veredicto: Visitor experience FUNCIONA técnicamente, NO CONVIERTE óptimamente.**

---

## Gaps priorizados de conversión

### P0 — Bloqueantes de revenue

1. **Home no vende**
   - Hoy: wrapper demo-agnostic, sin hero/CTA.
   - Fix: home con hero claro ("Sitios web profesionales en 25 min — sin tocar código") + 2 CTAs ("Ver catálogo" + "Comenzar gratis") + social proof (counter de sitios activos, logos de clientes, testimonios) + sección "Cómo funciona" 3 pasos.
   - Estimado: 4-6h (diseño + blade + responsive).

2. **Producto sin CTA "Comprar"**
   - `/products-catalogue/{slug}` muestra info del producto pero NO tiene botón visible para comprar.
   - Fix: agregar CTA sticky o destacado "Comprar ahora — USD X/mes" → POST `/checkout/{slug}`.
   - Estimado: 2h.

3. **Checkout flow opaco**
   - Route POST `/checkout/{slug}` existe pero vista no clara. Si el visitor no puede ver/completar el checkout, no compra.
   - Fix: validar el flow E2E. Si no hay vista, crear una con: preview producto + form email + Stripe Elements + ToS checkbox.
   - Estimado: 4h.

4. **Google OAuth dummy en register**
   - Botón "Sign in with Google" en `/register` sin handler → click = nada.
   - Fix: implementar Socialite Google driver, callback, auto-create user con email verified.
   - Estimado: 3h (incluye config Google Console).

### P1 — Polish conversion

5. **Filtros catálogo precio + industria**
   - Hoy solo category/tag. Cliente busca por industria ("soy abogado, qué necesito").
   - Fix: agregar filtros sidebar: industria (8 opciones), precio (slider o ranges), core type.
   - Estimado: 2h.

6. **Search visible en catálogo**
   - Route existe sin UI.
   - Fix: input search visible en header del catálogo.
   - Estimado: 30 min.

7. **Footer con pricing + blog + ayuda**
   - Footer hoy: legal pages. Falta discovery a otras secciones del funnel.
   - Fix: agregar columnas "Producto" (pricing, catálogo, features), "Recursos" (blog, FAQs, Centro de Ayuda público), "Empresa" (about, contact, legal).
   - Estimado: 1.5h.

8. **Captcha en register**
   - reCAPTCHA v3 ya existe (usado en /contact). Aplicarlo a register.
   - Estimado: 30 min.

9. **Social proof en home**
   - "Más de 50 sitios activos · 25+ industrias · Soporte 24hs"
   - Logos de clientes (3-5 visibles).
   - 2-3 testimonios con foto + nombre + rol.
   - Estimado: 2h (incluye assets).

10. **Cookie banner UX**
    - Hoy funcional pero ocupa pantalla completa en mobile. Reducir a footer-band dismissable.
    - Estimado: 1h.

### P2 — Diferidos

- **Trial automático al register**: registrar = trial 7 días sin tarjeta. Requiere logic backend + Stripe integration. Diferido — primero validar que el funnel actual con compra inmediata funciona.
- **Reviews por producto**: requiere modelo + UI moderación. Diferido a Q3.
- **Recomendaciones de productos relacionados**: por industria/categoria. Diferido.
- **Blog/News navegables**: hoy escondidos. Si el contenido es bajo, mantenerlos escondidos hasta que haya suficiente material.
- **2FA en signup**: no es estándar para self-service B2C. Diferido a roadmap security.

---

## Plan de cierre (visitor polish — alcance acotado)

Para llevar el visitor experience a "production-polished" en un sprint de ~16h:

| # | Cambio | Estimado | Prioridad |
|---|--------|----------|-----------|
| 1 | Hero + CTAs en home | 4h | P0 |
| 2 | CTA "Comprar" en producto detail | 2h | P0 |
| 3 | Validar / fix checkout flow | 4h | P0 |
| 4 | Google OAuth funcional | 3h | P0 |
| 5 | Filtros precio + industria | 2h | P1 |
| 6 | Footer expandido | 1.5h | P1 |
| 7 | Search visible | 30 min | P1 |
| 8 | Captcha register | 30 min | P1 |

Total: ~17.5h de trabajo focused. Después de esto, score sería 11/13 ✅ — al nivel de Customer/Reseller.

P1-9 (social proof) y P1-10 (cookie banner UX) en segunda iteración.
P2 todo diferido por estrategia.

---

## Decisiones de diseño

### Por qué el home es demo-agnostic hoy

Histórico: el sistema servía a múltiples tenants y el home era reusable. Pero **bewpro.com NO es un tenant — es la marca**. Justifica un home dedicado con copy comercial.

### Por qué no hay trial automático

Hoy el modelo es: ves catálogo → pagás → recibís sitio. Sin trial. La razón: el costo de provisionar un sitio es real (cPanel + DNS + ~25 min compute). Trials gratuitos serían costo si no convierten.

**Trade-off**: convertir más con trial (más volumen, menor conversion rate por compra) vs. convertir menos pero solo intent alto (lo de hoy). No está validado cuál optimiza revenue.

### Por qué Google OAuth (cuando esté implementado) es importante

Reducción de fricción en signup. Email/password requiere: tipear, recordar, validar. Google OAuth: 2 clicks. **Caso medido en SaaS**: +15-25% conversion en signup.

---

## Referencias

- SEO/Analytics setup: `docs/bewpro2.0/roadmap/01-analytics-hotjar.md`, `docs/bewpro2.0/google-ads-setup.md`
- Landing checklist: `docs/bewpro2.0/landing-producto-checklist.md`
- Catálogo: `docs/bewpro2.0/catalogo-productos.md`
- Standard de madurez: `docs/bewpro2.0/paneles/standard-de-madurez.md`
