Skip to content

Wallet Co-operation

This section describes the full game flow and explains how responsibilities are divided between the Licensee and the Game Provider.

Game Lifecycle

Game Lifecycle

Collaboration Model

At steps 4, 7, 13, 15, 20, and 24, the Game Provider sends the following requests to the Licensee:

  • POST /api/check: Validate Player information and balance
  • POST /api/debit: Player places a bet
  • POST /api/cancel: Cancel a bet
  • POST /api/credit: Payout to the Player
  • POST /api/promo_payout: Promotional payout (non-game logic)
  • POST /api/close: Close the game session

Seamless Wallet

If using the Seamless Wallet integration model, the following three APIs are required:

  • POST /api/check
  • POST /api/debit
  • POST /api/credit

  1. After the Player enters the game and before placing a bet, the Game Provider sends a /api/check request to the Licensee.
  2. For each bet placed during gameplay, the Game Provider sends a /api/debit request to Licensee.
  3. At the end of the game round, the Game Provider sends a /api/credit request to Licensee for settlement.

Other APIs

The handling of cancel and close requests depends on the Licensee’s defined workflow. If these requests are required in specific scenarios, coordination with the Game Provider is necessary.
Consider the following cases:

  • If the Game Provider retries a bet and the Licensee responds with BET_ALREADY_EXISTS, no cancel request will be issued
  • If the Licensee requires notification when a Player exits the game, a close request will be triggered
  • If the Licensee wants to handle jackpot or promotional rewards via promo_payout

These scenarios depend on integration specifics and must be agreed upon by both parties

Transfer Wallet

If using the Transfer Wallet integration model, two additional APIs must be implemented:

  • POST /api/deposit: Transfer funds into the Game Provider sub-wallet
  • POST /api/withdrawal: Transfer funds out of the Game Provider sub-wallet

In this model, debit, cancel, and credit are not sent to the Licensee during gameplay.

Instead, deposit and withdrawal are the required APIs that the Licensee must handle.