Cómo funciona realmente «VenduSys
».
VenduSys No es un monolito ni un enjambre de microservicios. Se trata de un pequeño conjunto de servicios con nombre propio y contratos explícitos, que se encuentran detrás de una única API coherente y están implementados en la UE. Esta página es el mapa fiel a la realidad.
Case-to-Core™ es el eje central del aprendizaje a través del cual un ecosistema se vuelve cada vez más comprensible para sí mismo, y a través del cual las señales, las lagunas de conocimiento, las incertidumbres y las posibilidades suscitan continuamente nuevas preguntas.
De la
red al libro mayor.
Cada capa es un pequeño servicio con nombre propio y un contrato explícito. Puedes adoptar toda la stack o sustituir cualquier capa por una propia y conservar el resto.
Cuatro entidades.
Todo lo demás se deriva de ellas.
Ya describimos el modelo en otra entrada. A continuación te ofrecemos un resumen.
Fiesta
Personas, organizaciones, agentes. Compradores, vendedores, operadores, socios… todas ellas son proyecciones de un mismo registro. La identidad es un grafo, no un tipo.
Cosa
Cualquier cosa que se ofrezca o se posea. Productos, licencias, servicios, suscripciones, activos, tiempo. Las variantes y los paquetes se suman a todo ello.
Mover
Acontecimientos que modifican el valor o los derechos entre las partes. Los pedidos, las devoluciones, las renovaciones, las transferencias y las disputas son, todos ellos, movimientos que se gestionan mediante máquinas de estados.
Entrada
Partidas del libro mayor. El modelo está diseñado de tal forma que cada «Move» genera «Entries», a partir de las cuales se obtienen los informes y los saldos.
Todos los flujos
son observables.
Registros, autorizaciones, pagos, devoluciones, renovaciones… representados mediante código o gráficos visuales. Bifurcaciones, reintentos, reproducciones, auditorías. El estado se conserva; nada se hace «una vez y listo».
- EVT Evento de dominio
- CRON Programado
- API Llamada directa
- WHK Webhook externo
- CDC Modificación de la base de datos
- Generar gráficoPARSE
- Estado persistenteSTATE
- Pasos del proceso de envíoRUN
- Gestionar los reintentosRETRY
- Generar registro de auditoríaAUDIT
- DB Asientos contables
- PAY Pago / liquidación
- MSG Notificación
- EXT Llamada de conector
- EVT Evento posterior
Lo que hace falta para correr.
Los detalles aburridos: alojamiento web, residencia, RPO/RTO, observabilidad. Las cosas que importan cuando algo sale mal a las 2 de la madrugada de un domingo.
- Alojamiento web
- Vercel para el borde de la API · clústeres dedicados de la UE para servicios con estado (París)
- Almacenamiento
- Postgres (Supabase) con replicación lógica · Almacenamiento de objetos compatible con S3 · pgvector para representaciones vectoriales
- Replicación
- Multi-AZ dentro de una región · réplicas de lectura entre regiones · flujo de CDC al almacén de datos
- Conmutación por error
- RPO 0 · RTO 5 minutos para el libro mayor y la identidad · 15 minutos para el catálogo
- Observabilidad
- OpenTelemetry de forma predeterminada · trazas por inquilino · registro de auditoría estructurado · reproducción de flujos de trabajo
- Cifrado
- TLS 1.3 en tránsito · AES-256 en reposo · BYOK en Enterprise · Aislamiento de claves por inquilino
- Residencia
- UE por defecto · fijación de regiones en Scale/Enterprise · salidas de datos aptas para auditorías