Seamless Wallet
The following functions are APIs for Seamless Wallet environment:
Notice: Kindly check with us if your requested games support this wallet type.
Get Balance
To get respective player's balance.
URL: {your_callback_url}
(Required from you during integration)
Method: POST
Header
API
String
getBalance
Y
Content-Type
String
application/json
Y
Body
token_session
String
Player token session
Y
username
String
Player's username
Not more than 17 character(s)
Not with special character(s)
Only digit(s), letter(s) or underscore(s)
Y
Response
{
"code": 0,
"message": "Success",
"data": {
"username": "B80player0021",
"currency_code": "IDRK",
"balance": 900
}
}
Casino / Live Game Transaction
To manage transactions in Casino / Live Game when Player places a bet, requests for payout, or seeks a refund.
URL: {your_callback_url}
(Required from you during integration)
Method: POST
Header
API
String
postLiveTransaction
Y
Content-Type
String
application/json
Y
Body
token_session
String
Player token session
N
username
String
Player's username
Not more than 17 character(s)
Not with special character(s)
Only digit(s), letter(s) or underscore(s)
Y
agent_code
String
Agent code, provided by us separately by email
Y
game_code
String
Games code, please refer to the game list provided separately
N
transaction_no
String | Array
Unique transaction number
Note: Different Game Provider may have different usage of this parameter. For PA's Roulette, it is represented by one transaction_no and some bill_no. Because roulette can be made lots of bets with one package.
Y
bet_no
String
Bet number / Round ID
Note: Different Game Provider may have different usage of this parameter
Y
bill_no
String
Unique bill number / Transaction no
Note: Different Game Provider may have different usage of this parameter
N
amount
Int | Float
Transaction amount
Y
valid_bet_amount
Int | Float
Valid bet amount. Amount will be 0
if the bet did not go through or in refund status set by Game Provider.
Y
transaction_type
String
Transaction type:
Bet
Payout
Refund
Jackpot
Y
transaction_time
Datetime
Transaction time in YYYY-MM-DD HH24:MI:SS UTC format. e.g. 2024-02-28 13:46:52
Y
game_result
String
Games result, please refer to Appendix: Live Games - Game Type (Game Result column)
N
table_code
String
Table code name
N
device_type
String
Device type Desktop
Mobile
N
is_finish
Boolean
False: Is the last request in the game round
True: Is the last request in the game round
N
Request Sample 1
{
"token_session":"9JRfZS11b5vswbw6I17w87ld1Pund1oKahiGcmzQpNyethjidI",
"username": "B80player0021",
"transaction_no": "0251140515223733003503",
"game_code": "pa-N006",
"bet_no": "GN006245151O5",
"currency_code": "IDRK",
"amount": 40000,
"valid_bet_amount": 0,
"transaction_time": "2024-05-15 22:37:34",
"agent_code": "B80",
"transaction_type": "Bet",
"game_provider": "PA",
"game_result": null,
"table_code": "N006",
"device_type": "DESKTOP",
"playtype": "Player",
"game_type": "BAC"
}
Request Sample 2
{
"token_session":"9JRfZS11b5vswbw6I17w87ld1Pund1oKahiGcmzQpNyethjidI",
"username": "B80player0021",
"transaction_no": "0251140515223733003503",
"game_code": "pa-N006",
"bet_no": "GN006245151O5",
"currency_code": "IDRK",
"amount": 40000,
"valid_bet_amount": 0,
"transaction_time": "2024-05-15 22:37:34",
"agent_code": "B80",
"bill_no": null,
"transaction_type": "Bet",
"game_provider": "PA",
"game_result": null,
"table_code": "N006",
"device_type": "DESKTOP",
"playtype": "Player",
"game_type": "BAC"
}
Request Sample 3
{
"token_session":"9JRfZS11b5vswbw6I17w87ld1Pund1oKahiGcmzQpNyethjidI",
"username": "B80player0021",
"transaction_no": "0251140515223733003503",
"game_code": "pa-D001",
"bet_no": "GN010245152EK",
"currency_code": "IDRK",
"amount": 4000,
"transaction_time": "2024-05-15 22:37:34",
"valid_bet_amount": 4000,
"agent_code": "B80",
"bill_no": null,
"transaction_type": "Bet",
"game_provider": "PA",
"game_result": null,
"table_code": "D001",
"device_type": "DESKTOP",
"playtype": null,
"game_type": "ROU"
}
Request Sample 4
{
"token_session":"9JRfZS11b5vswbw6I17w87ld1Pund1oKahiGcmzQpNyethjidI",
"username": "B80player0021",
"transaction_no": "0251140515223733003504",
"game_code": "pa-X001",
"bet_no": "GX001245151O5",
"currency_code": "IDRK",
"amount": 40000,
"valid_bet_amount": 0,
"transaction_time": "2025-06-15 22:37:34",
"agent_code": "B80",
"transaction_type": "Bet",
"game_provider": "PA",
"game_result": null,
"table_code": "X001",
"device_type": "DESKTOP",
"playtype": "Even",
"game_type": "VDG"
}
Preserve (pre-deducted deposit amount)
Certain games, such as Rummy from JILI, calculate the bet_amount
at the time of payout or settlement. To ensure successful settlement of each game round, the operator should deduct the preserve amount from the player before the game starts and return it after subtracting the bet amount at the end.
This process distinguishes games that use preserve amount from those that do not.
Request Sample
{
"token_session": "cjZHNTdkdmFSZk1mNnZXMjY2T25Gdz09",
"username": "B80testidrk01",
"transaction_no": "1719279673411212094",
"game_code": "jili-94",
"bet_no": "1719279673411002094",
"currency_code": "IDRK",
"transaction_time": "2024-08-09 10:15:02",
"agent_code": "B80",
"amount": 0,
"preserve": 160,
"payout_amount": 0,
"transaction_type": "Bet",
"game_provider": "JL",
"game_result": null,
"table_code": null,
"playtype": null,
"game_type": null,
"device_type": null,
}
Response
{
"code": 0,
"message": "Success",
"data": {
"username": "adas1",
"currency_code": "IDRK",
"balance": 900
}
}
Slots Transaction
To handle Slot's transaction when Player places a bet or request for payout.
URL: {your_callback_url}
(Required from you during integration)
Method: POST
Header
API
String
postSlotTransaction
Y
Content-Type
String
application/json
Y
Body
token_session
String
Player token session
N
username
String
Player's username
Not more than 17 character(s)
Not with special character(s)
Only digit(s), letter(s) or underscore(s)
Y
agent_code
String
Agent code, provided by us separately by email
Y
game_code
String
Games code, please refer to the game list provided separately
N
transaction_no
String | Array
Unique transaction number
Note: Different Game Provider may have different usage of this parameter
Y
bet_no
String
Bet number / Round ID
Note: Different Game Provider may have different usage of this parameter.
Y
bill_no
String
Unique bill number / Transaction no
Note: Different Game Provider may have different usage of this parameter. Some slot games can have multiple bets on the same round.
N
amount
Int | Float
Transaction amount
Y
valid_bet_amount
Int | Float
Valid bet amount
Y
transaction_type
String
Transaction type:
Bet
Payout
Refund
Y
transaction_time
Datetime
Transaction time in YYYY-MM-DD HH24:MI:SS UTC format. e.g. 2024-02-28 13:46:52
Y
remark
String
Additional game-specific information, varying in format depending on the game
N
Request Sample 1
{
"transaction_no": "8240523037706348",
"bill_no": null,
"token_session": "waTRQxPIu4rNbPq76h3BsKEbMMpJb2jSkV7YkBcWR6ZbNaJWLh",
"username": "B80player001123",
"currency_code": "CNY",
"agent_code": "B80",
"game_code": "pp-vs7776aztec",
"bet_no": "8240523037706348",
"amount": 4,
"valid_bet_amount": 4,
"transaction_type": "Bet",
"transaction_time": "2024-05-23 07:32:35",
"game_provider": "PP",
"slottype": 1,
"remark": null
}
Request Sample 2
{
"transaction_no": "8240523037706348",
"bill_no": null,
"token_session": "waTRQxPIu4rNbPq76h3BsKEbMMpJb2jSkV7YkBcWR6ZbNaJWLh",
"username": "B80player001123",
"currency_code": "CNY",
"agent_code": "B80",
"game_code": "pa-SB67",
"bet_no": "8240523037706348",
"amount": 4,
"valid_bet_amount": 4,
"transaction_type": "Bet",
"transaction_time": "2024-05-23 07:32:35",
"game_provider": "PA",
"slottype": 1,
"remark": "SB67;8240523037706348;"
}
Request Sample 3
{
"transaction_no": "8240523037706348",
"bill_no": null,
"token_session": "waTRQxPIu4rNbPq76h3BsKEbMMpJb2jSkV7YkBcWR6ZbNaJWLh",
"username": "B80player001123",
"currency_code": "CNY",
"agent_code": "B80",
"game_code": "pa-SB55",
"bet_no": "8240523037706348",
"amount": 4,
"valid_bet_amount": 4,
"transaction_type": "Bet",
"transaction_time": "2024-05-23 07:32:35",
"game_provider": "PA",
"slottype": 1,
"remark": "SB67;8240523037706348;"
}
Response
{
"code": 0,
"message": "Success",
"data": {
"username": "adas1",
"currency_code": "IDRK",
"balance": 900
}
}
Fish Transaction
To handle Fish transaction when Player's bet become settled or void.
URL: {your_callback_url}
(Required from you during integration)
Method: POST
Header
API
String
postFishTransaction
Y
Content-Type
String
application/json
Y
Body
token_session
String
Player token session
Y
username
String
Player's username
Not more than 17 character(s)
Not with special character(s)
Only digit(s), letter(s) or underscore(s)
Y
agent_code
String
Agent code, provided by us separately by email
Y
game_code
String
Games code, please refer to the game list provided separately
Y
room_id
String
Room ID
Y
room_level
Int
Room Level
Y
transaction_no
String | Array
Unique transaction number
Note: Different Game Provider may have different usage of this parameter
Y
bet_no
String
Bet number / Round ID
Note: Different Game Provider may have different usage of this parameter.
Y
bill_no
String
Unique bill number / Transaction no
Note: Different Game Provider may have different usage of this parameter. Some slot games can have multiple bets on the same round.
N
amount
Int | Float
Transaction amount
Y
valid_bet_amount
Int | Float
Valid bet amount
Y
commission
Int | Float
Commission
Y
winlose_amount
Int | Float
Winlose amount
Y
transaction_type
String
Transaction type:
Settle
Void
Y
transaction_time
Datetime
Transaction time in YYYY-MM-DD HH24:MI:SS UTC format. e.g. 2024-02-28 13:46:52
Y
remark
String
Additional game-specific information, varying in format depending on the game
N
Sample Request
{
"token_session": "jLcr4oDuJfxJERDLtQldCa7RySp4eHCBT42YjfI8oscBqqytpN",
"username": "B80playerCNY",
"currency_code": "CNY",
"agent_code": "B80",
"game_code": "yl-10",
"room_id": "202502111148260882277149",
"room_level": 2,
"transaction_no": "202502111148255660187160100002",
"bet_no": "202502111148255660187160",
"bill_no": "202502111148255660187160",
"transaction_type": "Settle",
"amount": 40,
"valid_bet_amount": 40,
"commission": 0,
"winlose_amount": 152,
"transaction_time": "2025-02-11 11:48:38",
"game_provider": "yl",
"remark": null
}
Response
{
"code": 0,
"message": "Success",
"data": {
"username": "playerCNY",
"currency_code": "CNY",
"balance": 23579.1
}
}
Sports Transaction
We will utilize this API to notify you to deduct the user's stake upon placing a bet by Player. If the errorCode in your response is not 0
, we will reject the user's bet.
This API may be called multiple times for the same bet by the user, indicating that they are increasing their bet.
Different product types have different logic for deduction: in Sports
, the same transferCode
cannot be deducted twice, while in VirtualSports
, the same bet_no
cannot be deducted twice.
Important: You need to integrate this API to process our request. Please structure the Response Body as shown in the example below.
URL: {your_callback_url}
(Required from you during integration)
Method: POST
Header
API
String
postSportsTransaction
Y
Content-Type
String
application/json
Y
Body
token_session
String
Player token session
N
username
String
Player's username
Not more than 17 character(s)
Not with special character(s)
Only digit(s), letter(s) or underscore(s)
Y
agent_code
String
Agent code, provided by us separately by email
Y
game_code
String
Games code, please refer to the game list provided separately
Y
transaction_no
String | Array
Unique transaction number
Y
amount
Int | Float
Transaction amount
Y
winlose
Int | Float
Player's win or loss amount, exclude the initial bet
Y
is_promotion
Bool
When value is True
, the bonus is provided by Game Provider
Y
is_cashout
Bool
When value is True
, this bet has been cashed out by Player
Y
transaction_type
String
Transaction type:
Bet
Payout
Refund
Settle
(for Sports only)
Y
transaction_time
Datetime
Transaction time in YYYY-MM-DD HH24:MI:SS UTC format. e.g. 2024-02-28 13:46:52
Y
sports_type
String
Please refer to Appendix: Sport Games - Sport Type. When the bet is mix parlay, the value is Mix Parlay
N
market_type
String
Please refer to Appendix: Sport Games - Market Type. When the bet is mix parlay, the value will be blank
N
league
String
Name of league of the match. When the bet is mix parlay, the value will be blank
N
match
String
Name of match. When the bet is mix parlay, the value will be blank
N
bet_option
String
The option player bet. When the bet is mix parlay, the value will be blank
N
kickoff_time
Datetime
Start time of the game in YYYY-MM-DD HH24:MI:SS UTC format. e.g. 2024-02-28 13:46:52
When the bet is mix parlay, the value will be blank
N
ishalfwonlose
Bool
Bet is half win lose or not
Y
result
String
Result
N
result_time
String
Result Time
N
bet_commissions
String
Bet Commissions
N
bonus_time
String
Bonus Time
N
Request Sample
{
"token_session": "waTRQxPIu4rNbPq76h3BsKEbMMpJb2jSkV7YkBcWR6ZbNaJWLh",
"username": "B80player001123",
"currency_code": "CNY",
"agent_code": "B80",
"game_code": "pa-SB67",
"transaction_no": "8240523037706348",
"amount": 4,
"transaction_type": "Bet",
"transaction_time": "2024-05-23 07:32:35",
"game_provider": "SBO",
"game_type": "",
"sports_type": "",
"market_type": "",
"league": "",
"match": "",
"bet_option": "",
"kickoff_time": "",
"ishalfwonlose": false,
}
Response
{
"code": 0,
"message": "Success",
"data": {
"username": "B80player001123",
"currency_code": "CNY",
"balance": 8626
}
}
Events Transaction
URL: {your_callback_url}
(Required from you during integration)
Method: POST
Header
API
String
postEventTransaction
Y
Content-Type
String
application/json
Y
Body
username
String
Player's username
Not more than 17 character(s)
Not with special character(s)
Only digit(s), letter(s) or underscore(s)
Y
agent_code
String
Agent code, provided by us separately by email
Y
transaction_no
String | Array
Unique transaction number
Y
amount
Int | Float
Transaction amount
Y
transaction_type
String
Transaction type:
Withdraw
Deposit
Rollback
CashIn
CashOut
Y
transaction_time
Datetime
Transaction time in YYYY-MM-DD HH24:MI:SS UTC format. e.g. 2024-02-28 13:46:52
Y
remark
String
Additional game-specific information, varying in format depending on the game
N
Request Sample
{
"username": "B80PlayerTest_IDRK",
"transaction_no": "1722311204395",
"currency_code": "IDRK",
"amount": 282,
"transaction_time": "2024-07-30 03:36:33",
"agent_code": "B80",
"event_id": 1,
"game_provider": "PA",
"remark": "10;B80PlayerTest_IDRK;dealer001;",
"transaction_type": "Withdraw"
}
Response
{
"code": 0,
"message": "Success",
"data": {
"username": "B80PlayerTest_IDRK",
"currency_code": "IDRK",
"balance": 900
}
}
Last updated