PrivaPaid Stream es una plataforma de contenido de codigo abierto con cifrado AES-256-GCM, integracion de pagos Lightning y una arquitectura de entrega donde el servidor nunca ve el contenido que sirve. Tiene licencia MIT. Puedes hacer un fork, ponerle tu marca, desplegarla en tu propia infraestructura y operar un negocio de contenido donde controlas el margen, la experiencia y la arquitectura. El repositorio esta en GitHub.
Este articulo trata sobre lo que puedes construir con ella — y como encajan las piezas.
La Oportunidad para Agencias
Si gestionas creadores, ya conoces el problema. Las plataformas que alojan y venden contenido tambien controlan el flujo de pagos, establecen las comisiones, dictan las politicas de contenido y son duenas de la relacion con el cliente. Una agencia operando en OnlyFans, Patreon o Gumroad esta alquilando la infraestructura de alguien mas al 10–20% de cada venta — y puede ser cerrada en cualquier momento.
PrivaPaid Stream te da una opcion diferente: despliega tu propia plataforma de contenido con tu marca. Controlas el escaparate, la incorporacion de creadores, los precios y la experiencia del cliente. La infraestructura de pagos funciona por debajo a traves de SatsRail (el rail de pagos debajo de PrivaPaid), que maneja facturas, confirmacion de pagos, claves de producto y liquidacion. Nunca tocas la logica de pagos. SatsRail nunca ve tu contenido.
Tu plataforma. Tu marca. Tus margenes.
Lo Que Hace PrivaPaid Stream
Stream es la capa de contenido. Maneja todo entre "un creador sube contenido" y "un comprador lo ve en su navegador". Esto es lo que gestiona:
- Alojamiento de contenido cifrado. El contenido se cifra con AES-256-GCM antes de almacenarse. El servidor solo almacena blobs cifrados. Las URLs en texto plano son accesibles solo para el personal administrativo, nunca para los espectadores.
- Descifrado del lado del cliente. Despues de que un comprador paga, la clave de descifrado llega a su navegador a traves del rail de pagos. La Web Crypto API descifra el contenido del lado del cliente. El servidor nunca ve el texto plano.
- Canales y categorias. Organiza contenido por canales de creadores, con categorias y etiquetas. Cada canal puede tener su propia marca y estructura de contenido.
- Gestion de creadores. Dos modos — creadores gestionados cuyo contenido es manejado por el operador de la plataforma, y creadores independientes con sus propias claves API de SatsRail donde los pagos van directamente a su wallet.
- Cuentas pseudonimas. Las cuentas de compradores requieren solo un apodo y contrasena. Sin email. Sin numero de telefono. Sin nombre real. O desactiva las cuentas completamente para compras puramente anonimas.
- Tematizacion white-label. Las variables CSS permiten un reestilizado completo sin tocar el codigo fuente. Tu marca, no la de PrivaPaid.
Lo Que Maneja SatsRail
SatsRail es el rail de pagos debajo de PrivaPaid. Maneja las partes que requieren precision criptografica e infraestructura financiera:
- Registro de productos. Cada pieza de contenido se convierte en un producto de SatsRail con un precio y una clave de cifrado AES-256-GCM unica.
- Sesiones de checkout. SatsRail genera facturas Lightning y gestiona el flujo de checkout.
- Confirmacion de pago. Cuando un pago Lightning se liquida, SatsRail lo confirma y emite una clave de producto.
- Entrega de claves. La clave de producto envuelta viaja desde SatsRail hasta el navegador del comprador. La clave de cifrado del contenido se desenvuelve del lado del cliente.
- Verificacion de acceso. Tokens de acceso basados en macaroons (HMAC-SHA256, firmados, con expiracion) permiten a los compradores volver a acceder al contenido comprado sin pagar de nuevo.
- Liquidacion. Los sats se mueven directamente del wallet del comprador al wallet del creador. SatsRail no retiene fondos.
La Separacion
Esta es la base arquitectonica. SatsRail nunca ve el contenido. PrivaPaid Stream nunca toca los pagos. Ninguna capa individual del stack tiene una imagen completa de ninguna transaccion.
| Capa | Almacena | No Puede Acceder |
|---|---|---|
| SatsRail (rail de pagos) | Nombre del producto, precio, SKU. Claves de cifrado AES-256-GCM. Registros de facturas. Confirmaciones de pago. | Archivos de contenido. Descripciones o categorias del contenido. Identidad del comprador. Lo que la clave realmente desbloquea. |
| PrivaPaid Stream (capa de contenido) | Canales, categorias, metadatos de medios. Blobs de contenido cifrado. URLs en texto plano (solo admin). | Claves de cifrado (en poder de SatsRail). Montos de pago. Identidad real del cliente. |
| Navegador (cliente) | Token de acceso en localStorage. Contenido descifrado solo en memoria. | Nada persiste mas alla de la sesion. Cierra la pestana y desaparece. |
Esto no es una politica. Es una restriccion estructural. La separacion se aplica por arquitectura, no por acuerdo.
Lo Que Controla el Operador
Como agencia u operador de plataforma desplegando PrivaPaid Stream, controlas:
- Margenes. Establece tu propia tasa de comision. SatsRail cobra una tarifa fija por API — el resto es tuyo. Sin comision del 20% de la plataforma.
- Incorporacion de creadores. Tu decides quien obtiene un canal, que categorias existen y como se organiza el contenido. Tu eres la plataforma.
- Marca. Variables CSS, logo, colores, tipografia. El escaparate se ve como tu marca, no la nuestra.
- Infraestructura. Despliega en tus propios servidores, tu propia nube, tu propio dominio. Docker Compose te pone en marcha en minutos. O despliega en Vercel, bare metal, lo que se ajuste a tus operaciones.
- Politicas de contenido. Tu estableces las reglas de que contenido se acepta. El rail de pagos no impone restricciones de contenido.
- Nivel de privacidad. Elige entre cuentas de comprador pseudonimas o compras completamente anonimas. La arquitectura soporta ambas.
El Stack Tecnologico
Para desarrolladores evaluando un despliegue:
| Componente | Tecnologia | Por que |
|---|---|---|
| Framework | Next.js 15, App Router | Server components para entrega de blobs cifrados, API routes para flujo de checkout |
| Lenguaje | TypeScript (strict mode) | Seguridad de tipos a traves de las capas de cifrado y pago |
| Base de datos | MongoDB + Mongoose | El modelo de documentos se ajusta al esquema de contenido y canales. Funciona con Atlas o auto-alojado. |
| Cifrado | AES-256-GCM via Web Crypto API | Nativo del navegador, cero dependencias, cifrado autenticado |
| Estilos | Tailwind CSS v4 | Variables CSS para tematizacion white-label por instancia |
| Pagos | SatsRail API | Lightning no custodiado. Claves de producto, sesiones de checkout, verificacion de acceso. |
| Control de acceso | Macaroons (HMAC-SHA256) | Firmados, con expiracion, verificables sin estado de sesion del lado del servidor |
| Despliegue | Docker / Vercel / bare metal | docker compose up -d te pone en marcha en minutos |
Por Que Codigo Abierto
Hacer open source la plataforma de contenido logra dos cosas.
Primero, hace que la arquitectura sea auditable. Cualquiera puede leer el flujo de cifrado, verificar que el servidor nunca ve contenido descifrado y confirmar que la identidad del comprador esta estructuralmente excluida del modelo de datos. "Confien en nosotros" no es una arquitectura de privacidad. "Lean el codigo" si lo es.
Segundo, reduce la barrera de entrada para las agencias. No necesitas construir una plataforma de contenido cifrado desde cero. No necesitas implementar el flujo criptografico ni la integracion de pagos. Haz un fork del repositorio, ponle tu marca, despliegalo. Las capas de cifrado y pagos ya estan construidas y probadas.
El modelo de negocio de SatsRail es infraestructura de pagos — suscripciones API, no ingresos por plataforma de contenido. Cuantas mas plataformas desplieguen Stream y consuman la API de SatsRail, mas crece la infraestructura. Hacer open source la capa de contenido es como llegamos ahi.
Lo Que Esto No Resuelve
Algunas limitaciones honestas:
- Las URLs en texto plano existen en la base de datos administrativa. MongoDB almacena las URLs de origen originales para acceso administrativo y re-cifrado. Las paginas orientadas al espectador solo reciben el blob cifrado. Pero si la instancia de MongoDB es comprometida, un atacante obtiene las URLs de origen. El cifrado protege el contenido tal como se sirve a los espectadores, no en reposo en la base de datos administrativa.
- El operador aun controla la plataforma. Tu eliges que categorias existen, que contenido se sube y quien obtiene un canal. Esto es control editorial, no censura de pagos. El rail de pagos no restringe contenido — pero tu, como operador, decides lo que tu plataforma ofrece.
- La adopcion de Lightning aun es temprana. Tus compradores necesitan un wallet Lightning. La audiencia esta creciendo, pero aun no es mainstream. Esta es infraestructura para los constructores que quieren estar preparados.
Comienza
El repositorio esta en github.com/SatsRail/media. Licencia MIT. Clonalo, despliegalo, construye algo con el. Lo unico que necesita de SatsRail es una clave API para el rail de pagos.
El resto es tuyo.
PrivaPaid Stream es la capa de contenido de codigo abierto. SatsRail es el rail de pagos debajo. Juntos: entrega de contenido cifrado, pagos Lightning no custodiados y una plataforma que es tuya. Descubre lo que esto significa para agencias o empieza a construir.