Ukrainian Payment Qr Invoices
About
Elixir library for working with IBAN numbers (parsing, validating, checking and formatting)
Details
- Author
- negrienko
- Downloads
- 254
- Categories
- Other
Jump to
—
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Ukrainian Payment Qr InvoicesCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
—
create_invoice
Creates a payment invoice for a Ukrainian business or sole proprietor (FOP). The caller provides their own business name, tax ID (RNOKPP/EDRPOU) and IBAN; the tool validates them, detects the bank from the National Bank of Ukraine (NBU) registry, and returns an invoice plus a payment page encoding an NBU-standard QR code (Ukraine's official open format for IBAN bank transfers). The customer scans the QR with any Ukrainian banking app and pays by standard bank transfer. This tool does not process or hold funds and never handles card data. Use this when a user wants to invoice a customer or request a bank-transfer payment in Ukraine.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"ukrainian payment qr invoices": {
"pmnt.app": {
"url": "https://mcp.pmnt.app"
}
}
}
}
McpServers
{
"pmnt.app": {
"url": "https://mcp.pmnt.app"
}
}
IbanEx
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>.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



