Antes de empezar
- Esto es para los pedidos que preparas tú (FBM). Una devolución FBA la recibe Amazon en su almacén: el módulo no crea ningún movimiento local para ella y la cantidad se cuadra con la sincronización del inventario FBA.
- Las devoluciones tienen que estar entrando en Odoo. La tarea «Amazon SP-API - Sync returns» las trae cada 3 horas a Amazon › Returns & Cases › Returns.
- El pedido tiene que tener su albarán de salida entregado en Odoo. Sin una entrega validada no hay nada sobre lo que hacer la devolución.

Paso a paso
- Abre Amazon › Configuration › Accounts y entra en la cuenta de Amazon que quieres configurar.
- Ve a la pestaña «Returns & Reviews» y busca el grupo «Return Stock Automation».
- Comprueba que «Returns: auto-receive to stock» está marcada.
- Decide cuándo se considera cerrada una devolución. De serie, «Returns stock: require refund amount» está marcada (solo entra lo que Amazon ya ha reembolsado), «Returns stock: allow pending-action returns» está desmarcada (lo que tiene una acción pendiente espera) y «Returns stock: require return delivery date» está desmarcada.
- Deja marcada «Returns stock: strict SKU matching» si el SKU que usas en Amazon es la referencia del producto en Odoo. Así nunca entra en el almacén un producto distinto del que se vendió.
- Si quieres el abono preparado, marca en el grupo «Credit Notes (opt-in)» la casilla «Auto-create credit notes (opt-in)»: crea el abono en borrador y viene desmarcada.
- Pulsa «Run Return Stock Automation» para hacer la primera pasada sin esperar a la tarea programada.

Qué mira Odoo antes de tocar el stock
La tarea «Amazon SP-API - Auto receive returns to stock» pasa cada 15 minutos por las devoluciones de la cuenta que aún no están en Done. Empieza por las más recientes y revisa hasta 300 por pasada si no has cambiado ese máximo. El resumen de cada pasada queda en la propia cuenta.
Una devolución se queda fuera, con el motivo escrito en la línea, cuando pasa algo de esto:
| Situación | Nota en la línea |
|---|---|
| La cantidad devuelta es cero | Return quantity is zero. |
| Amazon marca una acción pendiente y no las admites | Pending action still required. |
| Exiges reembolso y Amazon aún no ha reembolsado | Refund amount is required before stock return. |
| No hay estado de cierre, ni reembolso, ni fecha de entrega | Return does not look finalized yet. |
| Alguien la marcó para no reponer | Return marked as do not restock. |
Esas líneas quedan en Skipped y la tarea las vuelve a mirar en su siguiente pasada: en cuanto una cumple las condiciones, entra sola.
Si no encuentra el pedido o la entrega
Con la devolución lista, el módulo busca el pedido de venta y su albarán de salida entregado, prepara la devolución con el asistente de devoluciones de Odoo y la valida. La línea pasa a Done con la nota Stock return processed in picking %s., donde va el nombre del albarán nuevo.
Cuando no casa algo, la nota lo dice: Sale order not found for Amazon order %s., No sale lines mapped for return reference %(ref)s in order %(order)s. o No delivered outgoing picking found for %s.. En la pasada automática la línea se queda en Skipped; si la lanzas tú, en Error. Pasa, por ejemplo, cuando el SKU devuelto no es el vendido y tienes marcada la coincidencia estricta. Se arregla así:
- Abre la línea en Amazon › Returns & Cases › Returns.
- Rellena el origen en «Source Sale Order», «Source Sale Line» o «Source Delivery Picking». La vinculación automática no pisa esos campos si ya tienen valor.
- Pulsa «Receive to Stock Now». Procesa esa línea al momento, sin esperar a que la devolución parezca cerrada. El botón no aparece en devoluciones FBA, en las marcadas como Do not restock ni en las que ya están hechas.

Las que no deben volver al almacén
Un artículo roto o incompleto no debería sumar stock vendible. Antes de que la tarea lo recoja, cambia en la línea «Stock Link Mode» a Do not restock: la devolución queda en Skipped con su nota y no se mueve nada. Para encontrarlas luego, la lista tiene los filtros «Do Not Restock» y «Manual Stock Review».
Cada línea lleva su estado de stock: Pending mientras espera, Done cuando ya entró, Skipped si se apartó y Error si falló al lanzarla a mano.
¿Y el abono al cliente?
El reembolso al comprador lo hace Amazon. En Odoo, el botón «Create Credit Note Draft» de cada línea prepara el abono en borrador, y «Refresh Amazon Refund» vuelve a consultar en Amazon el estado del reembolso. Si marcaste «Auto-create credit notes (opt-in)», el abono en borrador se crea solo.
¿Funciona igual en todas las versiones?
Sí. Estos ajustes, tareas y mensajes están en el módulo publicado para Odoo 17, 18, 19 y 20.
Sigue leyendo
Comprobado en el código del conector (versión 17.0, 18.0, 19.0 y 20.0) y en las fuentes enlazadas
Fuentes
- Código del módulo: flexigobe_amazon_seller_connector · 17.0 9a6d49f · 18.0 aecae86 · 19.0 fa9ae73 · 20.0 be50529: views/amazon_spapi_account_views.xml
- Código del módulo: flexigobe_amazon_seller_connector · 17.0 9a6d49f · 18.0 aecae86 · 19.0 fa9ae73 · 20.0 be50529: models/amazon_spapi_account.py
- Código del módulo: flexigobe_amazon_seller_connector · 17.0 9a6d49f · 18.0 aecae86 · 19.0 fa9ae73 · 20.0 be50529: data/ir_cron_data.xml
- Código del módulo: flexigobe_amazon_seller_connector · 17.0 9a6d49f · 18.0 aecae86 · 19.0 fa9ae73 · 20.0 be50529: models/amazon_spapi_return_line.py
- Código del módulo: flexigobe_amazon_seller_connector · 17.0 9a6d49f · 18.0 aecae86 · 19.0 fa9ae73 · 20.0 be50529: views/amazon_spapi_return_line_views.xml
- Código del módulo: flexigobe_amazon_seller_connector 20.0 (e9fb0850): views/menu_views.xml
- apps.odoo.com/apps/modules/20.0/flexigobe_amazon_seller_connector
