diff --git a/lib/iban-tools/conversion_rules.yml b/lib/iban-tools/conversion_rules.yml index 9076a76..f19595d 100644 --- a/lib/iban-tools/conversion_rules.yml +++ b/lib/iban-tools/conversion_rules.yml @@ -62,6 +62,10 @@ bank_code: 4!a account_number: 14!c +'BJ': + bank_code: 2!c + account_number: 22!n + 'CH': bank_code: 5!n account_number: 12!c diff --git a/lib/iban-tools/rules.yml b/lib/iban-tools/rules.yml index 5b1725b..7fd942c 100644 --- a/lib/iban-tools/rules.yml +++ b/lib/iban-tools/rules.yml @@ -45,6 +45,11 @@ length: 22 bban_pattern: '[A-Z]{4}[A-Z0-9]{14}' +'BJ': + # Benin + length: 28 + bban_pattern: '[A-Z0-9]{2}[0-9]{22}' + 'BR': # Brazil length: 29 diff --git a/spec/iban-tools/conversion_spec.rb b/spec/iban-tools/conversion_spec.rb index d66e472..2db66a4 100644 --- a/spec/iban-tools/conversion_spec.rb +++ b/spec/iban-tools/conversion_spec.rb @@ -13,6 +13,7 @@ module IBANTools 'BE68539007547034' => {bank_code: '539', account_number: '75470', check_digits: '34'}, 'BG80BNBG96611020345678' => {bank_code: 'BNBG', branch_code: '9661', account_type: '10', account_number: '20345678'}, 'BH67BMAG00001299123456' => {bank_code: 'BMAG', account_number: '1299123456'}, + 'BJ66BJ0610100100144390000769' => {bank_code: 'BJ', account_number: '610100100144390000769'}, 'CH9300762011623852957' => {bank_code: '762', account_number: '11623852957'}, 'CY17002001280000001200527600' => {bank_code: '2', branch_code: '128', account_number: '1200527600'}, 'CZ6508000000192000145399' => {bank_code: '800', account_prefix: '19', account_number: '2000145399'}, diff --git a/spec/iban-tools/iban_spec.rb b/spec/iban-tools/iban_spec.rb index 888070f..357efb6 100644 --- a/spec/iban-tools/iban_spec.rb +++ b/spec/iban-tools/iban_spec.rb @@ -102,6 +102,7 @@ module IBANTools "BE68539007547034", "BG80BNBG96611020345678", "BH67BMAG00001299123456", + "BJ66BJ0610100100144390000769", "BR9700360305000010009795493P1", "CH9300762011623852957", "CY17002001280000001200527600",