В статье используются следующие термины:
Проблема
Рефереру не было зачислено партнёрское вознаграждение.
Причина
Срок действия реферальной программы истёк, после чего она была продлена. Но вознаграждение не начислилось автоматически.
Диагностика
Вмешательство в базу данных предполагает потенциальный риск. Мы не рекомендуем вносить ручные правки в базу, поскольку это может нарушить корректную работу платформы.
Перед внесением изменений в БД создайте резервную копию платформы.
Чтобы подтвердить причину, проверьте в БД, есть ли невыплаченные записи (payment = NULL) за проверяемый период:
- Подключитесь к серверу с платформой по SSH. Подробнее о подключении по SSH см. в статье Настройка рабочего места.
- Подключитесь к БД:
MySQLmysql billmgr - Выполните запрос:
Пояснения:SELECT * FROM referralprogram_reward WHERE payment IS NULL and cdate = '2026-04-01'2026-04-01— дата партнёрского вознаграждения. Например,cdate = '2026-04-01'— вознаграждение за апрель по расходам марта.
Пустой вывод означает, что запись о вознаграждении не создана. Это подтверждает проблему.
Решение
Чтобы решить проблему, повторно вызовите функцию affiliatemonthly:
- Подключитесь к серверу с платформой по SSH. Подробнее о подключении по SSH см. в статье Настройка рабочего места.
- Выполните команду:
Пояснения:/usr/local/mgr5/sbin/billmaintain --command affiliatemonthly --date 2026-03-01 --params nopayments--date 2026-03-01— команда начислит вознаграждение за апрель по расходам марта;--params nopayments— параметр указывает, что не требуется производить выплату, только сделать запись в таблицу referralprogram_reward.
- Выполните инструкцию из раздела Диагностика, чтобы проверить созданные записи.
Запись означает, что вознаграждение было начислено, но не выплачено.Пример выводаSELECT * FROM referralprogram_reward WHERE payment IS NULL and cdate = '2026-04-01' \G *************************** 1. row *************************** id: 19844 referralprogram: 3 referralprogram_rule: 3 referral_account: 39223 referer_account: 39652 amount: 4.5000 currency: 50 expense: 575817 payment: NULL cdate: 2026-04-01 *************************** 2. row *************************** - Зачислите платежи:
Пояснения:/usr/local/mgr5/sbin/billmaintain --command referralpayment --date 2026-03-01--date 2026-03-01— период зачисления платежей. Параметр указывается за предыдущий месяц. Чтобы получитьcdate = '2026-04-01', укажите--date 2026-03-01.
Может быть полезно
Связанные статьи: