E-CommerceEn desarrollo

RSJ

El problema de una refaccionaria en línea no está en tener producto, está en que el cliente no habla el idioma del catálogo. Nosotros construimos RSJ para Refaccionaria San José invirtiendo esa relación: el cliente elige su vehículo (marca, modelo, año) y nuestro sistema le muestra todo lo que le queda, con precio y stock en tiempo real. Para lograrlo levantamos una arquitectura headless de tres piezas —un storefront en Next.js con 68 rutas y 174 componentes, un backend MedusaJS con un módulo custom de catálogo de 6 tablas, 22 endpoints y 4 jobs de sincronización, y un CMS PayloadCMS para que marketing edite el sitio sin tocar código— e integramos a fondo las dos APIs del mayorista (catálogo y compatibilidad vehicular) con autenticación OAuth resiliente, mutex anti-concurrencia, reintentos con backoff y caché. La prueba está en la escala: un catálogo objetivo de 40,000+ productos y 120,000+ aplicaciones vehiculares, ~36,687 productos ya estandarizados por un pipeline ETL de 22 scripts, checkout con Stripe, 4 sucursales con mapas, y todo desplegado en staging con CI/CD por entornos.

Categoría

E-Commerce

Stack

Next.js, TypeScript, PostgreSQL

Status

En desarrollo

El problema

Comprar autopartes en línea en México obliga al cliente a saber el nombre o código exacto de la pieza que necesita: balata, retén, banda, número de catálogo. Quien no es mecánico se rinde y termina llamando por teléfono o yendo al mostrador. Para una refaccionaria con cuatro sucursales y un inventario de decenas de miles de SKUs distribuido por el mayorista, eso es venta perdida todos los días y un catálogo enorme que nadie puede navegar.

Lo que construimos

  • Búsqueda por vehículo (la función estrella): dropdowns en cascada marca → modelo → año que devuelven todas las refacciones compatibles, con filtros por categoría, sistema, marca y disponibilidad, ordenamiento por precio/nombre y paginación del lado del servidor.
  • Módulo custom de catálogo en MedusaJS que integra las dos APIs del mayorista: catálogo (precios, existencias e imágenes) y compatibilidad vehicular (marca/modelo/motor/año).
  • Cliente de compatibilidad con autenticación OAuth, token TTL de 55 min con mutex anti-logins concurrentes, retry con backoff exponencial e invalidación automática de token en error 401.
  • Modelo de datos de 6 tablas (producto, marca, modelo de auto, producto-vehículo, aplicación de producto, log de sincronización) con índices y llaves únicas de compatibilidad.
  • 4 jobs de sincronización: catálogo, aplicaciones vehiculares, vehículos e imágenes, alimentando una capa de búsqueda con caché en memoria (TTL 1 hora).
  • API completa del módulo: 12 endpoints de tienda y 10 de admin para makes/modelos/años, búsqueda por vehículo, filtros dinámicos, detalle de producto y control de sincronización.
  • Páginas de categoría automotriz dedicadas (frenos, motor, eléctrico, suspensión, lubricantes, filtros, carrocería) y detalle de producto con galería, precio, stock y tabla de compatibilidad.
  • Sucursales con mapas interactivos MapLibre: 4 ubicaciones en la zona metropolitana de Guadalajara con horarios, click-to-call y WhatsApp directo.
  • Checkout completo con Stripe Elements, cuentas de usuario (perfil, libro de direcciones, historial de órdenes) y transferencia de órdenes entre usuarios vía token compartido.
  • PayloadCMS construido completo: 7 colecciones, 2 globals y 7 bloques de contenido (Hero, productos destacados, banners, rich text, grids, carrusel, CTA) para administrar el sitio sin tocar código.
  • Pipeline ETL de ~22 scripts para descargar, deduplicar, normalizar y transformar el catálogo del proveedor al formato de importación de Medusa.
  • CI/CD por entornos (develop=build, staging=deploy staging, main=deploy prod) con detección selectiva de cambios por componente, secrets gestionados y deploy de 3 contenedores.

Resultados

Catálogo objetivo: 40,000+ productos y 120,000+ aplicaciones de compatibilidad vehicular desde el mayorista

Backend: módulo de catálogo con 6 tablas, 22 endpoints API (12 tienda + 10 admin) y 4 jobs de sincronización

Storefront: 68 rutas y 174 componentes en 23 módulos

CMS: 7 colecciones, 2 globals y 7 bloques de contenido

ETL: ~22 scripts de pipeline para normalizar el catálogo del proveedor

4 sucursales físicas con mapas interactivos

Desplegado en staging (preview.refaccionariasanjose.com) desde 2026-02-02; ~36,687 productos del proveedor ya estandarizados para poblar el catálogo

Stack técnico

Next.jsTypeScriptPostgreSQLE-commerce + CMS

Necesitas algo similar

Escríbenos
RSJ — Creative Services Studio