Inter-Actief / amelie

De website van Inter-/Actief/. Vernoemd naar de film Amélie.
https://www.inter-actief.utwente.nl/
BSD 3-Clause "New" or "Revised" License
10 stars 5 forks source link

SEPA check does not support "new" BIC numbers #889

Open WJ44 opened 1 week ago

WJ44 commented 1 week ago

Currently, the check whether bank accounts are from SEPA countries during member signup checks BIC numbers against a static list (https://github.com/Inter-Actief/amelie/blob/main/amelie/members/forms.py). This makes it reject any bank accounts that usen a newer BIC number. Additionally, this check would ideally check whether the bank supports SEPA direct debits, since not all SEPA banks support direct debits. This webiste manages to check this somehow (it shows it when you try to validate an IBAN) so it should be possible https://www.ibancalculator.com/.

Kurocon commented 1 week ago

BIC codes, if not present in the preconfigured setting in Amelie (so dutch bank accounts don't have to enter BIC codes), are checked against a CSV file with valid codes: https://github.com/Inter-Actief/amelie/blob/main/amelie/members/forms.py#L628

The CSV file is periodically refreshed by a cronjob: https://github.com/Inter-Actief/amelie/blob/main/amelie/members/management/commands/update_bic_csv.py

ibancalculator.com makes use of a private dataset, which we can access for 500 euro per year as a dataset, or via an API which is also paid ( https://en.iban-bic.com/preise0.html ). I don't think our use case validates paying for that information. If there is a public listing of which banks support SEPA debits, I'm not aware of it.

This issue was supposed to be fixed by implementing #516 Digital Mandates, but that work has unfortunately stalled before being brought into production. Also, in my personal opinion the implementation is quite obtuse and difficult to understand, so I don't know if we want to continue this given the perpetual lack of interest in the WWW and other technical committees.

We could look into other ways of implementing mandates, maybe via a third party provider or something else, but that will require research into the options first.

WJ44 commented 1 week ago

That makes sense. The reason for creating this issue was some new students having trouble signing up with their BIC number.

The direct debit thing is since there were a lot of rejections when the contribution was debited, each of which costs us 40 cents, but this is indeed not worth the money.

A third party provider could perhaps be interesting, also since direct debits through the Rabobank are quite expensive as well. I will discuss with Jarek whether he thinks it is worth looking into. Otherwise, the hassle of the status quo is not too bad, since we have to deal with rejected debits for other reasons anyway.

In the meantime it might be worth compiling a list of known banks that do not support direct debits that we have run into ourselves.

Kurocon commented 1 week ago

A list of "known bad BICs" is an easy win indeed, if the treasurer has some records of which banks/IBANs are not working then we can make that addition easily