Skip to main content
Отдельные методы (приём, выплаты, автовывод, переводы) станут понятнее, если увидеть общую картину: откуда деньги приходят на баланс, в каких они состояниях и какими путями уходят. Эта страница — концептуальная карта. За деталями каждого метода — ссылки в Справочник.

Общая схема

Ключевая идея: средства попадают на баланс сразу, но не всегда сразу выводимы. Между «зачислено» и «можно вывести» стоит дозревание (maturity).

Приход: два канала

Деньги на баланс мерчанта приходят двумя разными путями — и ведут они себя по-разному.
Оба канала зачисляют нетто — за вычетом комиссии платформы. В вебхуке wallet.paid поле payment_amount — это брутто (что пришло на адрес); на баланс попадёт меньше на размер комиссии. Сверяйтесь по /v1/balance.
Подробнее про разницу — Объект кошелька и Статические кошельки.

Состояния средств на балансе

Средства на балансе бывают в трёх состояниях. Метод /v1/balance показывает одно число (available + maturing вместе; held не входит), и не всё, что показано, выводимо прямо сейчас.

Почему «баланс есть, а вывести нельзя»

Самый частый источник путаницы. Свежий депозит сразу отражается в balance, но пока он под maturity-холдом, выплата на сумму, включающую незрелые средства, вернёт 409 payout.funds_maturing. То есть выводимый остаток может быть временно меньше показанного. Что делать. Важная честная оговорка: API не отдаёт разбивку available/maturing — /v1/balance показывает одно число, в которое незрелые средства уже входят, поэтому «вычислить зрелую часть» одним вызовом нельзя. Рабочих стратегий две:
  • Повторять выплату с backoff по 409 payout.funds_maturing — незрелое станет зрелым автоматически, и повтор пройдёт. Готовый код ретрая уже есть в рецепте устойчивого клиента.
  • Выводить консервативно — сумму заведомо меньше остатка без учёта свежих депозитов.
Оценить, сколько ждать, можно так: reorg‑безопасный порог подтверждений сети — поле min_confirmations в GET /v1/currencies; прогресс конкретного платежа — confirmations / required_confirmations в /v1/payment/info. Учтите, что фактический порог зависит и от суммы: крупный платёж зреет дольше.

Расход: пять путей

Списать средства с баланса можно пятью способами. Три из них (выплата, возврат, перевод) инициируете вы вызовом API; два (автовывод и сплит) срабатывают сами, по заранее настроенному правилу.
Сплит легко упустить из виду при сверке баланса. В отличие от выплаты, у него нет вашего вызова API: вы один раз настроили правило «20 % партнёру», и дальше деньги уходят сами — но не сразу, а после окна удержания refund_hold_hours. Из-за этой задержки баланс может «худеть» на суммы, которых вы не ждёте сегодня: это рассчитались платежи, пришедшие несколько дней назад. Окно нужно потому, что возврат списывает с вас всю сумму покупателя — если бы доли ушли партнёрам сразу, на возврат бы не осталось. → Сплит‑платежи
Односторонние двери. Перевод на личный кошелёк вводит средства В личный кошелёк, но вывод оттуда через API закрыт — только в кабинете под 2FA. Аналогично ротация ключа — только в кабинете. Это осознанные ограничения безопасности, см. Безопасность в проде.

Комиссии: кто и за что платит

В движении средств участвуют две разные комиссии — не путайте их. Предрасчёт по конкретной выплате (сколько уйдёт с баланса, сколько получит адрес) — без создания: /v1/payout/calculate.

Защита от волатильности (VRCS)

Если вы принимаете волатильные активы, но хотите держать баланс в стабильной монете, включите VRCS — он авто-конвертирует волатильные депозиты в USDT при зачислении. Это влияет на то, в какой валюте окажется ваш available.

Реферальные начисления

Отдельный «карман» — реферальные доходы. Они начисляются как доля нашей комиссии с приведённых мерчантов и показываются в /v1/referral/info в minor-единицах. Это не тот же поток, что торговый баланс. → Форматы сумм

Как это выглядит в цифрах (пример)

  1. Покупатель платит по инвойсу 100 USDT. Наша комиссия 1.5 % + $0.30 → удержится ≈ 1.80 → на баланс зачислится ≈ 98.2 USDT (сразу как maturing).
  2. Через нужное число подтверждений 98.2 USDT становятся available.
  3. Вы выводите 50 USDT (/v1/payout). Если сетевая комиссия на получателе — адрес получит 50 минус газ; с баланса спишется 50. Остаток available — ≈ 48.2 USDT.
  4. Если бы те же 100 USDT пришли на статический кошелёк, комиссия удержалась бы тоже (по вашей ставке, по умолчанию ~1.5 %) — на баланс легло бы ≈ 98.5 USDT (фиксированные $0.30 берутся с инвойса, не с пополнения кошелька).
Точные суммы и знаки зависят от валюты/сети — всегда сверяйтесь с ответом /v1/payout/calculate и /v1/balance.

Связанные страницы

POST /v1/balance

Объект выплаты

Первая выплата

Статические кошельки

Рецепт устойчивого клиента

как обрабатывать maturing и повторы.

Глоссарий

available, maturing, held, газ, VRCS.