Контроли, о которых спрашивает регулятор, встроены в расчётный период.
Не документ политики, написанный задним числом, чтобы описать случившееся. А шлюз, который период обязан пройти прежде, чем будет проведён, и запись о том, что он его прошёл.
Два человека — иначе проводки не будет.
Два решения, двигающие деньги, — изменение плана и проведение периода — каждое требует второго оператора. Отказ живёт и в базе данных, и в приложении, поэтому он переживает и прямой вызов API.
Владелец
Администратор плана — исполнитель
Финансы — контролёр
Комплаенс
Поддержка
Маркетинг
Раздел, до которого роль оператора не дотягивается, показывает уведомление о доступе, а не данные. Разница важна: консоль, которая рисует цифры и прячет кнопки, цифры уже раскрыла.
Жёсткий потолок совокупных выплат.
Совокупные выплаты за период соизмеряются с денежными продажами того же периода за вычетом возвратов. Выше потолка период вообще нельзя утвердить — его не помечают и о нём не предупреждают. Его отклоняют.
Это то число, которое решает, способен ли план вознаграждений арифметически заплатить то, что обещает. План, выплаты которого могут превысить его продажи, не щедр — его финансирует следующая волна. Измерять это каждый период, в самом пути утверждения, против продаж за вычетом возвратов — это и есть разница между «знать» и «узнать потом».
internal/runs · program config cap_pct_bps
Раскрытие о доходах, посчитанное по всем.
Участники, получившие доход, не получившие, сумма, среднее, медиана, 90-й и 99-й процентиль и максимум — за календарный год, по каждой зарегистрированной позиции.
- 01
Те, кто ничего не заработал, входят в знаменатель
Считается каждый участник, существовавший в раскрываемом году, а тот, кто не заработал ничего, считается нулём. Выбрасывание таких участников — стандартный способ, которым этот отчёт приукрашивает программу, и именно поэтому медиана может читаться десятикратно завышенной. - 02
Отрицательный год — это ноль, а не отрицательный доход
Если списания превышают доход участника за год, такой участник раскрывается с нулём. Ничей убыток не зачитывается против чужого дохода, чтобы улучшить среднее. - 03
Прошлый год не размывается
Знаменатель — участники, зарегистрированные до конца раскрываемого года, поэтому публикация распределения за 2025 год в 2026-м не улучшается втихую за счёт всех, кто присоединился с тех пор. - 04
Оно вычисляется, а не пишется
Оно выходит из той же книги, из которой вышли выплаты. Именно это делает его подтверждением, а не маркетингом, и именно поэтому условия платформы могут требовать публикации от любого оператора, заявляющего что-либо о доходах.
internal/exposure · internal/report
Обязательства, которые можно разложить по срокам и отдать бухгалтеру.
Сколько должны, как давно должны и сходятся ли книга и выплаты между собой.
Возрастная структура
internal/exposure
Журнал проводок, со знаками как надо
internal/report
Налоговые справки по каждому участнику
internal/report
Перекрёстная сверка обязательств
internal/report
Кто может участвовать и на каком основании.
Географическая политика, поставляемая выключенной, режим наблюдения, показывающий, что было бы, если бы её включили, и проверка личности, которая хранит решение, а не документ.
Определение страны происходит внутри собственной базы данных платформы, а не через сторонний запрос на пути обработки. Это осознанное комплаенс-решение: ответ, приходящий по незашифрованному HTTP с публичного эндпойнта с лимитом запросов, может переписать любой на маршруте, а значение, которое способен переписать атакующий, может влиять на скоринг риска, но не должно решать, кто может войти в аккаунт.
Каждая заблокированная страна несёт код причины — регуляторную, санкционную, ожидание лицензии или коммерческую, — чтобы через год список смог защитить и тот, кого в комнате тогда не было. Исключения оформляются точечными изъятиями с именем ответственного, а не правкой исходных данных.
Проверка личности идёт на вашем собственном аккаунте у провайдера. На платформу возвращаются решение и необратимый идентификатор — достаточный, чтобы обеспечить «один человек — одна позиция», и не более. XEX не хранит документы ваших участников, потому что самый безопасный способ хранить документы — не хранить их.
internal/geo · internal/verification
Маркетинг, который обязан пройти согласование перед выходом.
Заявление, из-за которого программу закрывают, почти никогда не делает оператор. Его делает участник, в групповом чате, о доходах.
Материалы проходят согласование, которое добавляет к тексту комплаенс-раскрытие — один раз и идемпотентно, — поэтому согласованный материал не может разойтись без него. Командные объявления уходят из согласованных шаблонов, а не свободным текстом. Маркетинг не может согласовать собственный материал; это граница роли, а не политика.
Ничто из этого не мешает участнику писать что угодно в своём аккаунте. Что это даёт — так это согласованный корпус материалов, запись о том, что и кем было согласовано, и защитимый ответ, когда кто-нибудь спросит, что ваша программа говорила людям.
internal/marketing · /admin/marketing
Чего мы не заявляем.
Самый полезный абзац на этой странице — и тот, который большинство поставщиков опускает.
Прогоните это в песочнице, прежде чем верить нам на слово.
Песочница — это весь продукт. Настройте план, купите пакет как участник, посчитайте период и прочитайте раскрытие, которое он выдаёт.