Seamless wallet или transfer wallet
В агрегации казино существуют две модели кошелька. В seamless wallet (едином кошельке) поставщик игры обращается к вашему кошельку по каждой ставке и каждому выигрышу в реальном времени; у игрока один баланс на всё. В transfer wallet (переносном кошельке) средства переводятся на суббаланс поставщика до игры и обратно после неё. Seamless — это то, чего ждут игроки и что предпочитают регуляторы для отчётности; transfer выживает лишь у нескольких устаревших студий. Наш API устроен по принципу seamless first: вы один раз реализуете четыре коллбэка (баланс, списание, зачисление, откат), и их использует каждая студия за агрегацией.
Что модель кошелька меняет после запуска
Выбор обычно делают по схеме на доске, а платят за него в эксплуатации. В таблице обе модели сопоставлены с тем, что ваша касса, ваша поддержка и ваша финансовая команда делают каждый день.
| После запуска | Seamless wallet | Transfer wallet |
|---|---|---|
| Баланс игрока | Один баланс по всем студиям, а также по казино и букмекеру | Основной баланс плюс суббаланс по каждому задействованному поставщику |
| Запуск игры | Игра открывается и идёт против основного баланса | Сначала переводятся средства, и игрок не может поставить то, что не перевёл |
| Выход из игры | Делать ничего не нужно | Средства лежат на суббалансе, пока их не вернут; зависшие остатки — рутинное обращение в поддержку, а не краевой случай |
| Вывод средств | Доступно ровно то, что на балансе | Доступен только основной баланс, поэтому вывод падает, пока деньги игрока лежат в другом месте |
| Бонус по всем студиям | Одно требование по отыгрышу может действовать по всем студиям, потому что отслеживать его есть по одному балансу | Бонусные деньги привязаны к тому месту, куда их перевели |
| Сверка | По каждому раунду и каждой транзакции, по мере их прохождения | По пакету переводов, поэтому расхождение находят на уровне пакета, а затем ищут внутри него |
| Спор по одному раунду | История раунда лежит в вашем собственном реестре | Историю раунда запрашивают у поставщика |
Наш API устроен по принципу seamless first, и студия, работающая только через transfer, подключается за ним как исключение, а не как вторая модель в вашей кассе. О такой студии стоит задать вопрос: просят ли ваши игроки её по имени. Если просят, перечисленный эксплуатационный хвост — приемлемая цена. Если она нужна лишь для того, чтобы поднять счётчик каталога, — нет.
Жизненный цикл запуска и сессии
Между кликом игрока по игре и закрытием раунда проходит восемь шагов. Команды, делающие свой первый кошелёк, чаще всего не ожидают пятого и седьмого.
- Ваш сервер запрашивает URL запуска, передавая игрока, валюту, язык, контекст лицензии и признак реальной или демо-сессии. Мы его подписываем. URL одноразовый и живёт недолго, поэтому его нельзя передать или воспроизвести повторно.
- Браузер открывает игру у студии. Сессия теперь принадлежит студии.
- Студия запрашивает баланс. Ваш кошелёк отвечает. Это единственный из четырёх коллбэков, который не двигает деньги.
- Каждый спин или раздача отправляют списание с идентификатором раунда и идентификатором транзакции. Идентификатор раунда группирует всё, что относится к одному игровому раунду; идемпотентным вы делаете идентификатор транзакции.
- Выигрыш отправляет зачисление по тому же идентификатору раунда. Некоторые раунды зачисляют больше одного раза — так делают раунды фриспинов и бонусные функции, — поэтому раунд не равен одному списанию и одному зачислению.
- Раунд закрывается. Пока он не закрыт, по нему всё ещё может прийти откат.
- Откат отменяет названную транзакцию внутри раунда: сбойный спин, ошибку на стороне студии, таймаут. Он может прийти уже после того, как зачисление применено, — именно поэтому сертификация проигрывает ровно такой порядок.
- Сессия завершается, когда игрок уходит или когда её закрывает студия. Обрыв связи посреди раунда разрешается по правилам самой студии: одни возобновляют раунд при возвращении, другие досчитывают его на сервере и зачисляют выигрыш. Ваш реестр должен принимать оба варианта.
Что покрывает API
- Каталог игр: игры с метаданными (студия, тип, RTP — возврат игроку, волатильность, функции, поддерживаемые валюты и юрисдикции), автоматически отфильтрованные под то, что разрешает ваша лицензия.
- Запуск: подписанные URL запуска игры для реальной и демо-игры, с передачей игрока, валюты, языка и контекста лицензии.
- Коллбэки кошелька: баланс, ставка, выигрыш, откат; идемпотентные, с идентификаторами раунда и транзакции для сверки.
- Бонусы: фриспины и бонусные деньги, оркестрируемые по всем студиям; наборы правил под каждый рынок, чтобы финский бренд можно было ограничить только удержанием с потолком 5×, а офшорный — нет.
- Джекпоты и турниры: сетевые и локальные джекпоты, таблицы лидеров, турниры студий.
- Отчётность: история раундов для поддержки игроков и споров, GGR (валовой игровой доход) по играм и студиям, выгрузки для регулятора в тех форматах, которых требуют обслуживаемые нами лицензии.
Контент
Агрегаторы публикуют размеры своих каталогов: Hub88 заявляет более 26,000 игр; по EveryMatrix и SOFTSWISS сообщается о 40,000–45,000 игр от 300–355 студий. Число, которое имеет значение для оператора, меньше: это игры, которые одновременно разрешают и ваша лицензия, и списки юрисдикций ваших целевых студий, в тех валютах, которыми пользуются ваши игроки. Такой список под вашу конкретную лицензию мы даём на этапе определения объёма работ, а не берём заголовочную цифру.
Сколько стоит заголовочная цифра каталога
Разделите опубликованное число игр на опубликованное число студий — и три каталога выше окажутся в одной точке. Последняя колонка и есть это деление, и она же курс пересчёта между числом на слайде и тем спором, который вы ведёте на самом деле.
| Опубликованный каталог | Игр | Студий | Игр на студию |
|---|---|---|---|
| Hub88 | 26,000+ | 150+ поставщиков | около 170 |
| EveryMatrix (по сообщениям) | 45,000 | 355 | около 127 |
| SOFTSWISS (по сообщениям) | 40,000 | 300 | около 133 |
Студия в каждом из них стоит примерно от 125 до 175 игр. То есть вы сравниваете не игры, а студии, и студия, которая не станет работать с вашей лицензией, уходит вместе со всей своей полкой. В таблице ниже перечислено, что убирает студию из вашего списка и во что это обходится по указанным нормам.
| Что убирает студию | Во что это вам обходится |
|---|---|
| Собственный список юрисдикций студии не включает вашу лицензию. Студии первого эшелона ведут такие списки и применяют их бренд за брендом. | Группа студий может быть представлена в агрегации несколькими студиями, поэтому один отказ — это 500 игр и больше. |
| Анжуан требует от каждого поставщика собственный сертификат B2B-признания, действующий с 1 июля 2025 года, за €9,500 в год. | Убирает любую студию, которая его не купила, что бы ни говорил её список юрисдикций и что бы она вам ни обещала. |
| Валюты, которыми пользуются ваши игроки, этой студией не поддерживаются. | Убирает её для одного бренда, а часто для одного рынка, а не для всех сразу. |
| Live-казино с дилерами — категория с самыми строгими списками юрисдикций. | Убирает тот контент, отсутствие которого игроки замечают первым. |
| Рыночные правила по бонусам. Финляндия запрещает бонусы на привлечение и ограничивает отыгрыш на удержании 5×, лицензируемая деятельность — с 1 июля 2027 года. | Не убирает ни одной игры и убирает те кампании, которые собирались на них запускать. |
Именно поэтому цифру, которую мы вам называем, мы даём на этапе определения объёма работ. Это запрос по спискам юрисдикций всех студий за агрегацией, и для его выполнения нужны ваша лицензия и ваш список рынков. Заголовочной цифре не нужно ни то, ни другое — потому её и публикуют.
Сертификация до выдачи продовых ключей
Коллбэки вашего кошелька проверяются на заранее написанном наборе краевых случаев до того, как мы откроем продовый доступ: двойное списание на нестабильном соединении, откат, приходящий после уже зачисленного выигрыша, несовпадение валюты между игровой сессией и кошельком и раунд, который обрывается посреди игры. REST с подписанными запросами, песочница с настоящими тестовыми средами студий, от двух до шести недель от доступа к песочнице до продовых ключей для платформенной команды, которая уже делала кошелёк.
На что уходят эти две-шесть недель
Диапазон — это ваша работа, а не очередь, в которой вы ждёте. В таблице та же работа в человеко-днях, а разброс — разница между командой, которая уже строила seamless wallet, и командой, которая строит свой первый.
| Шаг | Человеко-дней |
|---|---|
| Аутентификация, подпись запросов, рукопожатие с песочницей | 1–2 |
| Четыре коллбэка против реестра, способного представить откат | 3–10 |
| Идемпотентность: ключи запросов, сохранённые ответы, поведение при повторе | 2–5 |
| Работа с валютами, округлением и минимальными единицами | 1–3 |
| URL запуска, контекст сессии и путь при обрыве связи | 1–4 |
| Прогон сертификации по сценарию и правки по его итогам | 2–8 |
| Подключённые фильтрация каталога, отчётность и выгрузки для регулятора | 2–5 |
От двенадцати до тридцати семи человеко-дней — это и есть две-шесть недель с этой страницы для одного инженера, у которого есть и другие задачи. За верхнюю границу команду выводит почти всегда реестр, а не API. Делают это три вещи. Баланс, вычисляемый при чтении, а не хранимый, — откату нечего отменять. Таблица транзакций без естественного ключа, который можно сделать идемпотентным. И деньги, хранимые числом с плавающей точкой. Первые два случая — это переписывание. Третий всплывает на сертификации как несовпадение валюты и расхождение округления в одну минимальную единицу.
Частые вопросы
Что происходит с открытым раундом, если наш кошелёк перестаёт отвечать?
Студия не может завершить раунд, и что она сделает дальше — правило самой студии: одни удерживают раунд и повторяют попытки, другие возвращают ставку и присылают откат. В любом случае ключом остаётся идентификатор раунда, и раунд разрешается, когда ответит ваш кошелёк или когда придёт откат. Дважды не рассчитывается ничего, потому что каждый вызов идемпотентен по своему идентификатору транзакции. Открытые раунды — первый отчёт, который стоит проверить после инцидента, и именно ради них набор сертификации проигрывает сценарий кошелька, отказавшего посреди раунда.
Можно ли оставить студию, которая работает только через transfer wallet?
Да, как исключение за seamless-интеграцией, чтобы ваша касса оставалась с одним балансом. Вместе с ней придёт эксплуатационный хвост: суббалансы, на которых зависают деньги, сверка по пакету, а не по раунду, и история споров, которая хранится у поставщика, а не у вас. Для студии, которую ваши игроки просят по имени, это честный обмен. Для студии, которая лишь добавляет к счётчику каталога, — плохой.
Можно ли добавить наши собственные игры?
Да. Ваша студия один раз интегрируется в наш provider API и появляется в каталоге для ваших брендов, а при желании и для других.
Входит ли live-казино с дилерами?
Да, от тех live-студий, чьи списки юрисдикций включают вашу лицензию; live-контент — категория с самыми строгими списками лицензий.
Работает ли API для крипто-казино?
Да; кошелёк не привязан к валюте, а крипто-балансы обрабатываются как валюты с расчётом в вашей криптокассе.