Cosa dice GoCardless
| Evento | Causa | Codice | Testo di GoCardless |
|---|---|---|---|
| mandates · transferred | bank_account_transferred | AMEND | The customer's bank account was transferred to a different bank or building society. |
| mandates · transferred | mandate_transferred | (nessuno) | This mandate was transferred to a new bank account through GoCardless. |
La documentazione degli eventi descrive i due percorsi in 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». Il primo ha origine bank e il secondo, api.
E aggiunge una precisazione sul primo: «When using a bank switching service, the mandate may have been submitted again, depending on how the involved banks handled the transfer.».

Quando compare
Quando il cliente cambia banca e la nuova banca trasferisce i suoi addebiti diretti, oppure quando il cliente chiede a GoCardless di incassare su un altro conto e il supporto esegue il cambio dopo aver verificato i dati. In entrambi i casi il mandato resta lo stesso: cambia il conto da cui esce il denaro.
Cosa fa Odoo con il connettore
- Se il metodo di pagamento era attivo: il connettore lascia lo stato del mandato com'era. Il cambio di conto non lo rende inutilizzabile, quindi il metodo di pagamento del cliente resta disponibile per la fattura successiva, e «Mandate Status» non cambia. Non c'è nulla da vedere in Odoo.
- Se era archiviato, perché prima era arrivato un evento che lo dava per morto,
transferredè uno degli eventi con cui il connettore lo riconsidera valido: lo riattiva e lo scrive nella scheda del cliente, «The GoCardless mandate is usable again (transferred).». Odoo 17 non permette di ripristinare un metodo di pagamento archiviato; in quel caso il connettore ne crea uno nuovo per lo stesso mandato.
Questa nota la scrive il connettore nell'applicare l'evento, senza nessuno davanti. Il connettore non è tradotto in italiano: questi testi compaiono sempre in inglese, anche in un Odoo in italiano, sia che li avvii un utente sia un'azione pianificata: «The GoCardless mandate is usable again (transferred).».
Il connettore applica gli eventi di mandato in ordine, dal più vecchio al più recente, e se qualcuno non è arrivato tramite il webhook, l'azione pianificata che ogni ora recupera gli eventi persi lo porta.

Non è lo stesso di un mandato sostituito
Con transferred il mandato non cambia; con replaced sì. In una sostituzione GoCardless annulla il mandato e ne crea un altro, e l'evento include il nuovo («The event will include links[new_mandate] with the ID of the new mandate.»). Il connettore sposta allora il metodo di pagamento sul nuovo mandato. In un trasferimento non c'è un nuovo mandato: il connettore mantiene quello che aveva.
Non è nemmeno un annullamento. Un mandato annullato, fallito, scaduto, consumato o bloccato è morto per il connettore, che lo archivia e ne richiede uno nuovo. Un mandato trasferito resta valido.
Cosa fare
- Nulla in Odoo: le fatture successive si incassano con lo stesso metodo di pagamento.
- Se il cliente ti avvisa di aver cambiato banca, non serve chiedergli un nuovo mandato: il trasferimento lo comunica GoCardless.
- Se il metodo di pagamento era archiviato e torna disponibile, controlla nella scheda del cliente la nota del connettore e incassa con esso le fatture rimaste in sospeso.
Devo chiedere al cliente un nuovo mandato?
No. GoCardless ha trasferito lo stesso mandato sul nuovo conto del cliente, e il connettore continua a usarlo.
Cosa significa AMEND?
È il codice con cui GoCardless documenta questo evento in SEPA Core, quando il trasferimento arriva dalla banca. In Odoo non lo vedrai: il connettore non memorizza né mostra il codice SEPA.
Con il nostro connettore
In Odoo 17, 18, 19 e 20 il connettore non trasforma un cambio di conto in un problema: mantiene il mandato e il metodo di pagamento del cliente e, se era archiviato, lo recupera e lascia una nota nella sua scheda.
Continua a leggere
Verificato nel codice del connettore (versione 17.0, 18.0, 19.0 e 20.0) e nelle fonti collegate
Fonti
- docs.gocardless.com/docs/api-reference/events/mandate
- Codice del modulo: flexigo_payment_gocardless: const.py, riga 145 in 17.0 (d203ee6), 18.0 (e2ab18b), 19.0 (ce7f5a3) e 20.0 (688d86b)
- Codice del modulo: flexigo_payment_gocardless: const.py, riga 158 in 17.0 (d203ee6), 18.0 (e2ab18b), 19.0 (ce7f5a3) e 20.0 (688d86b)
- Codice del modulo: flexigo_payment_gocardless: models/payment_token.py, riga 77 in 17.0 (d203ee6), riga 77 in 18.0 (e2ab18b), riga 77 in 19.0 (ce7f5a3) e riga 76 in 20.0 (688d86b)
- Codice del modulo: flexigo_payment_gocardless: models/payment_token.py, riga 96 in 17.0 (d203ee6), riga 96 in 18.0 (e2ab18b), riga 96 in 19.0 (ce7f5a3) e riga 95 in 20.0 (688d86b)
- Codice del modulo: flexigo_payment_gocardless: i18n/flexigo_payment_gocardless.pot, riga 1157 in 17.0 (d203ee6), riga 1157 in 18.0 (e2ab18b), riga 1157 in 19.0 (ce7f5a3) e riga 1164 in 20.0 (688d86b)
- Codice del modulo: flexigo_payment_gocardless: const.py, riga 33 in 17.0 (d203ee6), 18.0 (e2ab18b), 19.0 (ce7f5a3) e 20.0 (688d86b)
- Codice del modulo: flexigo_payment_gocardless: models/payment_token.py, riga 72 in 17.0 (d203ee6), riga 72 in 18.0 (e2ab18b), riga 72 in 19.0 (ce7f5a3) e riga 71 in 20.0 (688d86b)
- Codice del modulo: flexigo_payment_gocardless: i18n/flexigo_payment_gocardless.pot, riga 785 in 17.0 (d203ee6), riga 785 in 18.0 (e2ab18b), riga 785 in 19.0 (ce7f5a3) e riga 800 in 20.0 (688d86b)
- Codice del modulo: flexigo_payment_gocardless: const.py, riga 117 in 17.0 (d203ee6), 18.0 (e2ab18b), 19.0 (ce7f5a3) e 20.0 (688d86b)
- Codice del modulo: flexigo_payment_gocardless: models/payment_provider.py, riga 527 in 17.0 (d203ee6), riga 527 in 18.0 (e2ab18b), riga 527 in 19.0 (ce7f5a3) e riga 529 in 20.0 (688d86b)
- Codice del modulo: flexigo_payment_gocardless: const.py, riga 66 in 17.0 (d203ee6), 18.0 (e2ab18b), 19.0 (ce7f5a3) e 20.0 (688d86b)
- Codice del modulo: flexigo_payment_gocardless: const.py, riga 15 in 17.0 (d203ee6), 18.0 (e2ab18b), 19.0 (ce7f5a3) e 20.0 (688d86b)
- github.com/odoo/odoo/blob/17.0/odoo/http.py
- Codice del modulo: flexigo_payment_gocardless: __manifest__.py, riga 31 in 17.0 (d203ee6), 18.0 (e2ab18b), 19.0 (ce7f5a3) e 20.0 (688d86b)
- github.com/odoo/odoo/blob/20.0/addons/account_payment/views/account_move_views.xml
