Catálogo de productos / servicios en Mewayz
El complemento de Producto / Servicio es el catálogo de inventario compartido que usan la contabilidad, el CRM, el TPV, EcomStore y Reservas.
módulo original de Mewayz — sin Mewayz aguas arriba. Documentación redactada a partir del código fuente del paquete en
packages/mewayz/ProductService/.





Introducción
El Complemento de Producto / Servicio es el única fuente de verdad para cada artículo vendible en toda la plataforma Mewayz. En lugar de que cada módulo (Ventas, TPV, EcomStore, Reservas) mantenga su propia lista de productos, todos leen y escriben en un único catálogo compartido. Esto significa que cuando un operador crea un nuevo producto en Producto / Servicio, ese producto queda disponible de inmediato en todos los canales de venta, con recuentos de stock y reglas fiscales sincronizados.
El módulo cubre bienes físicos con seguimiento de existencias, servicios sin stock con precio por hora o por sesión, inventario multialmacén, categorías jerárquicas, reglas de impuestos por línea y unidades de medida.
Cómo habilitar este módulo
Para configurar el complemento de Producto / Servicio, puedes seguir este enlace: Configurar el complemento.
El complemento está restringido por PlanModuleCheck:ProductService. La mayoría de los planes orientados a ventas lo incluyen activado de forma predeterminada: POS, Account, EcomStore y Bookings dependen todos de que esté activo.
Artículos
Explorar artículos
- Ve a Producto y Servicio → Artículos en la barra lateral.
- La vista de lista muestra todos los elementos que el operador puede gestionar, con filtros para Nombre, Tipo (product or service), Categoría, y Estado activo.
- Cada fila muestra el SKU, el precio de venta, el precio de compra, el stock total actual en almacén y botones de acción rápida (ver, editar, eliminar).
Crear un nuevo elemento
- Haz clic en + Nuevo elemento en la parte superior derecha de la lista de artículos.
- El formulario tiene los siguientes campos:
- Nombre — Nombre visible que se muestra en los menús desplegables de toda la plataforma
- Tipo — Producto (con control de stock) o Servicio (sin stock)
- SKU — Unidad de mantenimiento de existencias opcional (única por inquilino)
- Categoría — Elige entre las categorías existentes o crea una nueva sobre la marcha
- Unit — Unidad de medida (unidad, kg, hora, m², etc.)
- Precio de venta — Precio predeterminado cuando este artículo aparece en una factura o pedido
- Precio de compra — Costo predeterminado al recibir existencias
- Impuestos — Selección múltiple de las tasas impositivas que se aplican a este artículo
- Imagen — Imagen de producto usada por EcomStore + POS
- Descripción — Descripción extensa; usada por las páginas de detalle de EcomStore
- Haz clic en Save para crear el elemento. Un evento (
CreateProductServiceItem) se despacha para que los listeners de otros módulos puedan reaccionar (p. ej., reindexar el índice de búsqueda).
Editar / Eliminar un elemento
- En la lista de elementos, haz clic en el botón de editar de la fila para abrir el mismo formulario con los datos del elemento ya cargados.
- Eliminar un elemento despacha
DestroyProductServiceItem. Si el artículo está referenciado por una factura, un pedido o una venta de TPV existente, la fila subyacente queda eliminado de forma temporal para que los registros históricos conserven sus datos intactos.
Gestión de existencias
- Ve a Producto y servicio → Stock en la barra lateral.
- La vista de stock agrupa los artículos por almacén para que un operador con varias ubicaciones físicas pueda ver las cantidades exactas en cada ubicación.
- Each row shows item, warehouse, current quantity, and last- movement date.
Añadir o Ajustar Stock
- Haz clic en Añadir stock para registrar un movimiento de stock.
- Selecciona el Artículo, el Almacén, el Cantidad (positivo para entradas, negativo para ajustes de salida), y un Nota.
- Cada movimiento queda registrado; el catálogo nunca se limita a "actualizar un número": cada cambio es auditable.
Categorías
- Ve a Producto y servicio → Categorías.
- Las categorías son planas o jerárquicas (padre → hijo). Cada categoría puede tener una etiqueta de color que se refleja en la lista de artículos y en las páginas de listado de EcomStore.
- Las operaciones de crear, editar y eliminar siguen el patrón CRUD estándar.
Impuestos
- Ve a Producto y servicio → Impuestos.
- Añade las tasas de impuestos que el negocio del operador necesita (p. ej., IVA 15%, impuesto sobre ventas 7,25%, etc.).
- Cada impuesto tiene un nombre, tarifa (porcentaje), y un valor opcional descripción.
- Los impuestos se asocian luego a los artículos mediante el selector múltiple del formulario del artículo.
Unidades
- Ve a Product & Service → Units.
- Las unidades son las etiquetas que se muestran en la línea del carrito o la factura: «unidad», «kg», «hora», «sesión», «m²», etc.
- Mewayz incluye un conjunto inicial; añade o renombra para que coincida con el vocabulario del sector del operador.
Comportamiento entre módulos
Otros módulos de Mewayz consumir el catálogo de Productos / Servicios:
- Cuenta módulo: las facturas de venta y las facturas de compra eligen las partidas de este catálogo.
- CRM / Ventas — Las líneas de pedido de los tratos y las propuestas hacen referencia a los artículos.
- TPV módulo: las ventas en el TPV obtienen la lista de productos directamente.
- EcomStore module — Storefront products are rendered from this catalog with category-based browse.
- Reservas module — Service catalog for bookable services.
- ApiDocsGenerator módulo — Documenta los endpoints públicos de la API para acceso programático (
/api/products, etc.).
Permisos
El paquete define permisos granulares:
manage-product-service-item— Gestión completacreate-product-service-item— Crear nuevos elementosmanage-any-product-service-item— Edita cualquier elemento del inquilinomanage-own-product-service-item— Editar solo los elementos creados por uno mismo
Asígnalos mediante Configuración → Roles y permisos.
Acceso a la API
El paquete también expone GET /api/product-service/items como un endpoint interno autenticado que otros módulos y el Generador de documentación de la API exponen como GET /api/products.
Notas del operador
- Los movimientos de stock son inmutables — para "revertir" un movimiento, registra un nuevo movimiento en sentido contrario en lugar de editar la fila original.
- Al eliminar artículos que tienen existencias disponibles, el sistema avisa antes de permitir la acción.
- Item images are stored under
storage/app/public/product-service/y servido a través destorageenlace simbólico. Después de subir una nueva imagen, se normaliza a un único nombre de archivo en la base de datos; la URL pública se calcula en el momento de la renderización.