El caso: Marta pulsa Aceptar pedido y Odoo se detiene
Ejemplo Caso ilustrativo: la empresa y sus datos son inventados para explicar el flujo.
Distribuciones Norte, una empresa inventada para este ejemplo, ya tiene Mirakl Connector instalado. Marta trabaja allí con un usuario interno de Odoo. Abre Mirakl › Operaciones › Pedidos (Mirakl › Operations › Orders), entra en un pedido, pulsa Aceptar pedido (Accept Order) y recibe este aviso: Solo un Mirakl Manager puede aceptar, cancelar o reembolsar un pedido del marketplace. Estas acciones cambian el pedido en el marketplace y mueven dinero real.
Marta piensa que algo ha fallado en el pedido o en la conexión. Pero el aviso no habla de ninguno de los dos: habla de quién ha pulsado el botón.


Cuándo sale exactamente
El módulo comprueba, en el servidor, si el usuario que ha pulsado pertenece al grupo Mirakl Manager. Si no pertenece, lanza el aviso y la acción se detiene: sale el aviso en lugar de seguir adelante. Si pertenece, la comprobación se da por buena y la acción sigue su curso.
El aviso está en el código publicado de las cuatro versiones de Odoo que cubre el módulo: 17, 18, 19 y 20.
El propio código explica por qué la comprobación se hace en el servidor. Los botones que cambian algo en el marketplace (aceptar, cancelar, reembolsar) se limitan en las vistas por grupos, pero un atributo de vista no es una barrera de seguridad: cualquier usuario interno podría llamar al método por RPC, y el permiso de acceso da escritura sobre los pedidos de Mirakl a los usuarios internos. Por eso el grupo se vuelve a exigir en el servidor.
Botones con los que puede salir el aviso
Estos son dos botones de la ficha del pedido que llegan a la comprobación del grupo:
| Botón | Cuándo se ve | Qué pasa si no eres Mirakl Manager |
|---|---|---|
Aceptar pedido | Se oculta si Estado de aceptación (Acceptance State) indica que el pedido ya está aceptado o si el pedido no requiere aceptación (campo Requiere aceptación, Requires Acceptance) | Sale el aviso y la acción se detiene |
Cancelar en Mirakl (Cancel in Mirakl) | Se oculta cuando Estado (State) es el de cancelado; con los valores por defecto (pedido pendiente) se ve | Sale el aviso y la acción se detiene |
Ver el botón no quiere decir que la acción vaya a continuar: la comprobación del grupo se hace cuando lo pulsas. Si no ves uno de los botones, puede deberse a las condiciones de la tabla.
Cómo se resuelve, paso a paso
- Confirma que el aviso es este, con el texto entero:
Solo un Mirakl Manager puede aceptar, cancelar o reembolsar un pedido del marketplace. Estas acciones cambian el pedido en el marketplace y mueven dinero real. - Decide si esa acción te corresponde a ti. Según el propio aviso, aceptar, cancelar o reembolsar cambia el pedido en el marketplace y mueve dinero real.
- Si no te corresponde, pide a alguien del grupo
Mirakl Managerque abra el mismo pedido y pulse el botón. - Si te corresponde, pide a quien administre los usuarios de tu Odoo que te añada al grupo
Mirakl Manager. - Vuelve al pedido, pulsa de nuevo el botón y comprueba que el aviso ya no sale.

Dudas que se plantea quien ve el aviso
¿Es un fallo de la conexión con Mirakl?
El aviso habla del grupo del usuario: se lanza cuando el usuario que pulsa no pertenece a Mirakl Manager. No menciona la conexión ni datos del pedido.
¿Qué ocurre cuando sale?
La acción se detiene: sale el aviso en lugar de seguir adelante. Puede salir, por ejemplo, al pulsar Aceptar pedido o Cancelar en Mirakl.
¿Basta con que el botón esté oculto en la vista para proteger la acción?
Según explica el código, no: un atributo de vista no es una barrera de seguridad, y por eso el grupo se exige también en el servidor.
¿Pasa también en Odoo 17, 18 o 19?
El aviso está en el código publicado de 17, 18, 19 y 20.
Qué aprender del caso
- El aviso va de permisos, no de datos: antes de revisar el pedido, mira a qué grupo pertenece quien pulsa.
- Pertenecer a
Mirakl Manageres lo que cuenta. Ser usuario interno de Odoo, como Marta, no basta. - Decide con criterio quién entra en el grupo: las acciones que protege cambian el pedido en el marketplace y mueven dinero real.
- Que un botón se vea depende de las condiciones de la vista; que la acción siga adelante depende del grupo del usuario, que se comprueba en el servidor al pulsarlo.
Cómo te ayuda FlexigoTech
FlexigoTech implanta Odoo 17, 18, 19 y 20 y desarrolla conectores e integraciones a medida; si estás repartiendo permisos para el equipo que gestiona pedidos de marketplace, podemos revisarlo contigo. Mirakl Connector está publicado en Odoo Apps para 17, 18, 19 y 20, y necesita la suscripción a FlexigoTech Cloud (plan Conector: 49 € al mes o 490 € al año, sin IVA). Tienes la ficha en Odoo Apps y la página del módulo.
Sin la suscripción, o con el servicio suspendido, se para lo que da la suscripción; los datos se quedan en tu Odoo.
Sigue leyendo
Comprobado en el código del conector (versión 20.0) y en las fuentes enlazadas
Fuentes
- Código del módulo: flexigobe_mirakl_connector 20.0 (aa05e537): models/mirakl_order.py
- Código del módulo: flexigobe_mirakl_connector 20.0 (aa05e537): views/mirakl_order_views.xml
- apps.odoo.com/apps/modules/20.0/flexigobe_mirakl_connector
- flexigotech.com/en/services.html
- flexigotech.com/precios.html
