Module: Ibandit
- Defined in:
- lib/ibandit/german_details_converter.rb,
lib/ibandit.rb,
lib/ibandit/iban.rb,
lib/ibandit/errors.rb,
lib/ibandit/version.rb,
lib/ibandit/constants.rb,
lib/ibandit/check_digit.rb,
lib/ibandit/iban_splitter.rb,
lib/ibandit/iban_assembler.rb,
lib/ibandit/sweden/validator.rb,
lib/ibandit/sweden/bank_lookup.rb,
lib/ibandit/pseudo_iban_splitter.rb,
lib/ibandit/local_details_cleaner.rb,
lib/ibandit/pseudo_iban_assembler.rb,
lib/ibandit/sweden/local_details_converter.rb
Overview
German bank details don’t map directly to IBANs in the same way as in other countries - each bank has idiosyncracies for translating its cusomers’ bank details. These idiosyncracies are described in a document from the Bundesbank: www.bundesbank.de/Redaktion/EN/Standardartikel/Tasks/Payment_systems/iban_rules.html?nn=26102
Defined Under Namespace
Modules: CheckDigit, Constants, GermanDetailsConverter, IBANAssembler, IBANSplitter, LocalDetailsCleaner, Sweden Classes: IBAN, InvalidCharacterError, PseudoIBANAssembler, PseudoIBANSplitter, UnsupportedAccountDetails
Constant Summary collapse
- VERSION =
"1.21.0"
Class Attribute Summary collapse
-
.bic_finder ⇒ Object
Returns the value of attribute bic_finder.
-
.modulus_checker ⇒ Object
Returns the value of attribute modulus_checker.
Class Method Summary collapse
- .find_bic(country_code, national_id) ⇒ Object
- .structures ⇒ Object
- .translate(key, options = {}) ⇒ Object
Class Attribute Details
.bic_finder ⇒ Object
Returns the value of attribute bic_finder.
24 25 26 |
# File 'lib/ibandit.rb', line 24 def bic_finder @bic_finder end |
.modulus_checker ⇒ Object
Returns the value of attribute modulus_checker.
24 25 26 |
# File 'lib/ibandit.rb', line 24 def modulus_checker @modulus_checker end |
Class Method Details
.find_bic(country_code, national_id) ⇒ Object
26 27 28 29 30 |
# File 'lib/ibandit.rb', line 26 def find_bic(country_code, national_id) raise NotImplementedError, "BIC finder is not defined" unless @bic_finder @bic_finder.call(country_code, national_id) end |
.structures ⇒ Object
32 33 34 35 36 37 |
# File 'lib/ibandit.rb', line 32 def structures @structures ||= YAML.safe_load( File.read(File.("../data/structures.yml", __dir__)), permitted_classes: [Range, Symbol], ) end |
.translate(key, options = {}) ⇒ Object
39 40 41 |
# File 'lib/ibandit.rb', line 39 def translate(key, = {}) I18n.translate(key, scope: [:ibandit], **.merge(raise: true)) end |