Продажи и расчёты

Абонемент, оплата, чек и проход сходятся в одной операции

ProGym управляет тарифами, членством, обязательствами, оплатами, кассовыми сменами, товарами бара и электронными документами. Каждое движение имеет основание и сохраняет историю.

01

Тарифы и жизненный цикл членства

План абонемента задаёт срок, количество посещений, доступные услуги, филиалы, зоны, правила активации и заморозки. Продажа создаёт членство и записи в ledger, которые объясняют текущий баланс. Продление, пауза, возврат и корректировка выполняются отдельными операциями, поэтому исходная продажа не переписывается задним числом.

Плательщик может отличаться от участника. Это важно для детей, семей и корпоративных программ. Спонсор, родитель или компания получает своё основание оплаты, а доступ назначается фактическому посетителю. Сотрудник видит доступную ему часть финансовых данных по роли.

  • срочные и пакетные абонементы;
  • лимиты занятий и правила списания;
  • активация, продление и заморозка;
  • семейный и корпоративный плательщик;
  • история баланса с причиной каждого движения.

02

Кассовая смена и единая корзина

Администратор открывает кассовую смену, создаёт корзину и добавляет абонемент, услугу, персональную тренировку, товар бара, подарочную карту или сертификат. Система рассчитывает скидку, проверяет остаток, принимает раздельную оплату и фиксирует продажу. Закрытие смены сравнивает ожидаемые и фактические суммы.

Возврат ссылается на исходную продажу и проходит по разрешённому сценарию. Остаток товара, обязательство по абонементу, stored value и финансовая проводка корректируются согласованно. Идемпотентность защищает от двойной продажи при повторном запросе терминала или нестабильной сети.

03

Click, Payme, фискализация и Didox

Клиент может подготовить оплату в приложении через Click или Payme. Подписанный webhook подтверждает результат, а повторное уведомление не создаёт вторую оплату. Провайдерские ключи хранятся на сервере, фронтенд получает только безопасный статус операции. Конкретный клуб проходит sandbox и production-приёмку платёжного провайдера.

Для каждой кассы клуб задаёт обязательность фискализации и конкретного OFD. Завершение продажи создаёт одно фискальное обязательство в той же транзакции. Сервер фиксирует названия позиций, количество, цену, скидку, IKPU, ставку налога и способы оплаты. Глобальная скидка распределяется по строкам так, чтобы сумма чека точно совпадала с продажей.

В журнале сотрудник видит чеки в ожидании, обработке, ошибке и завершённом состоянии. Карточка показывает попытки, provider и фискальную ссылку после успешной отправки. Ошибку можно безопасно повторить, а отмена требует явного подтверждения и причины. До подключения реального OFD чек остаётся в проверяемом статусе и не выдаётся за фискализированный.

После безналичной оплаты ProGym может подготовить исходящий документ Didox в статусе черновика. Бухгалтер проверяет реквизиты, подписывает и отправляет его в штатном процессе. Входящие документы синхронизируются отдельно. Электронная подпись и финальная отправка остаются под контролем уполномоченного сотрудника.

  • подписанные и повторяемые webhook;
  • раздельный статус intent, payment и sale;
  • журнал чеков, retry, отмена и выбранный OFD;
  • серверный снимок IKPU, налога, скидки и оплаты;
  • черновик исходящего документа Didox;
  • входящие документы и статус подписи.

04

Склад, бар и подарочные инструменты

Товары клуба учитываются по складам, категориям и остаткам. При продаже бара создаётся расходное движение, при поставке фиксируется приход от поставщика. Резерв и сверка защищают от отрицательного остатка. Оборудование клуба ведётся в отдельном asset-контуре с дефектами, обслуживанием и запасными частями.

Подарочные карты, сертификаты и промокоды имеют отдельные правила выпуска, применения, срока действия и возврата. Секрет карты показывается только в нужный момент, а денежный остаток хранится как обязательство. Руководитель видит продажи, возвраты, задолженность и движение товаров в связанных отчётах.

Демонстрация

Проверьте сценарии на примере своего клуба

Подготовим роли, филиал, расписание и путь клиента. Покажем работающие функции в системе.

Покажем CRM, расписание, кассу, СКУД и приложения на сценарии вашего клуба.