Migración de .NET a Laravel multitenant

IBM Racing Sport S.R.L. · Modernización progresiva de un sistema de negocio

Fecha2025Lectura13 min de lecturaEtiquetas

Tecnologías

IBM Racing Sport utilizaba un sistema empresarial desarrollado en .NET y distribuido como aplicación de escritorio. Cada cliente debía instalar el ejecutable localmente, seleccionar la empresa con la que trabajaría e ingresar sus credenciales para acceder.

Mi trabajo consistió en modernizar progresivamente esta solución y trasladar sus procesos hacia una plataforma web desarrollada con Laravel, manteniendo PostgreSQL y adoptando una arquitectura multitenant. No se trató de copiar pantallas: fue necesario reorganizar responsabilidades, accesos, datos y módulos para operar múltiples empresas desde una plataforma centralizada.

Las capturas de este caso de estudio corresponden a interfaces y entornos utilizados durante la evolución web —algunos conservan nombres visuales como Origints o Preadmin—. Se presentan para documentar el resultado técnico y no como capturas de la aplicación .NET original.

Situación inicial

El acceso al sistema anterior comenzaba desde la aplicación instalada. El usuario seleccionaba una empresa y después introducía su usuario y contraseña. Este flujo vinculaba el contexto empresarial con el inicio de sesión y dificultaba el acceso desde otros dispositivos, la distribución de nuevas versiones y la administración centralizada.

100%
Arrastra para desplazarte · usa la rueda para ampliar

Captura pendiente — aplicación anterior en .NET
Aquí se añadirá una imagen del sistema original para mostrar claramente el punto de partida de la migración.

Objetivo de la modernización

El objetivo fue convertir el sistema heredado en una plataforma web capaz de atender múltiples clientes y empresas sin depender de instalaciones locales.

La modernización debía:

  • conservar PostgreSQL y la información existente;
  • trasladar los módulos de manera progresiva;
  • separar la administración global, el cliente y la operación de cada empresa;
  • identificar el contexto empresarial mediante tenants;
  • centralizar planes, módulos, pagos, temas y soporte;
  • permitir el acceso desde navegador;
  • reducir el riesgo evitando una reescritura masiva.

Nueva experiencia web

La nueva solución incorporó una entrada web pública y un acceso centralizado. Desde allí, cada usuario puede dirigirse al entorno que le corresponde según su cuenta, empresa y permisos.

Página principal de la nueva plataforma

La portada representa el cambio más visible: el producto dejó de depender de un ejecutable instalado y pasó a formar parte de un ecosistema accesible desde navegador.

Arquitectura multitenant

Laravel se utilizó como base de la nueva aplicación y PostgreSQL continuó como motor de datos. La arquitectura separa el núcleo SaaS, la administración global, el panel del cliente y el entorno operativo de cada empresa.

El siguiente diagrama interactivo reúne los actores, responsabilidades y flujos principales. Puede ampliarse, ajustarse a la pantalla y desplazarse para inspeccionar sus diferentes áreas.

100%
Arrastra para desplazarte · usa la rueda para ampliar

La separación establece tres contextos principales:

  • Administración global: gestiona la plataforma, clientes, empresas, planes, módulos, pagos, incidencias y configuración.
  • Cliente SaaS: administra sus empresas, suscripciones y accesos.
  • Empresa o tenant: opera productos, personas, ventas, inventario, usuarios, soporte y su experiencia comercial.

Administración global

El panel global concentra las tareas que antes estaban distribuidas o acopladas a la aplicación. Desde este entorno se obtiene una visión general del servicio y se administran los recursos compartidos.

Dashboard de administración global

Empresas, planes y módulos

Las empresas se registran y administran desde un único lugar. Los planes definen capacidades y límites, mientras que los módulos permiten controlar qué funcionalidades están disponibles para cada tenant.

1 / 3
Gestión centralizada de empresas

Pagos y trazabilidad

La administración global también reúne pagos, registros y eventos operativos. Esta trazabilidad facilita el soporte y permite revisar lo ocurrido sin ingresar directamente al entorno de cada empresa.

Administración de pagos
Registros operativos de la plataforma

Panel del cliente

El cliente dispone de un espacio independiente para gestionar su relación con la plataforma. Desde este panel consulta sus empresas, revisa el plan contratado, administra la suscripción y accede al tenant correspondiente.

1 / 3
Resumen general del cliente

Esta separación evita que las funciones comerciales de la plataforma se mezclen con la operación diaria del ERP.

ERP de cada empresa

Cada empresa trabaja dentro de su propio contexto. El tenant reúne las funciones operativas y mantiene aislada la información que corresponde a esa organización.

Dashboard operativo del tenant

Productos y personas

El ERP permite administrar el catálogo, los precios y las personas relacionadas con la empresa.

Gestión de productos del tenant
Gestión de personas del tenant

Usuarios, ventas y soporte

Los usuarios y permisos pertenecen al contexto de la empresa. Las ventas, incidencias y solicitudes de soporte se gestionan sin mezclar información entre tenants.

1 / 3
Usuarios de la empresa

Personalización y tienda

La solución incorpora temas y un editor visual para adaptar la experiencia pública de cada empresa. El administrador puede modificar contenido y presentación sin intervenir directamente en el código fuente.

Editor visual de temas y contenido

La tienda utiliza la configuración, el tema y las funcionalidades habilitadas para el tenant. Así, la experiencia pública y el ERP pertenecen al mismo ecosistema, pero mantienen responsabilidades diferentes.

Estrategia de migración

La transición se realizó por etapas. Cada módulo del sistema heredado fue inventariado y clasificado antes de trasladarlo.

100%
Arrastra para desplazarte · usa la rueda para ampliar

Mantener PostgreSQL evitó sumar un cambio innecesario de motor. El esfuerzo pudo concentrarse en adaptar consultas, relaciones y reglas de negocio al nuevo contexto multitenant.

Decisiones técnicas principales

  • Migración progresiva: permitió validar cada módulo antes de continuar.
  • Laravel: proporcionó una base web para reorganizar autenticación, permisos y procesos.
  • PostgreSQL: conservó la continuidad de los datos existentes.
  • Multitenancy: aisló la operación de cada empresa dentro de una plataforma compartida.
  • Planes y módulos: desacoplaron las capacidades disponibles para cada cliente.
  • Temas y editor visual: permitieron personalizar la experiencia sin modificar el núcleo.
  • Administración centralizada: reunió pagos, logs, soporte y configuración.

Antes y después

AspectoSistema anteriorNueva plataforma
AplicaciónEscritorio en .NETAplicación web en Laravel
AccesoInstalación localNavegador
EmpresaSelección durante el inicio de sesiónContexto de tenant
AdministraciónIntegrada en el sistema heredadoPanel global independiente
ClientesSin panel separadoPanel de cliente
Operación empresarialContexto compartido por la aplicaciónERP aislado por tenant
Base de datosPostgreSQLPostgreSQL
ActualizacionesDistribución de ejecutablesDespliegue centralizado
FuncionalidadesIntegradas directamenteOrganizadas mediante módulos y planes
PersonalizaciónLimitadaTemas y editor visual

Resultado

La modernización convirtió una aplicación empresarial instalada localmente en una plataforma web multitenant con responsabilidades claramente separadas.

El nuevo modelo permite:

  • administrar múltiples clientes y empresas desde un núcleo común;
  • operar un ERP independiente para cada tenant;
  • centralizar planes, módulos, pagos, soporte y trazabilidad;
  • personalizar la experiencia de cada empresa;
  • continuar migrando funcionalidades sin interrumpir toda la operación;
  • acceder al sistema desde distintos dispositivos mediante navegador.

La decisión de migrar progresivamente permitió conservar el conocimiento acumulado en el sistema anterior y reducir el riesgo técnico. El resultado es una base más flexible para evolucionar el producto, incorporar módulos y atender nuevas empresas.

Los detalles comerciales, credenciales, datos reales de clientes y lógica interna no publicada han sido omitidos de este caso de estudio.

Contenido relacionado

Trabajemos juntos

Diseño plataformas escalables y optimizo infraestructura para que tu equipo avance con mayor rapidez, seguridad y claridad.

Iniciar una conversación

© 2026 Ronald Ramos. Todos los derechos reservados.

PrivacidadCookies