Salta al contingut principal
GoCardless · SEPA Core · mandats

GoCardless bank_account_transferred: AMEND, el mandat passa a un altre compte

transferred no és un error. GoCardless avisa que el mandat ha passat a un altre compte bancari del client: en SEPA Core arriba amb la causa bank_account_transferred i el codi AMEND quan el canvi ve del banc, o amb mandate_transferred quan es fa a través de GoCardless. El mandat és el mateix, i el connector el continua fent servir.

FlexigoTech · Responsable: Víctor Gómez · Actualitzat el 6 de novembre de 2026

L'essencial

Versions
Odoo 17, 18, 19 i 20
Comprovat
al codi del connector, versió 17.0, 18.0, 19.0 i 20.0 · a les fonts enllaçades al final
Lectura
4 min

Què diu GoCardless

EsdevenimentCausaCodiText de GoCardless
mandates · transferredbank_account_transferredAMENDThe customer's bank account was transferred to a different bank or building society.
mandates · transferredmandate_transferred(cap)This mandate was transferred to a new bank account through GoCardless.

La documentació d'esdeveniments descriu els dos camins en una frase: «The mandate has been transferred to a different bank account either using a bank switching service (where it is supported) or with help from GoCardless Support». El primer té origen bank i el segon, api.

I afegeix un matís sobre el primer: «When using a bank switching service, the mandate may have been submitted again, depending on how the involved banks handled the transfer.».

Targeta de la causa bank_account_transferred de GoCardless
La causa, el codi SEPA Core AMEND, l'esdeveniment mandates transferred i el text de GoCardless.

Quan apareix

Quan el client canvia de banc i el seu banc nou trasllada els seus rebuts domiciliats, o quan el client demana a GoCardless que cobri en un altre compte i el seu suport fa el canvi després de comprovar les dades. En els dos casos el mandat continua sent el mateix: el que canvia és el compte del qual surten els diners.

Què fa Odoo amb el connector

  • Si el mètode de pagament estava actiu: el connector deixa l'estat del mandat com estava. El canvi de compte no el fa inservible, així que el mètode de pagament del client continua disponible per a la següent factura, i «Mandate Status» no canvia. No hi ha res a veure a Odoo.
  • Si estava arxivat, perquè abans va arribar un esdeveniment que el donava per mort, transferred és un dels esdeveniments amb què el connector el torna a donar per bo: el reactiva i ho escriu a la fitxa del client, «The GoCardless mandate is usable again (transferred).». Odoo 17 no deixa desarxivar un mètode de pagament; allà el connector en crea un de nou per al mateix mandat.

Aquesta nota l'escriu el connector en aplicar l'esdeveniment, sense ningú al davant. El connector no està traduït al català: aquests textos surten sempre en anglès, també en un Odoo en català, tant si els llança un usuari com una tasca programada: «The GoCardless mandate is usable again (transferred).».

El connector aplica els esdeveniments de mandat en ordre, del més antic al més recent, i si algun no ha arribat pel webhook, la tasca que cada hora recupera els esdeveniments perduts el porta.

Esquema: què envia GoCardless amb transferred i què fa Odoo amb el connector
Esquema fet a partir del codi del mòdul (17.0, 18.0, 19.0 i 20.0) i de la documentació de GoCardless; el que està ratllat és el que no cal.

No és el mateix que un mandat substituït

Amb transferred el mandat no canvia; amb replaced sí. En una substitució GoCardless cancel·la el mandat i en crea un altre, i l'esdeveniment porta el nou («The event will include links[new_mandate] with the ID of the new mandate.»). El connector passa aleshores el mètode de pagament al mandat nou. En un trasllat no hi ha mandat nou: el connector es queda amb el que tenia.

Tampoc no és una cancel·lació. Un mandat cancel·lat, fallit, caducat, consumit o bloquejat està mort per al connector, que l'arxiva i en demana un de nou. Un mandat traslladat continua viu.

Què cal fer

  1. Res a Odoo: les següents factures es cobren amb el mateix mètode de pagament.
  2. Si el client t'avisa que ha canviat de banc, no cal demanar-li un altre mandat: el trasllat ho comunica GoCardless.
  3. Si el mètode de pagament estava arxivat i torna a estar disponible, comprova a la fitxa del client la nota del connector i cobra amb ell les factures que han quedat pendents.

He de demanar al client un mandat nou?

No. GoCardless ha passat el mateix mandat al compte nou del client, i el connector el continua fent servir.

Què vol dir AMEND?

És el codi amb què GoCardless documenta aquest esdeveniment a SEPA Core, quan el trasllat arriba del banc. A Odoo no el veuràs: el connector no guarda ni mostra el codi SEPA.

Amb el nostre connector

A Odoo 17, 18, 19 i 20 el connector no converteix un canvi de compte en un problema: manté el mandat i el mètode de pagament del client i, si estava arxivat, el recupera i deixa una nota a la seva fitxa.

Continua llegint

GoCardless mandate_replaced: el mandat té un substitutGoCardless cancel·la un mandat i el substitueix per un altre (scheme_identifier_changed); cobrar amb el vell dona mandate_replaced. Què fa Odoo.GoCardless bank_account_closed: AC04 i MD07, el compte ja no existeixGoCardless bank_account_closed amb AC04 (compte tancat) o MD07 (titular traspassat): el mandat queda cancel·lat. Què fa Odoo amb la factura i amb el client.GoCardless mandate_expired: el mandat va caducar per no usar-loGoCardless marca un mandat com a expired quan no s'ha intentat cobrar amb ell durant tot el període d'inactivitat. Què fa Odoo i com seguir cobrant.
Comprovat al codi del connector (versió 17.0, 18.0, 19.0 i 20.0) i a les fonts enllaçades

Fonts

  • docs.gocardless.com/docs/api-reference/events/mandate
  • Codi del mòdul: flexigo_payment_gocardless: const.py, línia 145 a 17.0 (d203ee6), 18.0 (e2ab18b), 19.0 (ce7f5a3) i 20.0 (688d86b)
  • Codi del mòdul: flexigo_payment_gocardless: const.py, línia 158 a 17.0 (d203ee6), 18.0 (e2ab18b), 19.0 (ce7f5a3) i 20.0 (688d86b)
  • Codi del mòdul: flexigo_payment_gocardless: models/payment_token.py, línia 77 a 17.0 (d203ee6), línia 77 a 18.0 (e2ab18b), línia 77 a 19.0 (ce7f5a3) i línia 76 a 20.0 (688d86b)
  • Codi del mòdul: flexigo_payment_gocardless: models/payment_token.py, línia 96 a 17.0 (d203ee6), línia 96 a 18.0 (e2ab18b), línia 96 a 19.0 (ce7f5a3) i línia 95 a 20.0 (688d86b)
  • Codi del mòdul: flexigo_payment_gocardless: i18n/flexigo_payment_gocardless.pot, línia 1157 a 17.0 (d203ee6), línia 1157 a 18.0 (e2ab18b), línia 1157 a 19.0 (ce7f5a3) i línia 1164 a 20.0 (688d86b)
  • Codi del mòdul: flexigo_payment_gocardless: const.py, línia 33 a 17.0 (d203ee6), 18.0 (e2ab18b), 19.0 (ce7f5a3) i 20.0 (688d86b)
  • Codi del mòdul: flexigo_payment_gocardless: models/payment_token.py, línia 72 a 17.0 (d203ee6), línia 72 a 18.0 (e2ab18b), línia 72 a 19.0 (ce7f5a3) i línia 71 a 20.0 (688d86b)
  • Codi del mòdul: flexigo_payment_gocardless: i18n/flexigo_payment_gocardless.pot, línia 785 a 17.0 (d203ee6), línia 785 a 18.0 (e2ab18b), línia 785 a 19.0 (ce7f5a3) i línia 800 a 20.0 (688d86b)
  • Codi del mòdul: flexigo_payment_gocardless: const.py, línia 117 a 17.0 (d203ee6), 18.0 (e2ab18b), 19.0 (ce7f5a3) i 20.0 (688d86b)
  • Codi del mòdul: flexigo_payment_gocardless: models/payment_provider.py, línia 527 a 17.0 (d203ee6), línia 527 a 18.0 (e2ab18b), línia 527 a 19.0 (ce7f5a3) i línia 529 a 20.0 (688d86b)
  • Codi del mòdul: flexigo_payment_gocardless: const.py, línia 66 a 17.0 (d203ee6), 18.0 (e2ab18b), 19.0 (ce7f5a3) i 20.0 (688d86b)
  • Codi del mòdul: flexigo_payment_gocardless: const.py, línia 15 a 17.0 (d203ee6), 18.0 (e2ab18b), 19.0 (ce7f5a3) i 20.0 (688d86b)
  • github.com/odoo/odoo/blob/17.0/odoo/http.py
  • Codi del mòdul: flexigo_payment_gocardless: __manifest__.py, línia 31 a 17.0 (d203ee6), 18.0 (e2ab18b), 19.0 (ce7f5a3) i 20.0 (688d86b)
  • github.com/odoo/odoo/blob/20.0/addons/account_payment/views/account_move_views.xml