Portmone

Матеріал з NoDeny
Перейти до навігації Перейти до пошуку

Версия 3

Правила расщепления

Версия 3 позволяет очень гибко перераспределять поступающие средства, используя такие фичи как расщепление и мультимерчант. Правила задаются в виде 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