Начисление и списание баллов

Баллы клиента появляются и тратятся в двух понятных точках: начисление происходит при оплате, списание — при оплате через бота в ноде «Оплата». Разберём, как устроены оба процесса и что важно учесть при настройке.

Начисление баллов

Баллы начисляются клиенту при оплате. Когда покупка проходит успешно, клиент получает кэшбэк — долю от суммы покупки в виде баллов, по правилам вашей программы лояльности.

  • Начисление привязано к успешной оплате.
  • Размер кэшбэка зависит от настроек программы и уровня клиента.
  • Каждое начисление записывается отдельной строкой в леджере.

Начисление идемпотентное: если одна и та же оплата обработается повторно, баллы не удвоятся. Это защищает баланс клиента от ошибочных дублей.

Списание баллов (скидка в ноде «Оплата»)

Накопленные баллы клиент тратит как скидку при оплате через бота — в ноде «Оплата» сценария. Когда бот выставляет счёт, часть суммы можно покрыть баллами, и клиент платит меньше.

  1. Добавьте ноду «Оплата» в сценарий

    В конструкторе бота поставьте ноду оплаты там, где клиент должен оплатить. См. Нода «Оплата».

  2. Включите оплату баллами

    В настройках ноды разрешите списывать баллы как скидку к сумме счёта.

  3. Клиент оплачивает

    При оплате накопленные баллы уменьшают сумму к оплате по правилам программы.

Порядок списания: FIFO

Баллы списываются по принципу FIFO (first in, first out) — первыми тратятся те, что начислены раньше всего. Это честный и предсказуемый порядок: сначала уходят «старые» баллы, потом более свежие.

Принцип FIFO важен, если баллы могут сгорать со временем: раньше всего тратятся самые старые начисления, поэтому клиент не теряет их зря.

Как всё связано

ТочкаЧто происходит
Успешная оплата заказаНачисление кэшбэка баллами
Оплата через ноту «Оплата» ботаСписание баллов как скидки (FIFO)
Журнал операций (леджер)Каждая операция фиксируется отдельной строкой

Пример использования

Клиент оплатил заказ и получил кэшбэк баллами — это начисление. В следующий раз он покупает через бота: в ноде «Оплата» включено списание баллов, и накопленные баллы уменьшают сумму счёта. Сначала уходят самые ранние начисления (FIFO), а вся история операций остаётся видна в леджере.