N NEOLA SAS · Desarrollo a medida
Caso de implementación

La operación de una distribuidora automotriz, reconstruida sobre una base que cuadra.

El cliente —una distribuidora automotriz de Quito— vende láminas y accesorios para vehículos. Su sistema anterior registraba las ventas, pero el inventario y la cartera ya no resistían el crecimiento. Construimos el nuevo sistema: una plataforma web propia que cubre el ciclo completo —de la proforma al despacho, del kárdex a la cobranza— y migramos catorce años de historia sin detener un solo día de venta.

PHP 8 · CodeIgniter 4 MySQL 8 Migración v1 → v2 Quito, Ecuador
portal-b2b.cliente.ec/dashboard
CLIENTE
Cabina de
operaciones
Dashboard
Proformas
Órdenes de salida
Despacho
Stock
Compras
Pagos y cobranzas
Conciliación del corte
Ventas del periodo68 % recuperado
Cobrado de estas ventasPendiente
Caja del periodo
$ ——
De este corte
$ ——
Cartera anterior
$ ——
Por despachar
12
Cifras ocultas por confidencialidad del cliente.
16
Módulos operativos
38
Entregas verificadas
440
Productos migrados
0
Interrupciones de servicio
El punto de partida

Migrar no era copiar datos: era entender por qué no cuadraban.

El sistema anterior seguía en producción y tenía años de historia que debían sobrevivir: productos, clientes, documentos, cheques y ajustes de inventario. Antes de mover un solo registro auditamos el origen. Ahí aparecieron tres fallas silenciosas que nadie había podido explicar.

Hallazgo 01

Los códigos de barras que nunca se guardaban

El personal escaneaba el código, imprimía la etiqueta —salía perfecta— y cerraba la ventana. El botón de cerrar invocaba una función que no existía en el código: la ventana quedaba trabada y la única salida era recargar, perdiendo el dato antes de guardarlo.

Resuelto. El campo avisa al cambiar, el navegador impide salir sin guardar y el botón de imprimir guarda primero. Imprimir sin registrar dejó de ser posible.
Hallazgo 02

Una plantilla que prometía más de lo que cargaba

La plantilla de importación masiva incluía la columna del código de barras, pero el importador no la contemplaba entre los campos que persistía. Cada carga la descartaba en silencio, sin error ni aviso.

Resuelto. El importador nuevo la registra, detecta duplicados dentro del archivo y contra lo existente, y muestra qué hará antes de escribir una sola fila.
Hallazgo 03

Cheques cobrados que seguían en cartera

Decenas de cheques migrados aparecían como pendientes por depositar pese a estar sellados desde hacía meses, inflando la cartera y distorsionando cualquier lectura de cobranza.

Resuelto. Depuración verificada contra el estado real, distinguiendo los cheques heredados de los registrados en la plataforma nueva.
Qué se construyó

Un módulo por cada punto donde la operación se detenía.

Cada pieza se entregó, se probó en producción y se corrigió con el equipo usándola. No hubo una entrega final: hubo treinta y ocho.

PF

Proformas

Cotización con vigencia, forma de pago referencial y confirmación previa a emitir que muestra cliente y vendedor antes de grabar.

OS

Órdenes de salida

Conversión desde proforma o venta directa, edición con bitácora hasta el despacho y anulación con aprobación de gerencia.

DE

Despacho

Cola de preparación con transportista, guía y ciudad de destino; hoja imprimible y días en cola a la vista.

ST

Stock y kárdex

Existencias consolidadas, ingresos y egresos operativos, orden por existencia y trazabilidad movimiento por movimiento.

AJ

Ajustes de inventario

Toma física declarando lo contado —cero incluido— o ajuste por diferencia, con contraasiento exacto al anular.

CO

Compras e importaciones

Carga del embarque desde archivo: crea las fichas que aún no existen e ingresa el stock en un solo paso.

PG

Pagos y cheques

Cobros aplicados a documentos, cheques con su ciclo de estados y cambio de forma de pago con candado cuando el cheque ya avanzó.

CA

Cartera

Saldos por cliente, antigüedad y conciliación entre lo vendido y lo efectivamente cobrado.

PR

Productos y etiquetas

Ficha con galería, códigos de barras y etiquetas térmicas con auditoría de cada impresión.

GE

Reportería gerencial

Resumen por vendedor hasta el detalle de producto, reposición, mínimos sugeridos por venta real e ingresos por origen.

AU

Auditoría

Bitácora transversal, auditoría de anulaciones y reversos separada de la lectura operativa.

WE

Tienda y portal B2B

Catálogo público y pedidos web que entran directo a la cola comercial del equipo.

Pantallas del sistema

El kárdex que se lee sin explicaciones.

Anular o editar una orden devuelve mercadería al stock. Contablemente es correcto, pero en pantalla parecía una compra que nunca ocurrió. Separamos las dos lecturas: quien opera ve el movimiento real; quien audita ve el libro completo. Ambas cuadran, cada una en sus términos.

productos/ver · movimientos reales
Movimientos realesLibro completo
FechaMovimientoDoc.Ent.Sal.Stock
17/08Salida por ordenOS-1530−157
17/08Salida por ordenOS-1546−1258
01/07Ajuste de inventarioAJ-0054+8370
hasta 01/07Saldo anterioracumulado
El tramo visible cierra con su saldo anterior: la columna se explica de abajo hacia arriba, sin cifras que aparezcan de la nada.
productos/ver · libro completo (auditoría)
Movimientos realesLibro completo
MovimientoDoc.Ent.Sal.
Salida por ordenOS-1334−10
Reversión por edición ediciónOS-1334+10
Salida por orden revertidaOS-1334−10
Compra localCD-0001+50
Las filas atenuadas se cancelan entre sí. El sistema empareja cada reversión con su salida original de forma automática.

Pruébelo aquí mismo

Un pedido mayorista que se arma —y se rastrea— en vivo.

Catálogo y precios de demostración. Sume productos y observe lo que el distribuidor ve en su portal: cada línea nace con su lote asignado y su recorrido interno hacia el despacho.

Portal de pedidos del distribuidor

Demo interactiva

Al superar los $500, el sistema aplica solo el descuento mayorista del 8%.

Lámina de seguridad 4 mil$148 · rollo 30 m
0
Lámina polarizada 20%$96 · rollo 30 m
0
Tinte cerámico 35%$124 · rollo 30 m
0
Kit de instalación$38 · unidad
0
Activador adhesivo$22 · galón
0
Espátula profesional$14 · unidad
0
La pieza que se toca

El generador de etiquetas, funcionando aquí mismo.

Los códigos del cliente mezclan letras, números y espacios, así que ningún simbolismo de retail servía: implementamos Code128 en PHP puro, sin librerías externas, y validamos su salida bit a bit contra una implementación de referencia. Escriba un código y vea la etiqueta que sale de la impresora térmica.

Mismo algoritmo que corre en producción: conmutación automática entre subconjuntos B y C, dígito verificador y zonas mudas del estándar.

BK-01 #06501S 50cm*60m
58 × 25 mm · térmica
Bajo el capó

Decisiones que sostienen el número que ve el gerente.

Kárdex transaccional

Cada movimiento bloquea la fila de stock y recalcula el saldo dentro de la misma transacción. Dos ventas simultáneas del último artículo no pueden dejar existencias en negativo.

Secuencias sin colisión

Los números de documento se asignan bajo bloqueo nombrado: nunca se repite ni se salta un correlativo, aunque dos usuarios graben en el mismo segundo.

Conteo físico con cero

En la toma de inventario se declara lo contado, no la diferencia. El sistema calcula el ajuste contra la existencia del momento, ya dentro de la transacción.

Conciliación por cohorte

La caja del periodo se separa de lo cobrado sobre las ventas del periodo. Dos preguntas distintas que antes se respondían con un solo número.

Auditoría transversal

Altas, ediciones, anulaciones, ajustes, bajas e impresiones de etiqueta quedan registradas con usuario, fecha, valores anteriores y motivo.

Pensado para el mostrador

Las tablas densas se reordenan como fichas en el celular, y las acciones frecuentes se resuelven con el pulgar.

Cómo trabajamos

Treinta y ocho entregas sobre un sistema que nunca dejó de vender.

Cada mejora siguió el mismo protocolo. No es burocracia: es lo que permite tocar a diario un sistema del que depende la facturación de la empresa.

Leer el código antes de escribirlo

Cada cambio parte del código real en producción, no de una suposición. Los puntos de anclaje se verifican uno por uno antes de tocar nada.

Validar fuera del servidor

Sintaxis, scripts y estructuras de base de datos se prueban en un entorno aparte. Los cambios de esquema se ejecutan dos veces para comprobar que son repetibles sin daño.

Entregar con huella verificable

Cada entrega viaja con un manifiesto de firmas digitales. Al desplegar, el servidor confirma que recibió exactamente lo que se envió.

Respaldar y poder volver atrás

Antes de sobrescribir, los archivos afectados quedan copiados en el servidor. Cualquier entrega se revierte en segundos si hace falta.

¿Tiene una operación que reconstruir?

Diseñamos y construimos sistemas corporativos sobre la misma tecnología que sostiene al ecosistema Neola: aplicaciones web, de escritorio e integraciones con sus plataformas actuales.

Conversemos su proyecto Ver nuestra tecnología
Proyecto desarrollado por NEOLA SAS · Quito, Ecuador. Las pantallas de esta página son reconstrucciones de la interfaz real; las cifras comerciales del cliente se omiten por confidencialidad.