Проверяйте правила акции на сервере
Не принимайте сумму скидки, доступность промокода или право на бонус из клиентского запроса. Сервер должен проверять срок действия, минимальную корзину, категории товаров и условия для пользователя.
Защитите повторное применение от гонок и дублей. Повтор запроса после сетевой ошибки не должен списывать бонус или создавать несколько скидок.
Ограничьте перебор и повторное получение
Ограничивайте число проверок кода и выдач бонуса по нескольким измерениям: аккаунт, сессия, IP и акция. Учитывайте корпоративные сети и законные семейные/командные сценарии.
Не сообщайте, существует ли код или почему именно он отклонён, если это помогает перебирать варианты.
Измеряйте эффект для маркетинга
Сверяйте использование кода с новыми и повторными заказами, маржой и долей возвратов. Рост числа отклонённых запросов не означает автоматически предотвращённые потери.
После запуска новых ограничений проверьте поддержку клиентов, интеграции и работу промо-кампаний.
Частые вопросы
Достаточно ли сделать промокод сложным?
Нет. Сложный код снижает угадываемость, но не предотвращает утечки, повторное применение и автоматическое создание аккаунтов.
Можно ли ограничить акции только по IP?
IP полезен как один сигнал, но общий адрес может принадлежать многим покупателям, а бот может менять IP. Используйте несколько факторов.