El contexto
Screenflux es un marketplace PWA mobile-first para publicidad out-of-home. Funciona como un Airbnb de espacios publicitarios: los proveedores publican spots —pantallas LED, vallas, vehículos— y los anunciantes exploran un mapa, comparan ubicaciones y reservan espacios en minutos.
El primer mercado es Paraguay (Asunción y Ciudad del Este), con planes de expandir a Argentina y Brasil. El modelo de negocio usa escrow: el anunciante paga al reservar, Screenflux retiene los fondos y libera el pago al proveedor a medida que llegan los reportes verificados de impresión.
El desafío
Un marketplace de publicidad física combina problemas de geografía, pagos, confianza y logística:
- Descubrimiento geográfico real: el anunciante necesita ver dónde está cada spot, no una lista de direcciones.
- Tres roles con permisos distintos: anunciante (comprador), proveedor (dueño del spot) y administrador de plataforma.
- Pagos locales: integración con Pagopar para cobrar en Paraguay de forma nativa.
- Confianza y escrow: el dinero solo se libera cuando hay prueba de exhibición, no antes.
- PWA mobile-first: muchos usuarios operarán desde el celular en la calle, no desde una oficina.
- Arquitectura escalable: el catálogo de spots, reservas y reportes debe poder crecer sin rehacer la base.
La solución
Screenflux está construido con Next.js 16, TypeScript y Prisma 7 sobre PostgreSQL gestionado en DigitalOcean. La arquitectura sigue Screaming Architecture: las carpetas describen el negocio (features/, shared/, core/) en lugar de repetir la estructura del framework.
Los mapas corren con MapLibre GL y react-map-gl, lo que permite mostrar spots geolocalizados sin depender de servicios propietarios costosos. La autenticación la maneja Better Auth con el adapter de Prisma. Los pagos locales se resuelven con Pagopar, con webhooks para actualizar estados de reserva y pago.
El almacenamiento multimedia va a DigitalOcean Spaces (compatible S3), el cache y colas a Redis (Valkey), y el email transaccional a Resend con React Email. La app se registra como PWA para soportar instalación desde el navegador y funcionamiento offline parcial.
El modelo de escrow es clave: el comprador paga por adelantado, la plataforma actúa como merchant of record y retiene los fondos hasta que los reportes de proof-of-display confirman que la publicidad se ejecutó. Solo entonces se libera el pago al proveedor, menos la comisión de la plataforma.
Resultado
Screenflux está diseñado para modernizar la compra y venta de publicidad física en Latinoamérica. Reemplaza el proceso tradicional de llamadas, correos y confirmaciones manuales por un flujo digital geolocalizado, con pagos locales y garantía de ejecución.
Para Owncoding, Screenflux representa un caso de estudio de marketplace vertical: geografía, pagos locales, escrow y PWA, todo sobre una arquitectura expresada en términos del negocio y lista para escalar a más ciudades.