Tradehubs
Приём локальных платежей как часть вашего продукта
Pay-in и выплаты клиентам по одному REST-контракту. Заявку закрывает совпадение суммы, а не решение оператора.
Контур между вашей кассой и локальными переводами
Вы работаете с одним API. Реквизиты, исполнителей, сверку поступлений и споры платформа держит на себе.
- ЗаявкаPOST /orders с суммой и валютой
- РеквизитРоутинг выдаёт карту, СБП или счёт
- ПереводПлательщик отправляет точную сумму
- СверкаSMS или push банка сходится с заявкой
- Вебхукorder.success с подписью уходит вам
Если сумма и реквизит не сошлись, статус success не выставляется. Заявка уходит в expired или в спор.
Что вы получаете вместо ручного процессинга
Подтверждение поступления без оператора
Входящее SMS или push-уведомление банка сверяется с активной заявкой по реквизиту, сумме и валюте. Совпало: статус меняется на success и уходит вам вебхуком. Оператор в этой цепочке не участвует, поэтому нет очереди на подтверждение и нет человеческой ошибки в спорной сумме.
4 источникаSMS, push банка, Telegram-канал банка, ручное подтверждение
demo и live не пересекаются
Один и тот же контракт, разные ключи и разные базовые URL. Песочница не создаёт реальных заявок и не трогает баланс.
Роутинг с журналом решений
Каждая выдача реквизита пишется вместе с причиной отказа остальных кандидатов. На вопрос «почему заявка не создалась» есть ответ, а не догадка.
Уведомления, которые можно проверить
Каждое событие подписано HMAC-SHA256 по строке из времени и тела запроса, несёт свой идентификатор для защиты от повторной обработки и повторяется четыре раза при вашей недоступности. Любое событие можно переотправить вручную из кабинета.
Правила зафиксированы в продукте, а не в переписке
- Время жизни заявки
- 15 минут Значение по умолчанию. Настраивается на заявке от 1 минуты до 24 часов.
- Повторы вебхука
- 4 окна Через 30 секунд, 5 минут, 30 минут и 2 часа. Дальше ручная переотправка.
- Окно открытия спора
- 30 дней Спор открывается по заявке в статусе awaiting_payment, expired или failed.
- SLA ответа по спору
- 24 часа Просроченный спор закрывается автоматически в пользу мерчанта.
- Валюты приёма
- 6 RUB, KGS, UZS, AZN, TJS, KZT. Валюта закрепляется за мерчантом.
- Методы оплаты
- 4 card, sbp, interbank, account. Метод можно жёстко задать в заявке.
- Минимальная сумма
- 100 В валюте мерчанта, единый минимум для всех направлений.
- Доказательства по спору
- 20 файлов До 10 МБ каждый, загрузка через API или кабинет.
Интеграция начинается с demo-ключа
- Один заголовок авторизации. Ключ вида env_pk_id_secret определяет и мерчанта, и окружение.
- Idempotency-Key на создании. Повтор запроса при таймауте не создаёт вторую заявку.
- Вебхук вместо опроса. Финальный статус приходит сам, поллинг нужен только как страховка.
- Справочники в самом API. Статусы, валюты и поля реквизитов отдаются эндпоинтами reference.
- Postman и OpenAPI. Коллекция и спецификация лежат рядом с документацией.
X-Api-Key: live_pk_… Idempotency-Key: 50f7f8d4-…
{
"merchant_order_id": "invoice-1001",
"amount": "1500.00",
"currency": "RUB",
"payment_method": "card",
"callback_url": "https://shop.example/hooks/th"
}
{
"id": "ord_01JXYZ8Q3N6J3K9A6X5R4M2P1H",
"status": "awaiting_payment",
"payment_details": {
"type": "card",
"value": "2200 **** **** 1234",
"bank_name": "T-Bank"
}
}
Локальные сценарии там, где уже есть каналы
- Таджикистан
- Узбекистан
- Казахстан
- Кыргызстан
- Азербайджан
- Абхазия
- Открываем новые направления под объём
Курс считает платформа
Источник курса выбирается по валюте, к нему применяется маржа мерчанта. Курс и его источник фиксируются в заявке и приходят в вебхуке.
- RUB
- Rapira
- KGS, AZN, TJS, KZT
- Binance P2P
- UZS
- HTX P2P
- Трансгран RUB в KGS
- коридор MBank
Баланс, комиссия и выплаты вашим клиентам
Баланс мерчанта
- Режим учёта на выборUSDT или локальная валюта
- Доступно к использованиюavailable минус reserved
- Комиссия платформыверсионируется тарифом
- Ставка в заявкефиксируется снимком
- Вывод на свой кошелёккомиссия 5 USDT
Смена тарифа не переписывает историю: в каждой закрытой заявке остаётся та ставка, которая действовала на момент создания.
Выплаты клиентам
- Тот же ключ и тот же контрактPOST /payout-orders
- Сумма резервируется с балансапри создании
- Исполнитель прикладывает чекфото или PDF
- Чек проверяется автоматическираспознавание изображения
- Спорные случаиуходят на разбор оператору
Приём и выплаты живут в одном балансе и одном кабинете, поэтому сверка не разъезжается между двумя интеграциями.
Ежедневная работа: кабинет и Telegram
Кабинет мерчанта
- Заявки, выплаты и споры с фильтрами и выгрузкой
- API-ключи и адрес вебхука отдельно для demo и live
- Роли для команды: владелец, оператор, аналитик
- Ручная переотправка любого события
Telegram-ассистент
- Статус заявки по номеру, без входа в кабинет
- Материалы спора и следующий шаг одним ответом
- Черновик запроса к API прямо в чате
- Открытие спора из рабочей группы с вложением
Что мы берём на себя и что нужно от вас
Со стороны TradeHubs
- Ключи песочницы и доступ к документации на старте
- Пул исполнителей под ваше гео, валюту и объём
- Индивидуальный тариф на приём и на выплаты
- Подписанные вебхуки, споры с регламентом и разбор инцидентов
- Отдельный контакт сопровождения в Telegram
Со стороны мерчанта
- Гео, валюты и ожидаемый оборот
- Адрес приёма вебхуков и человек на интеграции
- Реквизиты для расчётов и кошелёк для вывода
- Контакт поддержки для спорных платежей
Порядок подключения
Каждый шаг проверяемый: вы двигаетесь дальше, только когда предыдущий закрыт на вашей стороне.
- ЗнакомствоОбсуждаем гео, валюту, метод оплаты и ожидаемый объём.
- Доступ в песочницуВыдаём demo-ключ и адрес demo-контура. Реальные деньги не участвуют.
- ИнтеграцияСоздание заявки, приём вебхука, проверка подписи, сценарии отказа.
- Тариф и лимитыФиксируем ставку на приём и выплаты, лимиты и режим баланса.
- Боевые ключиВыдаём live-ключ и подключаем боевой адрес вебхука.
- Первый потокЗапускаем трафик под наблюдением и расширяем каналы под объём.
Ставки и лимиты по направлениям
Базовая ставка на приём и на выплату. Методы и лимиты действуют в локальной валюте направления.
Settlement, вывод в USDTВозможен неттинг
- Settlement period
- T+0
- Settlement fee
- 0% плюс 5 USDT
- Settlement limit
- min. 10 USDT
Неттинг закрывает ваши выплаты встречным потоком приёма, деньги не выходят из контура лишний раз. В этом случае settlement fee составляет 1.5% плюс 5 USDT.
Tradehubs
Начните с песочницы, а не с договора
Ключи demo выдаём до коммерческих условий. Сначала вы проверяете контракт на своей стороне, потом мы обсуждаем тариф.