/iban-tools

Validate IBAN numbers

Primary LanguageRubyMIT LicenseMIT

iban-tools

iban-tools is a Ruby library for manipulating and validating IBAN account numbers. You can read more about IBAN on Wikipedia

Build Status

INSTALLATION

gem install iban-tools

The gem should be compatible with most Ruby versions.

USAGE

require 'iban-tools'

IBANTools::IBAN.valid?("GB82 WEST 1234 5698 7654 32")
=> true

Advanced usage, gives more detailed error messages

IBANTools::IBAN.new("XQ75 BADCODE 666").validation_errors
=> [:unknown_country_code, :bad_check_digits]

Pretty print, canonicalize, and extract fields from an IBAN code

iban = IBANTools::IBAN.new(" ro49  aaaa 1B31007593840000")

iban.code
=> "RO49AAAA1B31007593840000"

iban.country_code
=> "RO"

iban.prettify
=> "RO49 AAAA 1B31 0075 9384 0000"

Convert local account numbers to IBAN and back to local.

iban = IBANTools::IBAN.from_local('NO', bank_code: '9710', account_number: '1112222', check_digit: '7')

iban.code
=> "NO6197101112227"

iban.to_local
=> {:bank_code=>"9710", :account_number=>"111222", :check_digit=>"7"}

Credit

Iulianu originally wrote iban-tools. The team at AlphaSights is currently maintaining the gem.