Формат комиссий

Комиссии бывают фиксированными, плавающими, зависимыми и комбинированными. Для всех комиссий, кроме фиксированных, может быть указано минимальное и/или максимальное значение.

С примерами всех перечисленных комиссий можно ознакомиться здесь.

Пробелы в примерах указаны только для удобства их восприятия. В рабочих версиях файлов их быть не должно.


Фиксированная комиссия

Фиксированная комиссия указывается в виде положительного числа.

Например: 50.


Плавающая комиссия

Плавающая комиссия это фиксированная комиссия, за которой идет знак процентов.

Эта комиссия указывается в виде массива, состоящего из 2-х элементов. В первом элементе массива должен быть знак % (процентов), а во втором, положительное число, указывающее на размер комиссии.

Например, комиссия в 3.1% будет иметь такой вид: ["%", 3.1].


Зависимая комиссия

Зависимая комиссия это такая комиссия, размер которой отличается для различных сумм (зависит от них).

Эта комиссия указывается в виде массива, индексами элементов которого выступают суммы, начиная с которых действует указанная в значении этого элемента массива комиссия.

Например, комиссия в 1% для сумм 1000 и более единиц будет иметь такой вид: {"1000": ["%", 1]}.

А, если для сумм меньше 1000 действует комиссия 2% то, она будет иметь такой вид: {"0": ["%", 2], "1000": ["%", 1]}.


Комбинированная комиссия

Комбинированная комиссия это такая комиссия, которая состоит из 2-х различных комиссий (чаще всего плавающей и фиксированной).

Эта комиссия указывается в виде массива, состоящего из 3-х элементов. В первом элементе массива должен быть знак + (плюс), а во втором и третьем элементах размеры различных комиссий.

Например, комиссия, которая состоит из числа 50 (фиксированная) и 3.1% (плавающая) будет иметь такой вид: ["+", 50, ["%", 3.1]].


Минимальные и максимальные значения комиссий

Если комиссия, не должна быть меньше или больше определенного числа то, это число является минимальным или максимальным значением комиссии.

Минимальное значение комиссии указывается в виде массива, состоящего из 3-х элементов. В первом элементе массива должен быть знак < (меньше), во втором элементе размер комиссии, а в третьем, минимальное значение.

Максимальное значение комиссии указывается в виде массива, состоящего из 3-х элементов. В первом элементе массива должен быть знак > (больше), во втором элементе размер комиссии, а в третьем, максимальное значение.

Если, одновременно необходимо указать минимальное и максимальное значение комиссии то, они указываются в виде массива, состоящего из 4-х элементов. В первом элементе массива должен быть знак | (вертикальная табуляция), во втором элементе размер комиссии, а в третьем и четвертом элементах, минимальное и максимальное значения.

Например, комиссии Webmoney составляет 0.8% от суммы транзакции но, для WMR она не может быть меньше чем 0.01 или больше чем 1500, в таком случае, комиссия должна быть указана так: ["|", ["%", 0.8], 0.01, 1500].

Таким образом, если 0.8% от суммы транзакции будет меньше чем 0.01 то, ее размер будет составлять 0.01, а если 0.8% от суммы транзакции будет больше чем 1500 то, ее размер будет составлять 1500.


Примеры комиссий

5
фиксированная;
["%", 0.5]
плавающая, 0.5%;
{"0": 5, "1000": 0}
зависимая, для сумм меньше 1000 комиссия будет составлять 5 единиц валюты, а для сумм больше или равно 1000 комиссия отсутствует;
["+", ["%", 1], 5]
комбинированная, 1% + 5;
["<", ["%", 0.5], 0.01]
если 0.5% от суммы будет меньше чем 0.01 то, комиссия будет равна 0.01, иначе 0.5%;
["|", ["%", 0.8], 0.01, 1500]
комиссия Webmoney для WMR;
[">", ["+", {"0": ["%", 0.5]}, {"100": ["%", 0.15]}], 3]
формат комиссии Pecunix, 0.5% от суммы платежа до 100 GAU и 0.15% от любой суммы, начиная со 100 GAU, но не более чем 3 GAU.