Saltar al contenido principal

Visión General del Backoffice

El Backoffice de Percus es la plataforma web central a través de la cual los clientes gestionan sus campañas de video personalizado y a través de la cual el equipo interno de Percus opera las cuentas. Es una aplicación multi-tenant en Next.js 15 respaldada por cuatro microservicios independientes en .NET 10.

Dos audiencias​

AudienciaQuiénesQué hacen
Usuarios del clienteGerentes de marketing, líderes de proyecto, desarrolladores, motion designersCrear y gestionar proyectos, subir templates, publicar en canales de distribución, generar páginas de aterrizaje
Internos de PercusAccount managers, administradores de plataformaGestionar organizaciones, asignar roles de sistema, supervisar todas las cuentas

Arquitectura general​

La plataforma se divide en cuatro servicios backend, cada uno dueño de sus propios datos:

  • Identity Service — usuarios, organizaciones, roles, invitaciones, autenticación (PostgreSQL)
  • Campaign Service — proyectos, templates, canales de distribución, páginas de aterrizaje, credenciales de API (PostgreSQL)
  • Render Data Service — datos de personalización por destinatario para el modelo alojado (DynamoDB, no PostgreSQL)
  • Analytics Service — ingesta de eventos de reproducción e interacción, rollups y métricas

Ningún servicio lee directamente la base de datos de otro.

El frontend (Next.js 15, App Router) se comunica con ambos servicios y usa NextAuth.js para la gestión de sesiones.

Módulos principales​

Proyectos​

La unidad organizativa principal. Un proyecto representa una campaña de video personalizado. Cada proyecto contiene templates, canales de distribución y opcionalmente páginas de aterrizaje públicas. Ver Proyectos.

Templates​

Paquetes de template de video subidos por motion designers. Soporta dos tipos: basado en Lottie (animación JSON) y Raster (video MP4 + overlay Lottie). Los templates son versionados y avanzan a través de un flujo testing → producción. Ver Templates.

Canales de distribución​

Cada proyecto tiene tres canales fijos: DEV, STAGING y PROD. Publicar un template en un canal lo activa para ese entorno. Ver Canales de distribución.

Public Video Shares​

Páginas de aterrizaje compartibles que sirven un video personalizado para un canal determinado. Pueden habilitarse, deshabilitarse y rotar sus URLs. Ver Public Video Shares.

Credenciales de API​

Credenciales por proyecto (clave + secreto) usadas para autenticar el acceso programático. Ver Public Video Shares.

Roles y permisos​

El acceso se controla mediante roles por organización asignados por usuario. Ver Roles y permisos.

Analítica​

Un dashboard que reporta reproducción, completitud, click-through de CTAs y respuestas de encuestas, acotado a la organización. Alimentado por el Analytics Service.

Integración​

Donde se cargan los datos de personalización por destinatario para el modelo alojado en Percus, y donde se obtiene el snippet de embed de un canal. Ver Manejo de datos para cómo se almacenan esos datos, y la Referencia del snippet para sus atributos.

Subtítulos y transcripciones​

Los templates pueden llevar pistas de subtítulos temporizados por idioma y una transcripción de texto completo. Ambos se autoran en el plugin de diseño y viajan en el manifiesto — ver la Referencia del manifiesto del player.

Stack tecnológico​

CapaTecnología
FrontendNext.js 15, React 19, TypeScript, Tailwind CSS
AutenticaciónNextAuth.js 5 — Google OAuth 2.0 y Microsoft Entra ID
Backend.NET 10, C#, ASP.NET Core
ArquitecturaClean Architecture, DDD, CQRS
Base de datosAurora PostgreSQL 17 con Entity Framework Core; DynamoDB para render data
InfraestructuraAWS Lambda, Aurora Serverless v2, S3, CloudFront
CI/CDGitHub Actions, AWS CDK