Skip to content
Wallet integration / win
Wallet integration

win

MOVES MONEYIDEMPOTENTRETRYABLE

Credit amount, which can be "0.00". Wins can arrive after the session closed or expired: find the player by player_id and currency.

we send
{
  "action": "win",
  "transaction_id": "pragmatic:5501935",
  "reference_transaction_id": null,
  "session_id": "2222aaaa-…",
  "round_id": "7200311",
  "player_id": "p-1",
  "game_id": "vs20fruitsw",
  "currency": "EUR",
  "amount": "3.00"
}
you answer 200
{ "balance": "101.50", "transaction_id": "op-4472" }

A win for a round whose bet you refused

Credit it. Some providers pay outside the round they opened, and a payout refused here is a win the player never receives. We pass such a payout to you as an ordinary win, with no bet in front of it. It happens when:

  • a free round, bonus feature or promotional award pays out: nothing was staked, so there is no bet to match;
  • a provider recovers an interrupted round and sends its result after the bet was refunded, or on an old session;
  • a provider pays a jackpot or tournament prize as a separate payout.
example sequence
bet   transaction_id "pragmatic:5501934"  round "7200311"  amount "1.50"  → 4xx INSUFFICIENT_FUNDS   (no round opened)
…     the provider settles a free-round feature for the same player
win   transaction_id "pragmatic:5501990"  round "pragmatic:5501990"  amount "4.00"  → 200, balance + 4.00
To reconcileUse
The movement itselfits transaction_id through GET /v1/transactions/{id}
round_idDepending on the game provider, such a payout carries either the original round or the provider's own transaction id as round_id. Do not require a matching bet.
Idempotencyas for any win: the same transaction_id is credited once

Free spins

A win carrying free_spins_id is bonus money, not a return on a stake. A provider that settles a whole series in one call sends a single win for the total, possibly long after the launch. Spins a bonus campaign hands over carry its campaign_id as free_spins_id.