View Source QRNBU.Validators.FunctionCode (NBU payment QR v0.3.3)
Validator for payment function codes.
Validates function codes that specify the type of payment transaction.
Summary
Functions
@spec valid_functions() :: [atom()]
Returns list of valid function codes.
Validates function code.
Valid Codes
:uct- Ukrainian Credit Transfer (default):ict- International Credit Transfer:xct- Cross-border Credit Transfer
Examples
iex> QRNBU.Validators.FunctionCode.validate(:uct)
{:ok, :uct}
iex> QRNBU.Validators.FunctionCode.validate(:ict)
{:ok, :ict}
iex> QRNBU.Validators.FunctionCode.validate(:xct)
{:ok, :xct}
iex> QRNBU.Validators.FunctionCode.validate(:invalid)
{:error, "Invalid function code. Must be one of: uct, ict, xct"}
iex> QRNBU.Validators.FunctionCode.validate("uct")
{:error, "Function code must be an atom"}