Wat GoCardless meldt
| Gebeurtenis | Codes | Tekst van GoCardless |
|---|---|---|
| payments · failed | AC01, BE06 | The bank account specified does not exist. The mandate will also be cancelled. |
| mandates · failed | AC01 | The bank account specified does not exist. Any subscriptions and pending payments will also be cancelled. |
| mandates · cancelled | AC01, BE06 | The bank account specified does not exist. Any subscriptions and pending payments will also be cancelled. |

Wanneer het verschijnt
Het hangt af van het moment waarop de bank het ontdekt. Als de bank het mandaat weigert bij het aanmaken, markeert GoCardless het als mislukt (mandates · failed) en wordt er nooit iets geïncasseerd. Als het mandaat al actief was en de eerste incasso met AC01 of BE06 wordt geweigerd, mislukt de betaling en annuleert GoCardless het mandaat (mandates · cancelled), samen met de openstaande betalingen van dat mandaat.
In beide gevallen is de oplossing dezelfde: de klant moet opnieuw tekenen met een rekening die bestaat.
Wat Odoo met de connector doet
De connector reageert op elke gebeurtenis afzonderlijk, en het is goed te weten wat elk ervan doet:
- De mislukte betaling zet de transactie op fout met "GoCardless could not collect this payment (invalid_bank_details).". Als de factuur met die incasso al betaald was, annuleert hij de betaling en staat de factuur weer open.
- De mandaatgebeurtenis, mislukt of geannuleerd, is degene die het intrekt: de connector beschouwt mandaten in die statussen als ongeldig, archiveert de betaalmethode, schrijft op de klantkaart dat het mandaat niet meer gebruikt kan worden en maakt de activiteit "GoCardless mandate lost" aan.
Die teksten schrijft de connector zelf bij het verwerken van de gebeurtenis, zonder tussenkomst van iemand. De connector is niet in het Nederlands vertaald: deze teksten verschijnen altijd in het Engels, ook in een Nederlandstalige Odoo, of een gebruiker of een geplande actie ze nu start: "GoCardless could not collect this payment (invalid_bank_details)." en "GoCardless mandate lost".
De mislukte betaling alleen archiveert het mandaat niet: invalid_bank_details staat niet tussen de vier oorzaken waarmee de connector het bij het ontvangen van een betaling doet. Het archiveren gebeurt door de mandaatgebeurtenis, die GoCardless in dit geval altijd stuurt. Als die onderweg verloren gaat, haalt de taak die elk uur verloren gebeurtenissen ophaalt, hem alsnog binnen.
De transactie open je vanuit de factuur, met de knop "Betalingstransactie" bovenaan; het menu met transacties is alleen zichtbaar in de ontwikkelaarsmodus, en in Odoo 20 bestaat het niet. Zolang het mandaat in Odoo niet gearchiveerd is, toont de transactie in fout de knop "Retry collection", maar die helpt niet. GoCardless probeert een betaling alleen opnieuw als het mandaat actief is, en bij AC01 of BE06 annuleert het dat. Als je op de knop drukt en GoCardless weigert, raadpleegt de connector het mandaat en, als het dood is, archiveert hij het en meldt dat in de transactie: "The customer's GoCardless mandate is …, so it cannot be charged. Ask the customer for a new mandate.". Zodra het mandaat gearchiveerd is, verdwijnt de knop.
Wat te doen
- Controleer met de klant het volledige IBAN: één gewijzigd cijfer is genoeg om de rekening onbestaande te maken.
- Vraag hem een nieuw mandaat te tekenen met de juiste rekening. Dat wordt een nieuwe betaalmethode in Odoo.
- Int met hem de facturen die open zijn gebleven; die welke GoCardless heeft geannuleerd, worden niet vanzelf opnieuw aangeboden.
- Als de klant zegt dat het IBAN juist was, laat hem dit dan bij zijn bank nagaan: AC01 en BE06 zijn het antwoord van zijn bank, niet van GoCardless. In Odoo zie je alleen de oorzaak, omdat de connector de SEPA-code niet bewaart. Volgens het helpcentrum van GoCardless staat de reden van elke mislukking in de tijdlijn van de betaling, in het Dashboard ("You are able to view the reason for a payment failure in the status timeline of the payment in your GoCardless dashboard.").

Waarom zijn er twee codes, AC01 en BE06?
GoCardless groepeert beide onder dezelfde oorzaak en dezelfde tekst voor SEPA Core. Voor jou is het gevolg hetzelfde: met die rekening kan niet geïncasseerd worden, en er is een nieuwe handtekening nodig.
Kan het IBAN van het mandaat in Odoo gecorrigeerd worden?
Nee. Het mandaat is de machtiging die de klant met die rekening heeft getekend; de juiste rekening hoort in een nieuw mandaat.
Met onze connector
In Odoo 17, 18, 19 en 20 laat de connector geen onbruikbaar mandaat voor de volgende factuur achter: hij trekt het in zodra GoCardless het als mislukt of geannuleerd beschouwt, heropent wat heropend moet worden en legt op de klantkaart vast wat er gebeurd is.
Lees verder
Gecontroleerd in de broncode van de connector (versie 17.0, 18.0, 19.0 en 20.0) en in de gelinkte bronnen
Bronnen
- Broncode van de module: flexigo_payment_gocardless: const.py, regel 15 in 17.0 (d203ee6), 18.0 (e2ab18b), 19.0 (ce7f5a3) en 20.0 (688d86b)
- Broncode van de module: flexigo_payment_gocardless: const.py, regel 76 in 17.0 (d203ee6), 18.0 (e2ab18b), 19.0 (ce7f5a3) en 20.0 (688d86b)
- Broncode van de module: flexigo_payment_gocardless: const.py, regel 33 in 17.0 (d203ee6), 18.0 (e2ab18b), 19.0 (ce7f5a3) en 20.0 (688d86b)
- Broncode van de module: flexigo_payment_gocardless: models/payment_token.py, regel 83 in 17.0 (d203ee6), regel 83 in 18.0 (e2ab18b), regel 83 in 19.0 (ce7f5a3) en regel 82 in 20.0 (688d86b)
- Broncode van de module: flexigo_payment_gocardless: models/payment_token.py, regel 131 in 17.0 (d203ee6), regel 131 in 18.0 (e2ab18b), regel 131 in 19.0 (ce7f5a3) en regel 130 in 20.0 (688d86b)
- Broncode van de module: flexigo_payment_gocardless: models/payment_transaction.py, regel 725 in 17.0 (d203ee6), regel 725 in 18.0 (e2ab18b), regel 724 in 19.0 (ce7f5a3) en regel 748 in 20.0 (688d86b)
- Broncode van de module: flexigo_payment_gocardless: models/payment_transaction.py, regel 754 in 17.0 (d203ee6), regel 754 in 18.0 (e2ab18b), regel 753 in 19.0 (ce7f5a3) en regel 777 in 20.0 (688d86b)
- Broncode van de module: flexigo_payment_gocardless: const.py, regel 117 in 17.0 (d203ee6), 18.0 (e2ab18b), 19.0 (ce7f5a3) en 20.0 (688d86b)
- Broncode van de module: flexigo_payment_gocardless: models/payment_transaction.py, regel 442 in 17.0 (d203ee6), regel 442 in 18.0 (e2ab18b), regel 441 in 19.0 (ce7f5a3) en regel 456 in 20.0 (688d86b)
- Broncode van de module: flexigo_payment_gocardless: i18n/flexigo_payment_gocardless.pot, regel 436 in 17.0 (d203ee6), regel 436 in 18.0 (e2ab18b), regel 436 in 19.0 (ce7f5a3) en regel 438 in 20.0 (688d86b)
- Broncode van de module: flexigo_payment_gocardless: i18n/flexigo_payment_gocardless.pot, regel 1148 in 17.0 (d203ee6), regel 1148 in 18.0 (e2ab18b), regel 1148 in 19.0 (ce7f5a3) en regel 1155 in 20.0 (688d86b)
- Broncode van de module: flexigo_payment_gocardless: i18n/flexigo_payment_gocardless.pot, regel 495 in 17.0 (d203ee6), regel 495 in 18.0 (e2ab18b), regel 495 in 19.0 (ce7f5a3) en regel 497 in 20.0 (688d86b)
- Broncode van de module: flexigo_payment_gocardless: __manifest__.py, regel 31 in 17.0 (d203ee6), 18.0 (e2ab18b), 19.0 (ce7f5a3) en 20.0 (688d86b)
- docs.gocardless.com/docs/api-reference/events/payment
- docs.gocardless.com/docs/api-reference/events/mandate
- Broncode van de module: flexigo_payment_gocardless: views/payment_transaction_views.xml, regel 13 in 17.0 (d203ee6), 18.0 (e2ab18b), 19.0 (ce7f5a3) en 20.0 (688d86b)
- Broncode van de module: flexigo_payment_gocardless: models/payment_transaction.py, regel 63 in 17.0 (d203ee6), 18.0 (e2ab18b), 19.0 (ce7f5a3) en 20.0 (688d86b)
- Broncode van de module: flexigo_payment_gocardless: models/payment_transaction.py, regel 418 in 17.0 (d203ee6), regel 418 in 18.0 (e2ab18b), regel 417 in 19.0 (ce7f5a3) en regel 432 in 20.0 (688d86b)
- Broncode van de module: flexigo_payment_gocardless: i18n/flexigo_payment_gocardless.pot, regel 1016 in 17.0 (d203ee6), regel 1016 in 18.0 (e2ab18b), regel 1016 in 19.0 (ce7f5a3) en regel 1031 in 20.0 (688d86b)
- docs.gocardless.com/docs/api-reference/payment
- Broncode van de module: flexigo_payment_gocardless: models/payment_transaction.py, regel 469 in 17.0 (d203ee6), regel 469 in 18.0 (e2ab18b), regel 468 in 19.0 (ce7f5a3) en regel 487 in 20.0 (688d86b)
- Broncode van de module: flexigo_payment_gocardless: i18n/flexigo_payment_gocardless.pot, regel 1233 in 17.0 (d203ee6), regel 1233 in 18.0 (e2ab18b), regel 1233 in 19.0 (ce7f5a3) en regel 1240 in 20.0 (688d86b)
- github.com/odoo/odoo/blob/17.0/odoo/http.py
- support.gocardless.com/hc/en-gb/articles/360001467265
- Broncode van de module: flexigo_payment_gocardless: const.py, regel 66 in 17.0 (d203ee6), 18.0 (e2ab18b), 19.0 (ce7f5a3) en 20.0 (688d86b)
- github.com/odoo/odoo/blob/20.0/addons/account_payment/views/account_move_views.xml
