Skip to content

espindola/iban

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IBAN

Crates.io Docs Coverage Status Licensed

This is a crate for working with International Bank Account Numbers (IBANs).

An IBAN is an international standard for identifying bank accounts. It consists of a country code, two check digits, and a Basic Bank Account Number (BBAN) that includes a bank identifier, a branch identifier, and a checksum (if applicable).

This crate provides a simple implementation of IBANs. You can construct an IBAN using a string, and then query it for its country code, and check digits. You can also obtain spaced or electronic formatting using the Display, Debug, Deref, or AsRef implementations.

This crate also provides a Bban struct that represents the BBAN portion of an IBAN. You can construct a BBAN using the Iban::bban function, and then query it for it's bank identifier, branch identifier, or checksum.

Usage

Add library as a dependency to Cargo.toml.

...
[dependencies]
iban = "0.1"
...

Construct a Iban type by using str::parse, FromStr::from_str, or Iban::parse.

use iban::{Bban, Iban};
let iban: Iban = "AA110011123Z5678"
    .parse()
    .unwrap_or_else(|err| {
        // This example panics, but you should handle the error cases properly.
        panic!("invalid iban: {err}");
    });

let country_code: &str = iban.country_code();
let bban: Bban = iban.bban();

let bank_identifier: Option<&str> = bban.bank_identifier();

References

About

IBAN parsing library

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 100.0%