Saltar al contenido principal
Amazon · SP-API

La SP-API de Amazon vista desde Odoo: qué autorizas, qué te limita y qué solo falla en producción

La SP-API no es un cable que se enchufa. Es una autorización que se firma en Seller Central, un presupuesto de llamadas que se agota y un sistema de informes asíncronos que decide cuándo sabrás tu stock de verdad. Esto es lo que cambia cuando el cliente de esa API es Odoo.

Pedidos de Amazon importados en Odoo a través de la SP-API

SP-API son las siglas de Selling Partner API: la interfaz con la que Amazon deja que un programa externo lea y escriba en tu cuenta de Seller Central. Sustituyó a MWS y cambió bastante más que el nombre. Desde el lado de Odoo, la API en sí es la parte fácil: son peticiones HTTP con JSON. Lo que decide si la integración aguanta un noviembre son tres cosas que no se ven en la documentación de un endpoint: cómo se autoriza, cuántas llamadas te dejan hacer y qué datos llegan tarde por diseño.

La autorización se firma en Seller Central, no en Odoo

El flujo es siempre el mismo: existe una aplicación registrada con un perfil de desarrollador, y tú, como vendedor, la autorizas desde tu cuenta. De esa autorización sale un refresh token que es de larga duración y que Odoo guarda; con él pide, cada vez que lo necesita, un token de acceso que dura una hora. Si alguien te pide tus credenciales de Seller Central para «configurarlo», algo va mal: nadie necesita tu contraseña para esto. Y si revocas la autorización, la integración se para en seco, que es exactamente lo que debe pasar.

Los datos del comprador van por una puerta aparte

Nombre, dirección y teléfono del comprador son datos personales y Amazon los trata como tales: no vienen en la respuesta normal de un pedido. Hay que pedir un token restringido para esa consulta concreta, y el permiso para hacerlo se concede por rol, no por defecto. Consecuencia práctica en Odoo: puedes tener pedidos importándose perfectamente y albaranes que no se pueden expedir porque falta la dirección. No es un fallo del conector; es el permiso que no está aprobado.

Los límites de llamadas son un presupuesto, no una velocidad

Cada operación de la SP-API tiene su propio límite, y funciona como un depósito que se rellena a un ritmo fijo y admite una ráfaga corta por encima. Mientras haya saldo vas rápido; cuando se agota, Amazon responde 429 y hay que esperar. Esto tiene una lectura directa para Odoo: no puedes recorrer 4.000 referencias llamando una por una «porque así es más simple». Hace falta agrupar, respetar la cabecera de límite que devuelve la propia API y reintentar con espera creciente. Y hace falta que la sincronización manual y el cron compartan el mismo freno, porque el presupuesto es de la cuenta entera, no de cada proceso.

Informes frente a llamadas en vivo: por qué tu stock siempre va con retraso

La SP-API tiene dos maneras de darte datos. Una es la llamada directa: preguntas por pedidos desde una fecha y te responde en el momento. La otra es el sistema de informes, que es asíncrono: solicitas el informe, Amazon lo prepara cuando puede, tú consultas si ya está y luego descargas un fichero comprimido. El inventario de FBA y las liquidaciones van por ahí. Eso significa que el stock que ves en Odoo es el de la última descarga, no el de este segundo, y ninguna frecuencia de cron arregla eso. La respuesta correcta no es llamar más: es publicar con colchón de seguridad y asumir el desfase.

El sandbox de la SP-API devuelve respuestas fijas preparadas por Amazon. Sirve para comprobar que firmas bien las peticiones y poco más: todas sus operaciones comparten un mismo límite, así que no reproduce el de cada operación en producción, ni te devuelve un pedido pendiente sin dirección, ni te obliga a renovar un token en mitad de una sincronización larga. Un conector verde en sandbox no está probado. Lo contamos en tests verdes y fallo en producción.

Los errores que solo salen en producción

Son siempre los mismos y ninguno aparece el primer día. Pedidos en estado pendiente que llegan sin importes ni dirección y que hay que volver a leer más tarde. Paginación: la primera página entra y el resto se pierde si nadie sigue el testigo de continuación. Ventanas de fechas mal calculadas por zona horaria, que dejan un hueco de pedidos justo en el cambio de día. Tokens que caducan durante una sincronización larga y que hay que renovar a mitad. Y la región equivocada: la aplicación es global, pero la cuenta de vendedor no, y pedir los pedidos de Alemania al endpoint de Norteamérica no responde «región incorrecta», responde «Access to requested resource is denied». Parece un problema de permisos, así que se regeneran credenciales que estaban bien mientras el fallo sigue en la URL.

Dónde tiene que vivir esto dentro de Odoo

Una llamada a Amazon no puede colgar de la validación de un albarán. Si la API tarda, el usuario se queda mirando una rueda y si falla, pierde el trabajo hecho. El sitio de estas llamadas es una tarea programada o una cola de trabajos, con su reintento, su registro de qué se pidió y qué contestó Amazon, y con operaciones idempotentes: repetir una sincronización no puede crear el pedido dos veces. Ese registro es lo que después te permite discutir con soporte de Amazon con datos, en vez de con impresiones. El resto del patrón, aplicado a los pedidos que no aparecen, está en por qué los pedidos de Amazon no entran en Odoo.

Cuándo no hace falta que construyas nada

Si vendes en un solo marketplace, con pocas referencias y solo necesitas que los pedidos entren, el conector de Amazon que trae Odoo Enterprise de serie puede bastarte. Merece la pena probarlo antes de pagar por nada. La conversación cambia cuando hay varios países con sus impuestos, stock compartido con otros canales, liquidaciones que cuadrar o confirmaciones de envío con plazo. Ahí es donde nuestro conector de Amazon para Odoo hace el trabajo: SP-API con control de límites, informes, FBA y FBM, en Odoo 17, 18 y 19, y en Odoo 20 el día que salga.

Preguntas frecuentes

¿Hace falta una cuenta de desarrollador de Amazon para usar la SP-API?

La aplicación necesita estar registrada bajo un perfil de desarrollador, pero quien autoriza eres tú desde tu Seller Central. La autorización es tuya y la puedes revocar cuando quieras.

¿Se puede consultar el stock de Amazon en tiempo real?

No como la gente lo imagina. El inventario llega sobre todo por informe, que es asíncrono, así que siempre hay un desfase de minutos. Por eso el colchón de seguridad importa más que la frecuencia de sincronización.

¿Qué pasa si Amazon me devuelve 429 en plena campaña?

Nada grave si la integración reintenta con espera creciente y encola lo pendiente. Es grave si el proceso se muere y nadie se entera hasta que faltan pedidos: por eso el registro y la alerta importan tanto como la llamada.

Enlaces útiles dentro de FlexigoTech

Conector de Amazon para OdooSP-API, FBA y FBM, stock, pedidos y liquidacionesCredenciales y límites SP-API antes de contratarQué pedir y qué revisar en cualquier conector de AmazonAmazon FBA dentro de OdooEl almacén que no es tuyo, con sus devoluciones y reembolsos

Lo que hacemos sobre esto

Conector AmazonQué hace, capturas, versiones y precio.

¿Tu integración con la SP-API falla y no sabes por dónde?

Dinos en qué marketplaces vendes, si usas FBA, FBM o los dos, y qué error concreto ves en el registro. Miramos si es autorización, límites de llamadas o una ventana de fechas mal calculada. Escribe a comercial@flexigobe.com o agenda una llamada.

Hablar con un ingeniero