Portmone
Версия 3
Правила расщепления
Версия 3 позволяет очень гибко перераспределять поступающие средства, используя такие фичи как расщепление и мультимерчант. Приведем виртуальный пример для демонстрации возможностей:
Если группа клиента 1 или 5 или 10, то распределить платеж между мерчантами М1, M2, M3 в соотношении 20%-30%-50% Если группа иная, но установлено поле ФОП, то разпределить платеж между мерчантами M2 и M4 в соотношении 50%-50% Если не ФОП и при этом группа 7, то все финансы перечислить на M5 Если не ФОП и при этом группа 8, то все финансы перечислить на M6 Всех остальных делить между M5 и M6 в соотношении 10%-90%
Правила задаются в виде JSON:
[
{
"field_name": "grp",
"field_value": [1, 2, 13],
"params": [
{
"percent": 100,
"payee_id": 123456,
"description": "Доступ до мережі Інтернет для {{user.fio}}"
}
]
},
{
"field_name": "_district",
"field_value": ["obolon"],
"params": [
{
"percent": 10,
"payee_id": 1000,
"description": "Доступ до мережі Інтернет ({{user.ppc}})"
},
{
"percent": 20,
"payee_id": 1001,
"description": "Послуга техпідтримки"
},
{
"percent": 70,
"payee_id": 1002,
"description": "Послуга відпочинку"
}
]
},
{
"params": [
{
"percent": 100,
"payee_id": 1005,
"description": "Доступ до мережі Інтернет"
}
]
}
]
Правило - это блок {...} в котором находятся 3 параметра:
- field_name (необязательное)
- field_value (необязательное)
- params (обязательное) - параметры расщепления
Правила проверяются сверху вниз, и если правило совпадает - модуль формирует правила расщепления и прекращает обработку правил.
В примере выше, если група абонента 1, 2 или 13, то расщепление фактически выключается, 100% суммы оплаты пойдет мерчанту 123456. Если же абонент не находится в этих группах, то проверяется, что его допполе _district имеет значение obolon. В этом случае платеж распределяется между тремя мерчантами 1000, 1001 и 1002. Во всех остальных случаях 100% суммы оплаты пойдет мерчанту 1005