Приём оплаты
Клиент выбирает способ оплаты — СБП, карту, криптовалюту или звёзды. Через какого провайдера пройдёт платёж, решаете вы. Всё настраивается в Настройки → Платежи.
Какие способы бывают
| Способ | Провайдер | Где видит клиент |
|---|---|---|
| СБП | YooKassa или Platega | сайт и Telegram |
| Банковская карта | YooKassa или Platega | сайт и Telegram |
| Криптовалюта, международная карта, ЕРИП | Platega | сайт и Telegram |
| CryptoBot | CryptoBot, от 10 ₽ | сайт и Telegram |
| Telegram Stars | ваш бот | только Mini App |
СБП у клиента всегда стоит первым и выбран по умолчанию. «СБП» и «Карта» показываются по одному разу, даже если подключены оба провайдера. Способ без подключённого провайдера клиенты не видят.
Шаг 1. Подключения
Откройте вкладку «Подключения», раскройте нужного провайдера, заполните ключи и включите переключатель справа. В конце нажмите «Сохранить платежи» — способы оплаты и подключения сохраняются вместе.
YooKassa

В личном кабинете YooKassa откройте Интеграция → Ключи API. Скопируйте Shop ID и выпустите секретный ключ.
Вставьте их в админку.
Email для чеков заполните, если YooKassa формирует для вас чеки. Этот адрес попадает в чек к каждому платежу.
Скопируйте адрес уведомлений (https://ваш-домен/api/webhooks/yookassa) и вставьте его в YooKassa: Интеграция → HTTP-уведомления. Отметьте события:
payment.succeededиpayment.canceled— обязательно;refund.succeeded— чтобы возвраты отмечались сами;payment_method.active— если будете подключать автопродление.
Без адреса уведомлений оплаты зависают
Если адрес не указан в YooKassa, деньги спишутся, а доступ клиент получит только после ручной проверки. Reefox Panel каждые 5 минут сам опрашивает YooKassa по неоплаченным счетам, но только пока счёт жив. Это страховка, а не замена уведомлениям.
Platega

- Вставьте Merchant ID и секретный ключ из кабинета Platega.
- Отметьте способы, которые включил вам менеджер Platega: СБП, карта РФ, международная карта, криптовалюта, ЕРИП.
- Скопируйте адрес уведомлений (
https://ваш-домен/api/webhooks/platega) в кабинет Platega как Callback URL.
CryptoBot
В Telegram откройте @CryptoBot → Crypto Pay → Create App и скопируйте API-токен.
Вставьте его в поле API token.
Скопируйте адрес уведомлений (https://ваш-домен/api/webhooks/cryptobot) в @CryptoBot: My Apps → ваше приложение → Webhooks.
Счёт выставляется в рублях, клиент сам выбирает монету. Минимальная сумма — 10 ₽.
Telegram Stars
Включите переключатель и задайте стоимость одной звезды в рублях. По этому курсу цена пакета пересчитывается в звёзды. Адрес уведомлений не нужен: оплату принимает ваш бот, поэтому он должен работать.
Stars доступны только в Mini App, на сайте их нет. Для автопродления и магазина Stars/Premium они не используются. Звёзды копятся на балансе вашего бота и выводятся по правилам Telegram.
Шаг 2. Способы оплаты
На вкладке «Способы оплаты» видно, какой способ включён и кто его обслуживает.

Если СБП или карту умеют и YooKassa, и Platega, выберите основного провайдера. Второй станет резервом.
Когда включается резерв
Резерв используется, только если основной провайдер выключен или не настроен. Если основной провайдер работает, но отвечает ошибкой, Reefox Panel на резерв сам не переключится. В этом случае выключите основного вручную.
Шаг 3. Проверочная оплата
Отдельного тестового режима нет. Проверьте оплату одним из двух способов:
- Настоящая покупка. Купите самый дешёвый пакет со своего Telegram-аккаунта. Проверьте, что доступ продлился, а в разделе Платежи оплата стала «Оплачен». Потом верните деньги в кабинете провайдера.
- Тестовый магазин YooKassa. Вставьте ключи тестового магазина, проведите оплату тестовой картой YooKassa, затем замените ключи на боевые.
Как живёт счёт
- Счёт действует 15 минут. Если клиент не оплатил, счёт закрывается сам со статусом «Счёт истёк». Нажмёт «Оплатить» снова — получит новый.
- Поздняя оплата не теряется. Если клиент оплатил старый счёт после 15 минут, оплата всё равно засчитается. Исключение — Telegram Stars: бот откажет в оплате истёкшего счёта, и деньги не спишутся.
- Незавершённый счёт не мешает клиенту пользоваться кабинетом и открыть новый. Старый счёт тогда получит статус «Заменён».
- Номер платежа для людей выглядит так:
7K3F-9QMZ. По нему удобно искать платёж в разделе «Платежи».
Статусы в разделе Платежи:
| Статус | Что значит |
|---|---|
| Оплачен | Деньги получены, доступ выдан |
| Ждёт оплаты | Счёт открыт, клиент ещё не заплатил |
| Выдаём доступ | Деньги получены, но VPN-серверы не ответили. Reefox Panel повторяет выдачу каждые 5 минут |
| Нужна сверка | Провайдер ответил неоднозначно. Проверьте платёж в кабинете провайдера |
| Отклонён / Отменён / Счёт истёк | Денег нет, доступ не выдавался |
| Заменён | Клиент открыл новый счёт вместо этого |
| Возвращён | Платёж отмечен возвращённым. Доступ клиента при этом не меняется |
Автопродление
Клиент может подключить ежемесячное автоматическое списание по СБП через YooKassa или Platega. Это необязательно, но удобно клиентам.
Ключи магазина не дают права на автосписания
Автосписания включает менеджер провайдера по отдельной заявке. Пока он этого не сделал, YooKassa отвечает forbidden, а Platega — Common:VAL_0001.

Попросите менеджера YooKassa или Platega включить автоплатежи для вашего магазина (у Platega — рекуррентные СБП-подписки, метод 6).
Когда менеджер подтвердит, нажмите «Провайдер разрешил автосписания».
Проведите проверочный платёж на 10 ₽ по кнопке в этом же блоке. Платёж настоящий, деньги придут в ваш же магазин. Автоматически они не возвращаются.
После успешной проверки включите «Показывать автопродление клиентам» и нажмите «Сохранить автопродление».
Автопродление предлагается только на месячную оплату по СБП и без промокода. Если списание не прошло, Reefox Panel повторит его через 1, 3 и 7 дней. Дни можно поменять в блоке «Повторные попытки списания».
Для YooKassa нужен код НДС
Для автосписаний через YooKassa в чеке нужен код ставки НДС из настроек вашей кассы. Без него проверочный платёж пройдёт, а настоящие списания — нет. Код задаётся в файле /opt/tmavpn/app/.env на сервере строкой:
YOOKASSA_RECURRING_VAT_CODE=1Вместо 1 подставьте свой код, его знает бухгалтер или поддержка YooKassa. Затем примените настройки:
sudo /opt/tmavpn/app/deploy/install-from-source.shЧеки: «Мой Налог»
Если вы самозанятый, Reefox Panel сам создаст чек в «Мой налог» после каждой оплаты. Откройте раздел «Мой Налог», введите номер телефона, как в приложении «Мой налог», нажмите «Получить код» и введите код из SMS.

- В настройках чеков можно отправлять чек клиенту в Telegram и поменять название услуги. По умолчанию это «Подписка VPN».
- nalog.ru открывается только с российских IP. Если сервер Reefox Panel за границей, запросы пойдут через ваш VPN-сервер в России. Для этого в «Локациях» должен быть сервер с российским IP и заполненным SSH-доступом.
- Если «Мой налог» не ответил, Reefox Panel повторит отправку чека каждые 5 минут, до 5 попыток за сутки.
- На сброс лимита БС и заказы магазина Stars/Premium чеки сейчас не создаются. Если вы это продаёте, пробейте такие чеки вручную.
Если вы ИП или компания, чеки обычно пробивает онлайн-касса провайдера, у YooKassa это «Чеки от ЮKassa». Схему лучше согласовать с бухгалтером.
Магазин Stars и Premium
Вкладка «Stars и Premium» включает продажу Telegram Stars и Telegram Premium за рубли. Выдачу выполняет сервис Starport по API-токену. Это отдельная услуга, для VPN она не нужна. Если не собираетесь продавать звёзды, пропустите вкладку.
Дальше — сайт, бренд и почта.