SEPA, IBAN, BIC : Actualisez vos applications développées avec Windev
le SEPA est un processus d’harmonisation des échanges bancaires (voir http://fr.wikipedia.org/wiki/Single_Euro_Payments_Area) qui va s’imposer à tous les logiciels et applications manipulant des comptes bancaires (gestion commerciales, facturation, gestion des règlements, paye, etc.). La date limite de migration est fixée pour début 2012.
Actuellement, un compte bancaire est identifié par un RIB.
Avec le SEPA, les comptes bancaires seront identifiés par un IBAN plus un BIC.
Par conséquent, il faut faire évoluer les applications qui enregistrent des RIB en rajoutant l’IBAN et le BIC selon 3 étapes :
- Modifier les bases de données pour rajouter dans toutes les tables comportant des RIB, les champs IBAN et BIC
- Modifier les écrans de saisie proposant la saisie d’un RIB pour rajouter la saisie des IBAN et BIC (remarque : il vaut mieux dans un premier temps laisser la double saisie si c’est possible).
- Modifier les traitements utilisant les RIB, en particulier des générations de fichiers d’échanges, type virements, etc…
Il est possible de calculer l’IBAN à partir du RIB. Par contre, la détermination du BIC nécessite d’avoir la liste de correspondance entre un code banque (du RIB) et le BIC.
Le code suivant permet de contrôler la clé d’un IBAN :
La fonction de calcul du modulo 97 est la suivante :
Vous souhaitez faire évoluer une application développée en Windev, contactez nous au 05 49 62 84 94 ou par email info@sealog.fr.
Ou en trois lignes de Python :
RépondreSupprimerdef verifie_iban(iban):
stringify = lambda c: c if c.isdigit() else str(ord(c) - ord("A") + 10)
digits = ''.join([stringify(char) for char in iban[4:]]
+ [stringify(char) for char in iban[:2]]) + iban[2:4]
return long(digits) % 97 == 1