About Ukrainian Payment Qr Invoices
IbanEx is an Elixir library for parsing, validating, checking, and formatting IBAN numbers. It is for developers building applications that need to handle IBAN data and report validation errors.
Key features
- 01Parse IBAN values
- 02Validate supported country codes
- 03Check IBAN length and checksum
- 04Format IBAN numbers
Use cases
- 01Validate IBANs entered in a payment form
- 02Extract country and bank details from an IBAN
Configuration
Remote servers need no local install. Pick your client, then copy the config or install in one click.
https://mcp.pmnt.appclaude mcp add --transport http iban-ex https://mcp.pmnt.app{"mcpServers":{"iban-ex":{"type":"http","url":"https://mcp.pmnt.app"}}}Open in Cursor{"servers":{"iban-ex":{"type":"http","url":"https://mcp.pmnt.app"}}}Open in VS Code{"mcpServers":{"iban-ex":{"type":"http","url":"https://mcp.pmnt.app"}}}{"mcpServers":{"iban-ex":{"serverUrl":"https://mcp.pmnt.app"}}}Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.
Tools
1| Parameter | Type | Required | Description |
|---|---|---|---|
| amount | string | No | |
| currency | enum | No | UAH |
| iban | string | Yes | |
| purpose | string | Yes | |
| recipient | string | Yes | |
| tax_id | string | Yes |
Details
From the project READMEIbanEx
Elixir library for working with IBAN numbers (parsing, validating, checking and formatting)
What is an IBAN?
IBAN (which stands for International Bank Account Number) is an internationally agreed code made up of up to 34 letters and numbers which helps banks make sure that international transfers are processed correctly.
In just a few letters and numbers, the IBAN captures all of the country, bank, and account details you need to send or receive money internationally. This system is used throughout Europe, and also recognised in some areas of the Middle East, North Africa and the Caribbean. Find IBAN examples for every country where it's used.
HowTo Use
Successfull case to parse IBAN
iex> "FI2112345600000785" |> IbanEx.Parser.parse()
{:ok, %IbanEx.Iban{
iban: "FI2112345600000785",
country_code: "FI",
check_digits: "21",
bank_code: "123456",
branch_code: nil,
national_check: "5",
account_number: "0000078"
}}
Errors cases of IBAN parsing
To check IBAN's country is supported
iex> {:error, unsupported_country_code} = IbanEx.Parser.parse("ZU21NABZ00000000137010001944")
{:error, :unsupported_country_code}
iex> IbanEx.Error.message(unsupported_country_code)
"Unsupported country code"
Validate and check IBAN length
iex> {:error, invalid_length} = IbanEx.Parser.parse("AT6119043002345732012")
{:error, :invalid_length}
iex> IbanEx.Error.message(invalid_length)
"IBAN violates the required length"
iex> {:error, length_to_long} = IbanEx.Validator.check_iban_length("AT6119043002345732012")
{:error, :length_to_long}
iex> IbanEx.Error.message(length_to_long)
"IBAN longer then required length"
iex> {:error, length_to_short} = IbanEx.Validator.check_iban_length("AT61190430023457320")
{:error, :length_to_short}
iex> IbanEx.Error.message(length_to_short)
"IBAN shorter then required length"
Validate IBAN checksum
iex> {:error, invalid_checksum} = IbanEx.Parser.parse("AT621904300234573201")
{:error, :invalid_checksum}
iex> IbanEx.Error.message(invalid_checksum)
"IBAN's checksum is invalid"
Installation
The package can be installed by adding iban_ex to your list of dependencies in mix.exs:
def deps do
[
{:iban_ex, "~> 0.1.8"}
]
end
Documentation can be generated with ExDoc and published on HexDocs. Once published, the docs can be found at https://hexdocs.pm/iban_ex.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.