Qui busca «api mrw» sol tenir unes credencials fa poc rebudes de la seva franquícia, o un Odoo des del qual vol deixar de copiar adreces al portal d'MRW. Aquí tens què és, quines crides importen i on es trenca, segons el codi del nostre connector MRW per a Odoo.
Què és l'API d'MRW: Sagec, SOAP i credencials de la teva franquícia
El servei web amb què MRW grava enviaments es diu Sagec i parla SOAP: sobres XML amb capçalera d'autenticació, no JSON amb un token. Té adreça de proves (sagec-test.mrw.es) i de producció (sagec.mrw.es). Les credencials no surten d'un portal de desenvolupadors: te les dona la teva franquícia. Són codi de franquícia, abonat, departament si el fas servir, usuari i contrasenya.
Les crides que importen són poques: TransmEnvio grava l'enviament (TransmEnvioInternacional fora d'Espanya), GetEtiquetaEnvio retorna l'etiqueta i CancelarEnvio l'anul·la.
L'etiqueta surt en validar l'albarà
A Odoo, MRW s'instal·la com un mètode d'enviament més. En validar l'albarà, el connector grava l'enviament, desa el número a l'albarà i adjunta l'etiqueta en PDF; si MRW no retorna el fitxer, fa servir la URL d'etiqueta de la resposta. Un assistent fa el mateix amb diversos albarans alhora.
Abans del primer enviament cal decidir què passa si MRW falla: bloquejar la validació, i l'albarà no es tanca sense etiqueta, o validar i deixar l'enviament pendent amb avís. El que ja ve resolt: si l'albarà té número d'enviament, no se'n grava un altre, així que un reintent no deixa dues etiquetes.
Seguiment: el que tens i el que no
El número d'enviament s'escriu al camp de seguiment estàndard d'Odoo: arriba al client en el correu de confirmació de lliurament si el tens activat, i un botó de l'albarà obre el seguiment d'MRW. Per a la majoria de botigues, n'hi ha prou.
El que el connector no fa avui és portar a Odoo cada canvi d'estat: en repartiment, lliurat, incidència. Si ho necessites, per exemple per obrir una tasca davant d'una incidència de lliurament, és un desenvolupament a mida, i comença per confirmar què et dona el teu contracte amb MRW.
Recollides: la data viatja amb cada enviament
La recollida física l'organitza la teva franquícia segons el teu contracte. Odoo envia en cada enviament la data de recollida i les dades d'origen, que són les de la teva empresa. El connector calcula la data a partir de la prevista de l'albarà: mai en el passat, a partir de les 17:00 la passa al dia següent i se salta els caps de setmana. Si la teva franquícia té una altra hora de tall, confirma-ho amb ella.
I si el codi postal o el telèfon de la teva empresa són incorrectes a Odoo, no falla un enviament: fallen tots.
Els errors d'adreça que més aturen enviaments a Espanya
Dels rebutjos per dades, els d'adreça depenen de tu i no del contracte. Cinc que convé vigilar:
- Codi postal de quatre xifres. Els d'Àlaba, Albacete, Alacant, Almeria, Àvila, Badajoz, Balears, Barcelona i Burgos comencen per zero, i aquest zero desapareix quan la base de clients passa per un full de càlcul: 08001 es converteix en 8001.
- Carrer sense número. MRW separa via, número i resta; Odoo desa el carrer en una línia. El connector el trosseja i, si no troba cap xifra, envia «S/N». Els carrers amb número al nom, com «Calle 8 de Marzo», cap trossejat automàtic no els encerta sempre: són els primers que cal mirar.
- Telèfon del destinatari buit o incomplet. MRW l'exigeix; la validació prèvia marca qualsevol telèfon amb menys de nou xifres.
- Població o província buides. Passa amb contactes creats des del web o importats a mitges; a Odoo, un codi postal correcte no omple la província.
- Pes zero. Si els productes no tenen pes, l'albarà tampoc. Hi ha un pes per defecte configurable, però amb bultos pesants xoca amb el màxim per bulto del servei.
Per no descobrir-ho amb la furgoneta a la porta, el mètode d'enviament porta un botó de validació prèvia: revisa credencials, servei, dades de la teva empresa, pes per defecte i fins a vint albarans oberts, buscant just aquests buits. I si MRW rebutja un enviament, el connector tradueix la resposta a un motiu llegible.
Corregeix l'adreça a la fitxa del contacte de lliurament i rellança l'enviament des de l'albarà: com que no va arribar a gravar-se, no es duplica res.
Quan no necessites el nostre connector
Si graves un grapat d'enviaments a la setmana, el portal d'MRW n'hi ha prou i cap integració s'amortitza. Si fas servir Odoo 19 i només necessites etiqueta i seguiment, mira abans el mòdul delivery_mrw d'OCA: és gratuït i, a diferència del nostre, ja envia el reemborsament. El que no porta és validació prèvia, reintents ni data de recollida calculada. Comparació completa a quin transportista triar per a Odoo.
Què fa el nostre connector
El connector MRW per a Odoo fa el que s'ha descrit: enviament i etiqueta en validar, seguiment, cancel·lació amb CancelarEnvio, data de recollida, validació prèvia i reintents. Funciona a Odoo 17, 18, 19 i 20. Si no tens Odoo sinó un web propi, mira integrar l'API d'un transportista en un web propi.
Preguntes freqüents
Necessito contracte amb MRW per fer servir la seva API?
Sí. Les credencials de Sagec te les dona la teva franquícia MRW. El connector porta separades l'adreça de proves i la de producció, i un botó per comprovar la connexió abans del primer enviament real.
Es pot enviar amb reemborsament?
Amb el nostre connector, avui no: els enviaments es graven sense reemborsament. El mòdul OCA d'MRW sí que l'envia. Si vens amb reemborsament amb MRW i necessites també la resta, és una ampliació que es valora a part.
Què passa si l'API d'MRW no respon?
Si el fallo és d'MRW (temps d'espera, errors 5xx o «error interno»), el connector programa reintents als 5, 15, 30, 60, 180 i 360 minuts, sis com a màxim per defecte. Si el fallo és de dades, no reintenta: t'ensenya el motiu.
Enllaços útils dins de FlexigoTech
El que fem sobre això
MRW et rebutja enviaments o continues copiant adreces a mà?
Digue'ns quina versió d'Odoo fas servir, quants enviaments fas al dia i quin error et retorna MRW. Et diem si és una dada, el contracte o la integració, i si et basta amb el mòdul d'OCA. Escriu a comercial@flexigobe.com o agenda una trucada.

