Mosce ERP · Centro de ayuda
Administración

Usuarios, roles y permisos

Invita personas a tu tenant, asigna roles y entiende cómo se componen los permisos en Mosce ERP.

Mosce ERP combina tres conceptos: usuarios (las personas), roles (paquetes de permisos) y permisos individuales (módulo:acción). Esta guía explica cómo invitar, qué rol darle a cada quien y cómo armar roles a medida.

Tiempo de lectura: ~8 min

Cuándo usar esto

  • Vas a sumar a alguien al tenant (vendedor, cajero, contador, socio).
  • Necesitas que un usuario pueda hacer una acción puntual y no sabes qué permiso activarle.
  • Quieres crear un rol personalizado que no calza con los roles del sistema.
  • Tienes que dar de baja a alguien que ya no trabaja contigo.

Antes de empezar

  • Necesitas alguno de estos permisos según la acción:
    • users:invite para invitar.
    • users:update para activar/desactivar.
    • users:assign-role para cambiar el rol de membresía (ADMIN/MEMBER).
    • roles:manage para crear, editar o borrar roles personalizados.
  • El proveedor de email del tenant tiene que estar configurado, porque la invitación se envía por correo. Si no lo está, verás un toast de Integración no configurada; ve a Ajustes › Integraciones primero.

Conceptos clave

Usuarios

Una persona con cuenta en Mosce ERP que pertenece a tu tenant a través de una membresía. Cada membresía tiene:

  • Un rol de membresía a nivel tenant: OWNER, ADMIN o MEMBER.
  • Cero o más roles (los que aparecen en Ajustes › Roles) que aportan permisos finos.
  • Un estado activo / inactivo. Inactivo = no puede iniciar sesión, pero la cuenta y su historial se conservan.

OWNER salta todas las verificaciones de permiso (acceso total a tu cuenta, sin importar qué permisos tenga su rol). ADMIN no hace bypass: simplemente tiene casi todos los permisos asignados por defecto en su plantilla de rol - la asignación es explícita, así que si quitas un permiso del rol de Administrador, ese usuario deja de tenerlo. MEMBER solo puede hacer lo que sus roles le permiten.

Roles

Un rol es un paquete con nombre. Hay dos tipos:

  • Roles del sistema - se crean automáticamente cuando se provisiona el tenant. No se pueden editar ni borrar; los reconoces por la etiqueta Sistema.
  • Roles personalizados - los creas tú. Puedes editarlos y borrarlos. Si un rol personalizado tiene usuarios asignados, no puedes eliminarlo: primero quítalo de esos usuarios.

Roles del sistema

RolSlugDescripción
PropietarioownerAcceso total al sistema. Solo puede existir un propietario por organización.
AdministradoradminAcceso completo a todas las operaciones del negocio y configuración.
GerentemanagerPuede gestionar ventas, inventario, compras y ver reportes avanzados.
VendedorsellerPuede crear y gestionar facturas, cotizaciones y clientes.
CajerocashierOpera el punto de venta y gestiona sesiones de caja.
VisualizadorviewerSolo puede ver información, sin capacidad de crear, editar o eliminar.

Propietario funciona con bypass total (no necesita permisos asignados). Administrador trae todos los permisos relevantes por defecto en su plantilla, así que en la práctica puede hacer todo - pero la asignación es explícita y puedes auditarla en Ajustes › Roles. El resto de los roles trae un set base más acotado, también auditable en la misma pantalla.

Permisos

Un permiso es una capacidad atómica con formato recurso:acción. Por ejemplo:

  • invoices:create - crear facturas.
  • inventory:adjust - hacer ajustes de inventario.
  • fiscal:read / fiscal:manage - ver o gestionar el módulo fiscal.
  • roles:manage, users:invite, modules:manage - administración del tenant.

El catálogo completo está agrupado por recurso (facturas, productos, inventario, contabilidad, fiscal, reportes, etc.) y se ve dentro del formulario de un rol personalizado.

Permisos de compras - granulares por acción

El módulo de compras separa cada acción en su propio permiso, para que puedas, por ejemplo, dejar que un almacenista reciba mercancía sin poder enviar órdenes al proveedor, o que un comprador cree y envíe órdenes pero no las cancele.

PermisoQué permite
purchases:readVer las órdenes de compra y sus recepciones.
purchases:createCrear y editar órdenes de compra en borrador.
purchases:sendEnviar la orden al proveedor por correo (y reenviarla).
purchases:receiveRecibir mercancía (recepciones parciales o totales).
purchases:cancelCancelar una orden y anular una recepción ya registrada.
purchases:exportExportar el listado de compras a CSV.

El permiso purchases:manage se mantiene como permiso heredado para no romper roles antiguos que lo tuvieran: agrupa la capacidad de enviar y cancelar. Los roles nuevos deben usar los permisos granulares (purchases:send, purchases:cancel). El rol Gerente ya incluye los nuevos permisos, así que los gerentes existentes conservan su capacidad sin cambios.

Ver el flujo completo en Compras.

Permisos fiscales avanzados - contingencia y reemplazos

Los siguientes permisos son relevantes si tienes usuarios con rol MEMBER que necesitan gestionar episodios de contingencia o emitir e-CFs de reemplazo. OWNER y ADMIN los tienen por defecto.

PermisoQué permite
fiscal:contingency:declareDeclarar la entrada y salida de un episodio de contingencia en Mosce ERP y registrar el ID de la declaración de la Oficina Virtual de DGII - incluyendo el registro retroactivo cuando el episodio fue detectado automáticamente.
fiscal:past-sla:decideTomar decisiones en la pantalla de revisión de comprobantes que cruzaron el plazo de 72 horas: mantener reintentos o iniciar la cancelación y reemplazo. Permiso de alta confianza; no viene en roles por defecto.
fiscal:replacement:createEmitir un e-CF de reemplazo (Código 4 DGII) por un comprobante en papel Serie B emitido durante una contingencia.
fiscal:replacement:override-windowAceptar la emisión de un reemplazo cuando el comprobante en papel cae fuera de la ventana regulada de 30 días. Permiso de alta confianza; no viene en roles por defecto.

Para crear un rol de contador externo con acceso a contingencia y reemplazos, por ejemplo, activarías fiscal:read, fiscal:contingency:declare y fiscal:replacement:create. Reservá fiscal:past-sla:decide y fiscal:replacement:override-window para quienes tengan la autoridad fiscal para esas decisiones.

Permisos del panel de control

Los siguientes permisos controlan qué secciones del panel de control principal puede ver cada usuario. Los encontrarás en el formulario de cualquier rol personalizado, igual que el resto del catálogo.

Cada permiso desbloquea exactamente una sección: si el usuario no tiene el permiso, esa sección no aparece en su panel y no genera ninguna solicitud al servidor (no es solo ocultarla visualmente). El panel incluye además un selector de período con cuatro opciones - mes en curso (default), mes pasado, trimestre o año - que aplica a todas las secciones que el usuario tenga autorizadas.

Por defecto, Propietario y Administrador ya los tienen (el primero por acceso total, el segundo porque vienen incluidos en su configuración por defecto). Los roles operativos (Gerente, Vendedor, Cajero, Visualizador) no los traen de fábrica: el administrador de tu cuenta los asigna desde Ajustes › Roles según quién necesite ver cada sección.

PermisoQué sección desbloquea
dashboard:salesVentas - total facturado, utilidad bruta, producto más vendido y gráfico de ventas brutas / descuentos / netas.
dashboard:receivablesCuentas por Cobrar - AR abierto, facturas pendientes y vencidas, gráfico de facturado / cobrado / saldo.
dashboard:payablesCuentas por Pagar - facturas de proveedor pendientes (conteo y monto), órdenes de compra pendientes de recibir, gráfico de facturado por proveedor / pagado.
dashboard:operationsOperación y Caja - sesiones de caja abiertas, órdenes de punto de venta pendientes, cotizaciones abiertas, gráfico de entradas y salidas de caja.
dashboard:inventoryInventario - productos con stock bajo (solo KPIs, sin gráfico).

Permisos del registro de auditoría

Los siguientes permisos controlan el acceso al visor del registro de auditoría. Están disponibles solo en el plan Inicial o superior; en el plan gratuito el visor no se muestra aunque el usuario tenga el permiso asignado.

Propietario tiene acceso total por diseño. Administrador tiene audit:read incluido en su configuración por defecto. El resto de los roles no los trae de fábrica.

PermisoQué permite
audit:readVer el registro de auditoría de la cuenta y filtrarlo por usuario, fecha, recurso o acción. Pre-asignado al rol Administrador.
audit:exportDescargar el registro filtrado en CSV. No viene pre-asignado a ningún rol - concédelo explícitamente al rol que lo requiera (típicamente un contador externo o auditor).

Consulta Registro de auditoría para entender qué contiene el registro y cómo usarlo.

Paso a paso: invitar a un usuario

  1. Ve a Ajustes › Usuarios y pulsa Invitar usuario.
  2. Completa:
    • Email del invitado.
    • Rol (uno de los del sistema o uno personalizado) - esto le aporta los permisos finos.
    • Rol de membresía: ADMIN (acceso total) o MEMBER (solo lo que el rol permite).
  3. Pulsa Enviar. La persona recibe un correo con un enlace para aceptar la invitación y crear su contraseña.
  4. Al aceptar, aparece en la tabla de usuarios como activa.

Paso a paso: cambiar el rol de membresía o desactivar

En la tabla de Ajustes › Usuarios, en la columna Acciones de cada fila tienes:

  • Cambiar rol - abre un diálogo para alternar entre ADMIN y MEMBER.
  • Desactivar / Activar - bloquea o restaura el acceso.

No puedes editarte a ti mismo (verás un marcador en lugar de los botones), y no puedes desactivar al último propietario del tenant: la API responde con el error Último propietario protegido.

Paso a paso: crear un rol personalizado

  1. Ve a Ajustes › Roles y pulsa Nuevo rol.
  2. Pon un nombre (por ejemplo Contador externo) y opcionalmente una descripción.
  3. Marca los permisos en la matriz, agrupada por recurso. Cada permiso muestra su slug y, cuando aplica, una descripción corta.
  4. Guarda. El rol aparece en la sección Roles personalizados y ya está disponible en la pantalla de invitación y en Cambiar rol.

Para ajustar permisos después, abre el rol con el icono de lápiz y vuelve a guardar. Para eliminarlo, usa el icono de papelera (no funciona si tiene usuarios asignados).

Resultado esperado

  • El invitado recibe un correo y, tras aceptarlo, puede iniciar sesión y ver solo lo que su rol permite.
  • En la tabla Usuarios, los miembros activos tienen un punto verde y los inactivos uno gris.
  • Los roles personalizados conviven con los del sistema. Un usuario puede tener varios roles a la vez: sus permisos efectivos son la unión de todos.

Errores comunes

  • No llega el correo de invitación. Revisa que el proveedor de email del tenant esté configurado en Ajustes › Integraciones y que el destinatario revise spam.
  • No puedo desactivar al propietario. Es por diseño: tiene que existir al menos un propietario activo. Promueve a otra persona a propietario primero.
  • Borré un permiso del rol y el usuario sigue accediendo. Si tiene asignados otros roles que también incluyen ese permiso, el efecto es la unión. Revisa todos los roles del usuario.
  • Activé un permiso pero el usuario ve "Permiso insuficiente". Pídele que cierre sesión y vuelva a entrar; los permisos viajan en el JWT y se refrescan al iniciar sesión.
  • Borré un rol y dejó usuarios sin permisos. Solo se permite borrar roles personalizados sin usuarios asignados; si llegaste a este estado, vuelve a crear el rol y asignarlo, o asigna otro distinto a esos usuarios.

Relacionados

  • Panel de control - descripción de cada sección del panel y cómo interpretar las métricas.
  • Módulos - qué módulos están encendidos y, por tanto, qué permisos tienen efecto real.
  • Facturación y suscripción - el plan condiciona el número máximo de usuarios.
  • Ajustes generales - datos del tenant que ven todos los usuarios.
  • Compras - dónde aplican los permisos purchases:*.