protocol

iso_13616_protocol

Protocol for ISO 13616 IBAN structure parsing, checksum validation, and normalization.

Availability:
logtalk_load(iso_13616(loader))
Author: Paulo Moura
Version: 1:0:0
Date: 2026-05-05
Compilation flags:
static
Dependencies:
(none)
Remarks:
(none)
Inherited public predicates:
(none)

Public predicates

iban/4

Parses and validates an ISO 13616 IBAN atom into ISO 3166-1 alpha-2 country code, two-character check digits, and BBAN atom. Input may use lowercase letters and embedded spaces; successful results are normalized to uppercase compact components.

Compilation flags:
static
Template:
iban(IBAN,CountryAlpha2,CheckDigits,BBAN)
Mode and number of proofs:
iban(+atom,?atom,?atom,?atom) - zero_or_one

canonical_iban/2

Returns the canonical electronic-format IBAN for a valid input by removing spaces and converting letters to uppercase.

Compilation flags:
static
Template:
canonical_iban(IBAN,Canonical)
Mode and number of proofs:
canonical_iban(+atom,?atom) - zero_or_one

formatted_iban/2

Returns a valid IBAN formatted in groups of four characters separated by spaces.

Compilation flags:
static
Template:
formatted_iban(IBAN,Formatted)
Mode and number of proofs:
formatted_iban(+atom,?atom) - zero_or_one

Protected predicates

(none)

Private predicates

(none)

Operators

(none)