Биллинг и тарифные планы
Система биллинга 4phone отслеживает потребление ресурсов тенанта, управляет тарифными планами и формирует счета. Каждый тенант имеет свой баланс, тариф и расчетный период.
Обзор биллинга
На главной странице биллинга отображаются:
- Баланс: текущее состояние счета. Отрицательный баланс означает задолженность.
- Тарифный план: название текущего плана и статус аккаунта.
- Расчетный период: даты начала и окончания текущего периода.
Расход по функциям
Система автоматически учитывает потребление по каждой категории:
- Внутренние номера: количество активных добавочных номеров.
- SIP-транки: количество активных транков.
- Очереди: количество активных очередей.
- DID-номера: количество подключенных входящих номеров.
- Голосовые минуты: суммарное время разговоров.
- Webhook-доставки: число отправленных вебхук-уведомлений.
- Email-доставки: число отправленных email-уведомлений.
- Минуты записи: объем сохраненных записей.
- IVR-потоки: количество активных IVR-сценариев.
- Хранилище: использованный объем в ГБ.
- API-запросы: количество вызовов API.
- Мониторинг: количество активных мониторов, проверок, звонков оповещения.
Для каждой метрики показывается:
- текущее потребление;
- включенный в тариф лимит (если есть);
- процент использования.
Некоторые ресурсы тарифицируются по факту без фиксированного лимита.
Важно
Кнопка «Синхронизировать» обновляет данные потребления. Обычно данные синхронизируются автоматически, но при необходимости можно запустить вручную.
Тарифные планы
Доступные тарифы отображаются в разделе «Планы». Каждый тариф включает:
- базовую стоимость в месяц;
- набор включенных ресурсов с лимитами;
- стоимость превышения по каждой категории.
Смена тарифа
- Откройте раздел «Планы».
- Выберите новый тариф.
- Подтвердите переход.
Проверьте
При переходе на более низкий тариф проверьте, что текущее потребление не превышает лимиты нового плана. Превышение будет тарифицироваться по повышенной ставке.
Счета
В разделе «Счета» отображается история начислений:
- дата формирования;
- расчетный период;
- сумма;
- статус оплаты.
Пополнение баланса через Multicard
Multicard - это универсальный платежный шлюз, поддерживающий карты UzCard, Humo, Visa, Mastercard, UnionPay, а также быструю оплату через Payme, Click, Uzum и другие приложения. Пополнение доступно ролям OWNER, ADMIN и MANAGER.
Как пополнить баланс через Multicard
- Откройте раздел «Биллинг».
- В блоке «Пополнить баланс через Multicard» введите сумму в сумах (минимум 1 000).
- Нажмите «Перейти к оплате» -- вас перенаправит на защищенную страницу Multicard.
- Введите данные карты, подтвердите оплату по SMS-коду (OTP).
- После подтверждения вы вернетесь на страницу биллинга, баланс обновится в течение 1-2 минут.
В блоке «История платежей через Multicard» отображаются последние транзакции с их статусом (Ожидает оплаты, В обработке, Оплачена, Ошибка, Возврат, Истек срок), а также ссылка на фискальный чек, если он есть.
Важно
Multicard принимает любые суммы от 1 000 сум. Время жизни инвойса -- 15 минут с момента создания. Если не успели оплатить, нажмите «Перейти к оплате» еще раз: это создаст новый инвойс с новым checkout_url.
Технические детали Multicard
Интеграция работает через Multicard Shop API. При создании инвойса наш сервер получает JWT-токен (POST /auth), вызывает POST /payment/invoice с store_id, amount (в тийинах), invoice_id (наш UUID транзакции) и callback_url. Multicard возвращает checkout_url, на который перенаправляется браузер пользователя.
После успешного списания Multicard отправляет на наш сервер два callback:
- success-callback (с IP
195.158.26.90) -- проверяется MD5-подписьmd5(store_id + invoice_id + amount + secret). Если ответить{success: true}, средства зачисляются. Если{success: false}-- Multicard откатывает транзакцию. - webhook-callback на каждое изменение статуса (draft / progress / billing / success / error / revert / hold) -- проверяется SHA1-подпись
sha1(uuid + invoice_id + amount + secret). Используется для синхронизации статуса транзакции в базе.
Безопасность callback:
- IP-whitelist (
MULTICARD_ALLOWED_IPS=195.158.26.90) -- запросы с других IP блокируются. - Проверка подписи timing-safe сравнением.
- Проверка совпадения суммы с сохраненной в
MulticardTransaction. - Идемпотентность: повторный success-callback по уже PAID-транзакции возвращает
{success: true}без создания дубликатаPayment.
Все транзакции хранятся в таблице multicard_transactions с привязкой к BillingAccount и Tenant. После успешной оплаты создается Payment со статусом PAID и методом MULTICARD -- эта сумма участвует в расчете баланса.
Пополнение баланса через Click
Тенанты могут пополнять расчетный счет онлайн через платежную систему Click (карты UzCard и Humo). Пополнение доступно ролям OWNER, ADMIN и MANAGER.
Как пополнить баланс
- Откройте раздел «Биллинг».
- В блоке «Пополнить баланс через Click» введите сумму в сумах (минимум 1 000).
- Нажмите «Перейти к оплате» -- вас перенаправит на защищенную страницу Click.
- Введите данные карты и подтвердите оплату по SMS.
- После подтверждения вы вернетесь на страницу биллинга, баланс обновится в течение 1-2 минут.
В блоке «История платежей через Click» доступны последние транзакции с их статусом (Ожидает оплаты, Подтверждена, Оплачена, Отменена).
Важно
Если оплата отменена или не завершена, вы можете повторить попытку. Каждое нажатие создает новую транзакцию -- старая остается в истории со статусом «Отменена».
Технические детали
Интеграция работает по протоколу Click Shop API: ваш платеж проходит этапы Prepare и Complete, на каждом из которых Click обращается к нашему серверу с MD5-подписью. Ключи интеграции хранятся в защищенном виде на стороне сервера и не передаются в браузер.
Все транзакции сохраняются в базе данных с уникальным идентификатором Click и привязываются к биллинговому аккаунту тенанта. После успешного Complete формируется запись Payment со статусом PAID и методом CLICK -- эта сумма участвует в расчете баланса наравне с ручными платежами и кредитами.
Использование
Раздел «Использование» показывает детальную разбивку потребления за текущий и прошлые периоды.
Контроль биллинга
- регулярно проверяйте баланс и расход;
- отслеживайте метрики, приближающиеся к лимиту;
- планируйте смену тарифа до превышения лимитов;
- проверяйте счета за прошлые периоды.
Следом полезно открыть Тарифы на сайте и Как устроена телефония 4phone.