Saltar al contenido
Volver al catálogo
MóduloVentasNuevo

Cancelación automática de pedidos

El pedido que el canal canceló deja de existir también en Odoo

Revisa sola los pedidos que el marketplace dio por cancelados y los cancela en Odoo con sus transferencias pendientes, liberando el inventario que tenían apartado. Sin mandarle un segundo correo al comprador.

Compatibilidad
Odoo 19Odoo 18Odoo 17

Cómo lo recibes

Todos nuestros desarrollos funcionan en los tres entornos de Odoo. Lo único que cambia es la forma de entregarlos.

Sin instalar nada

Odoo Online (SaaS)

No necesitas poder instalar módulos. Un consultor de Millora entra con un acceso temporal que tú autorizas y lo implementa con Odoo Studio. Cuando termina, revocas el acceso.

Lo instalas hoy

Odoo.sh o servidor propio

Recibes el módulo y la guía de instalación por correo en cuanto se confirma el pago. Lo instalas tú, o lo instalamos nosotros contigo.

Instalación · shell
# 1 · copia el módulo a tu addons_path
cp -r millora_cancelacion_automatica_de_pedidos /mnt/extra-addons/

# 2 · reinicia y actualiza la lista de apps
odoo-bin -u all -d tu_base --stop-after-init

# 3 · instala desde Apps
#     busca "Cancelación automática de pedidos"

Qué resuelve

El problema

Un pedido cancelado en el marketplace no se cancela solo en Odoo. Se queda vivo: apartando inventario que ya no se va a vender, contando en el reporte de ventas y esperando una entrega que nadie va a hacer.

Y no se cancelan uno por uno porque nadie los está viendo. Se descubren en el corte, cuando alguien nota que el disponible no cuadra o que hay transferencias pendientes de hace tres semanas.

En marketplace la cancelación no es un caso raro: es una tasa. Un porcentaje del volumen se cancela siempre, y a cierto volumen ese porcentaje deja de ser un pendiente y se vuelve trabajo diario de alguien.

Cómo funciona

Un proceso programado revisa los pedidos cuyo estatus en el canal quedó como cancelado —reconociendo las distintas formas en que cada marketplace escribe esa palabra— y los cancela en Odoo junto con sus transferencias pendientes. El inventario que tenían apartado vuelve a estar disponible en ese momento.

Sin mandarle correo al comprador. El marketplace ya le avisó; un segundo aviso saliendo de tu Odoo sólo confunde a quien ya sabe que su pedido se canceló.

Y antes de cancelar comprueba lo único que de verdad importa: que no haya salido mercancía. Un pedido con transferencia ya validada no se toca. Ése no es un problema de cancelación, es un problema de devolución — y son cosas distintas, con consecuencias distintas en el inventario.

Cuando el producto ya salió

Ese caso se resuelve con un alcance adicional, que es donde Full y Drop dejan de parecerse.

En Full, la mercancía está en el centro de distribución del marketplace y tu equipo no la toca. El retorno lo gestiona el canal, así que la devolución se genera y se aplica sola: Odoo nada más tiene que reflejar algo que ya ocurrió del otro lado.

En Drop, el paquete salió de tu almacén y el retorno entra a tu almacén. Ahí la devolución se crea en espera, y se queda pendiente hasta que alguien reciba el producto físicamente y la valide.

La diferencia no es un detalle de configuración. En fulfillment, automatizar la devolución es lo correcto porque no hay nada que verificar de tu lado. En dropshipping, automatizarla sería dar por bueno un inventario que todavía no llega — y eso descuadra el almacén con la mejor de las intenciones.

Qué no hace

No decide qué se cancela. Obedece al estatus que trae el canal. Si el marketplace marcó mal un pedido, el módulo lo cancela igual: es un ejecutor, no un criterio.

El alcance base no devuelve mercancía. Deja fuera los pedidos con entrega validada en lugar de tocarlos. La devolución automática —y el comportamiento distinto de Full y Drop— es un alcance que se cotiza aparte.

No repone ni recompra. Libera el inventario; qué hacer con él es otra decisión.

No dice por qué se canceló. Un pedido que el comprador arrepintió y uno que el canal tumbó por sobreventa se ven igual. Si esa distinción importa para el análisis, vive en otro reporte.

Depende de que el estatus del canal llegue a Odoo. Es lo que dispara todo: sin ese dato el proceso no tiene qué revisar.

Qué cambia

El inventario deja de estar apartado para pedidos que ya no existen. Que es un descuadre silencioso: no aparece como error en ningún lado, sólo hace que un producto se vea agotado cuando sí lo hay — y en marketplace verse agotado es dejar de vender.

Y nadie tiene que revisar una lista todos los días para que eso no pase.

Incluye

  • Revisa periódicamente los pedidos cuyo estatus en el canal quedó como cancelado, y los cancela en Odoo
  • Cancela también sus transferencias pendientes, devolviendo al disponible el inventario que estaba apartado
  • Reconoce las distintas maneras en que cada marketplace escribe el estatus de cancelado
  • No le manda correo de cancelación al comprador: el canal ya se lo avisó
  • Deja fuera los pedidos con entrega ya validada, que son un caso de devolución y no de cancelación
  • Corre solo, en el horario que se le defina, sin que nadie revise una lista
  • Procesa por lotes, para no cargar la base en cada corrida

Requisitos

  • Módulo de Ventas activo
  • Odoo Marketplugin, u otra integración que traiga a Odoo el estatus del pedido en el canal: es lo que dispara la cancelación
  • Definir qué valores de estatus del canal cuentan como cancelado
  • Definir cada cuánto corre la revisión
  • Para la devolución automática: tener identificado qué pedidos son Full y cuáles Drop, porque se comportan distinto