TunoCommerce

v2.0.0 — Lanzamiento inicial

Primera versión de TunoCommerce — Abril 2025

Fecha de lanzamiento: Abril 2025

Esta es la primera versión de TunoCommerce. Incluye todo el sistema base de la plataforma: catálogo completo, comercio B2B con cotizaciones, multi-storefront, multi-empresa y la plataforma base.


El módulo de catálogo permite gestionar un inventario rico y estructurado de productos.

Productos

  • CRUD completo de productos con soporte para nombre, slug, SKU, GTIN, descripción completa y corta, múltiples tipos de precio (base, costo, venta, retail sugerido, mayoreo), moneda configurable (ISO 4217), campos SEO (meta title, meta description) y flag de producto destacado.
  • Estados de ciclo de vida: draftactivearchived, con soft delete y restauración.
  • Variantes con opciones configurables (ej. Talla + Color) y precio independiente por variante.
  • Imágenes con soporte para múltiples imágenes por producto/variante, reordenamiento y texto alternativo.
  • Campos personalizados (custom fields) para datos específicos del negocio sin modificar el esquema.
  • Operaciones en masa: upsert masivo y cambio de estado en lote para sincronización con ERPs.
  • Duplicación de productos para acelerar la creación de catálogos similares.

Categorías

  • Jerarquía multinivel con materialized path para consultas eficientes de árbol completo.
  • Categoría primaria obligatoria y categorías secundarias ilimitadas por producto.
  • Reordenamiento de categorías dentro del mismo nivel.

Marcas

  • CRUD completo con logo, descripción y slug.
  • Control de visibilidad por empresa: las marcas pueden ser restringidas a subsidiarias o storefronts específicos.

Tags y Modificadores

  • Tags para clasificación flexible sin impacto en la estructura de categorías.
  • Modificadores contextuales (texto, dropdown, checkbox) para personalización de producto en el punto de venta.

Inventario

  • Lectura y ajuste de inventario por producto y variante.
  • Ajuste absoluto (sincronización con ERP) y relativo (registro de movimientos).

Módulo de Comercio

Clientes (Buyers)

  • CRUD completo de clientes con email único, estado (pending, active, suspended, inactive) y soporte multiidioma (es-MX, en-US).
  • Autenticación segura con flujo challenge-response (RSA-2048 + OAEP SHA-256) para proteger contraseñas en tránsito.
  • Tokens JWT de acceso (15 min) con refresh tokens rotativos (30 días) y soporte para hasta 10 sesiones simultáneas por cliente.
  • Sistema de roles y permisos independiente del staff administrativo, con 4 roles predefinidos (Admin, Aprobador, Comprador, Visor) y 11 permisos granulares en tres categorías: cotizaciones, direcciones y catálogo.

Cotizaciones (RFQ)

  • Flujo completo de solicitud de cotización con estados: draftsubmittedreviewedrespondedapproved / rejected / expired / cancelled.
  • Negociación bidireccional con múltiples rondas: el comprador propone precios/cantidades, el vendedor responde, con límite configurable de rondas por empresa.
  • Aprobación parcial: el comprador puede aceptar ítems seleccionados y rechazar otros.
  • Snapshot de producto por ítem al momento de creación (precio, SKU, variante, imagen).
  • Validación financiera de respuestas del vendedor: total = subtotal − descuento + envío + impuesto.
  • Numeración automática por empresa (QT-0001, QT-0002, ...).
  • Mensajes tipo hilo entre vendedor y comprador por cotización.
  • Expiración automática vía job en segundo plano (ExpireQuotesTask).
  • Límites configurables por empresa: días de expiración, máximo de rondas, máximo de reenvíos.

Direcciones

  • Direcciones de empresa con tipos de envío y facturación, flag de default automático.
  • Los compradores pueden ver y gestionar las direcciones de su empresa desde el portal.
  • Las cotizaciones pueden referenciar una dirección de envío.

Módulo de Tiendas (Storefronts)

  • Multi-storefront: cada empresa puede tener múltiples storefronts con configuración independiente (branding, moneda, impuesto, estado).
  • Estados de storefront: active, maintenance, coming_soon, disabled.
  • API pública de storefront (5 endpoints de solo lectura) con autenticación por token sf_* + slug:
    • Configuración y branding de la tienda
    • Listado paginado de productos con filtros por categoría y marca
    • Detalle de producto por slug o SKU
    • Árbol de categorías
    • Listado de marcas
  • Tokens de storefront (sf_*) con gestión desde el dashboard y la API.
  • Respuestas cacheadas con Cache-Control (60-300 segundos) para soportar frontends de alto tráfico.

Módulo de Empresas

  • Multi-tenencia con jerarquía de empresas usando materialized path (árbol de N niveles).
  • La empresa master puede gestionar subsidiarias y ejecutar operaciones en su nombre (?target_company_id=).
  • Configuración por empresa: moneda, idioma, métodos de autenticación, límites de cotización.
  • Direcciones de empresa (envío y facturación) con defaults automáticos.
  • Impersonación de usuarios en subsidiarias para soporte desde el dashboard master (con auditoría y notificaciones de seguridad).

Plataforma Base

Usuarios y Permisos (RBAC)

  • Gestión completa de usuarios del staff con invitación por email, activación con token HMAC y establecimiento de contraseña.
  • Sistema RBAC: Usuario → Rol → Permisos con permisos cacheados en Redis.
  • Formato de permiso: "dominio.acción" (ej. "products.create").
  • 2FA por email (OTP) configurable por empresa.
  • SSO con Google y Microsoft Entra ID, configurable por empresa.

Auditoría

  • Log de auditoría para todas las operaciones sensibles: creación, edición, eliminación, cambios de estado, autenticación, impersonación, tokens API.

Notificaciones

  • Sistema de notificaciones internas con polling, prioridades y tipos configurables.

Email

  • Envío de emails transaccionales (activación de cuenta, OTP, cotizaciones) con colas BullMQ para envíos asíncronos y envío inmediato para casos críticos (OTP).

Copiloto IA

  • Asistente de IA integrado en el dashboard para consultas sobre el catálogo y la plataforma, con historial de conversaciones y soporte para streaming.

Internacionalización

  • Soporte para es-MX y en-US con traducciones cacheadas en Redis.

API REST v1

  • API REST versionada completa bajo /api/v1/ con autenticación en tres niveles: API token (pk_*), JWT Bearer y cookie de sesión.
  • Documentación OpenAPI generada automáticamente.
  • Rate limiting por tipo de endpoint (general: 100 req/min, creación: 10 req/min).
  • Paginación estándar con parámetros page y pageSize.
  • Colección Postman disponible para descarga.

Notas para integradores

Esta versión es la base completa de la plataforma. Todos los módulos documentados están funcionales y disponibles. Las próximas versiones agregarán el módulo de Orders/Checkout para completar el ciclo de compra.

Revisa el Roadmap para ver lo que está planeado.

On this page