world.id

package world.id

Members list

Type members

Classlikes

object BIC extends Scheme[Institution]

A business identifier code under ISO 9362:2022 clause 5: four characters of party prefix, two of country, two of suffix, and an optional three-character branch. ISO 20022's BICFIIdentifier pattern is stricter and rejects codes ISO 9362 itself prints as examples, so a code accepted here can still fail a 20022 schema. Values are Id[BIC].

A business identifier code under ISO 9362:2022 clause 5: four characters of party prefix, two of country, two of suffix, and an optional three-character branch. ISO 20022's BICFIIdentifier pattern is stricter and rejects codes ISO 9362 itself prints as examples, so a code accepted here can still fail a 20022 schema. Values are Id[BIC].

Attributes

Supertypes
class Scheme[Institution]
class Object
trait Matchable
class Any
Self type
BIC.type
object Domain

Parsing, forms, and comparison for Domain.

Parsing, forms, and comparison for Domain.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
Domain.type
object Email

Parsing, the derived forms, and the two comparisons for Email.

Parsing, the derived forms, and the two comparisons for Email.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
Email.type
object IBAN extends Scheme[Account]

An international bank account number in its electronic form - no spaces, upper case. Parsing proves two things and no more: the number fits the ISO 13616 structure its country registers, and it passes the ISO 7064 MOD 97-10 check. It does not prove the account exists, and an IBAN is not a source of bank or branch identity, so nothing here decomposes one. Values are Id[IBAN].

An international bank account number in its electronic form - no spaces, upper case. Parsing proves two things and no more: the number fits the ISO 13616 structure its country registers, and it passes the ISO 7064 MOD 97-10 check. It does not prove the account exists, and an IBAN is not a source of bank or branch identity, so nothing here decomposes one. Values are Id[IBAN].

Attributes

Supertypes
class Scheme[Account]
class Object
trait Matchable
class Any
Self type
IBAN.type
object NUBAN

Parsing and the check arithmetic for NUBAN.

Parsing and the check arithmetic for NUBAN.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
NUBAN.type
object Phone

Parsing, presentation, and the mobile-range advisory for Phone.

Parsing, presentation, and the mobile-range advisory for Phone.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
Phone.type
object Reference extends Scheme[Reference]

An ISO 11649 creditor reference: the RF payment reference an invoice carries so the payment that comes back can be matched to it by machine. A creditor mints one from its own invoice number with Reference.of; a payer's incoming reference is checked with parse. Values are Id[Reference].

An ISO 11649 creditor reference: the RF payment reference an invoice carries so the payment that comes back can be matched to it by machine. A creditor mints one from its own invoice number with Reference.of; a payer's incoming reference is checked with parse. Values are Id[Reference].

Attributes

Supertypes
class Scheme[Reference]
class Object
trait Matchable
class Any
Self type
Reference.type

Types

type BIC = BIC.type

The scheme singleton, for Id[BIC] and kind-bounded slots.

The scheme singleton, for Id[BIC] and kind-bounded slots.

Attributes

opaque type Domain

A DNS domain name in lower case. An internationalised domain has two written forms - bücher.example and its Punycode xn--bcher-kva.example - and this type keeps whichever was given, so == compares the two as the different spellings they are and same compares them as the one domain they name. Instances via Domain.

A DNS domain name in lower case. An internationalised domain has two written forms - bücher.example and its Punycode xn--bcher-kva.example - and this type keeps whichever was given, so == compares the two as the different spellings they are and same compares them as the one domain they name. Instances via Domain.

Attributes

opaque type Email

An email address in RFC 5321 addr-spec form, internationalised per RFC 6531. The local part is held exactly as given and the domain in lower case, so == compares spellings and not mailboxes: use sameMailbox to ask whether two addresses reach the same place, and key to group addresses that probably belong to one person. Instances via Email.

An email address in RFC 5321 addr-spec form, internationalised per RFC 6531. The local part is held exactly as given and the domain in lower case, so == compares spellings and not mailboxes: use sameMailbox to ask whether two addresses reach the same place, and key to group addresses that probably belong to one person. Instances via Email.

Attributes

type IBAN = IBAN.type

The scheme singleton, for Id[IBAN] and kind-bounded slots.

The scheme singleton, for Id[IBAN] and kind-bounded slots.

Attributes

opaque type NUBAN

A Nigerian bank account number under the CBN's NUBAN standard. The check runs over the issuing institution's code as well as the account, and that code is never printed with the account, so an application must supply it from its own records: a NUBAN on its own cannot be checked by anyone. That is why this is not a Scheme - its parse takes two arguments. Instances via NUBAN.

A Nigerian bank account number under the CBN's NUBAN standard. The check runs over the issuing institution's code as well as the account, and that code is never printed with the account, so an application must supply it from its own records: a NUBAN on its own cannot be checked by anyone. That is why this is not a Scheme - its parse takes two arguments. Instances via NUBAN.

Attributes

opaque type Phone

A telephone number in E.164 form, +254712345678. That string is the value, so equality, ordering and storage all behave as the wire form does, and the dialling and display forms are derived from it. Instances via Phone.

A telephone number in E.164 form, +254712345678. That string is the value, so equality, ordering and storage all behave as the wire form does, and the dialling and display forms are derived from it. Instances via Phone.

Attributes

type Reference = Reference.type

The scheme singleton, for Id[Reference] and kind-bounded slots.

The scheme singleton, for Id[Reference] and kind-bounded slots.

Attributes