Farmacia headless: cadena de frío, fórmula médica, pastillero con SMS y promociones desde el ERP
PharmaPlus · tienda headless
Una farmacia tiene reglas de compra que una tienda genérica no resuelve: cadena de frío, fórmula médica y continuidad de tratamientos. Para PharmaPlus construí un e-commerce headless que contempla esos casos en el catálogo y el checkout, envía recordatorios de dosis por SMS y recibe promociones desde el ERP.
El problema
PharmaPlus necesitaba renovar la tienda sin quitarle a su equipo el panel de WooCommerce. Como farmacia, también debía mostrar qué productos requieren cadena de frío o fórmula médica y llevar al canal online las promociones y convenios que ya administra el ERP.
La solución
Catálogo, búsqueda & ERP
- Frontend headless en Next.js sobre WooCommerce (REST + WPGraphQL), conservando WordPress como panel real de gestión del catálogo.
- Búsqueda avanzada sobre Supabase (función RPC con texto completo y fuzzy matching), multi-idioma (ES/EN/PT), con sugerencia en vivo y opción de agregar al carrito desde los resultados.
- Metadatos regulatorios reales por producto (laboratorio, registro sanitario INVIMA, tipo de producto) sincronizados desde el ERP del cliente a WooCommerce.
- Motor de promociones alimentado desde el ERP: descuentos escalonados por cantidad (B2C, por SKU) y precios fijos por convenio de cliente (B2B, por NIT).
Pagos & envíos
- Wompi como pasarela principal (PSE, tarjetas débito/crédito, corresponsal bancario) y validación de stock en tiempo real contra WooCommerce en cada paso crítico del checkout.
- Transferencia/consignación bancaria con comprobante de pago obligatorio antes de confirmar el pedido.
- Contra entrega en efectivo o datáfono (zona Bogotá D.C.), y pago en tienda al momento de recoger.
- Convenios/cupo de crédito con dos proveedores distintos, validados por número de documento antes de finalizar la compra.
- Envíos calculados por ciudad con codificación oficial DANE de departamentos y municipios de Colombia.
Sistemas de farmacia
- Cadena de frío: productos que requieren refrigeración detectados por categoría y metadato real (no por palabras clave, corregido tras una auditoría que encontró falsos positivos) con badge, alerta y cobro de nevera.
- Fórmula médica: detección automática de qué medicamentos la requieren y carga guiada del documento durante el checkout.
- Pastillero virtual con recordatorios por SMS: un cron cada 5 minutos calcula la hora exacta de la próxima dosis ajustada al huso horario de Colombia, descuenta inventario automáticamente y envía un segundo SMS cuando el stock baja del umbral.
- Análisis dermocosmético virtual con IA (propuesta técnica propia, próxima a desarrollo): el cliente sube una foto y recibe una rutina personalizada de productos dermatológicos, como proyecto independiente en subdominio propio.
Seguridad, rendimiento & marketing
- Seguridad en la API REST de WordPress: bloqueo de acceso no autenticado y de enumeración de usuarios, con excepciones controladas para WooCommerce y la API propia.
- Cloudflare Turnstile y rate limiting (Upstash) sobre formularios y endpoints sensibles.
- Caché en Redis (Upstash) sobre WooCommerce/WPGraphQL, invalidado por tags apenas cambia el stock.
- Observabilidad con Sentry y cabeceras de seguridad (X-Frame-Options, X-Content-Type-Options, Referrer-Policy) a nivel de Vercel.
- Google Tag Manager y Meta Pixel con fallback sin JavaScript.