loading-img

Protocol

HTTP(s) are used to send and receive data. Data of type JSON is supported. Refer to the (http://www.json.org/)for more information of JSON.

In additional to the standard HTTP protocol, the following HTTP Headers are required:

HTTP Header Mandatory Example Description
API Yes authorize Service Name
DataType Yes JSON Data Type (JSON)
Digest No MD5(Data) Message digest of the post data
Accept-Encoding No gzip, deflate Identify whether or not support gzip compression of the returning data
Content-Encoding No gzip Identify whether or not using gzip compression of the post data
Accept-Language No en_US Set the default language of the returning data.

Please use UTF-8 as the default encoding for all encode/ decode codes when convert text to/ from byte[].

Following codes shows thats way of using MD5:

public staticString digest(byte[] input) {
		byte[] digest = Digest.md5().compute( input );
		return Hex.encodeHexString( digest );
	}

Glossary

  1. Game Provider: e-games development team
  2. Merchant: The party that wants to integrate e-games to their website
  3. API Requestor :The party responsible for calling the function
  4. API provider: The party responsible for hosting the function
  5. Acct ID: Player’s unique identity code

API Interface Overview

During API call,the invoker will create the request message according to API specification, and post the data to the URL. API provider will send the response message after processing the request.

Usually the message will be defined as : xxx Response xxxx(xxxRequest request). Where xxx Request equates to API request message and xxx Response equates to API response message

All request messages will contain the following fields:

Name Data type Example Description
serialNo Varchar(50) 20120722224255982841 Generate by merchant to indicate message sequence.
merchantCode Varchar(10) TEST Unique code that identifies the Merchant.

All response messages will contains the following fields:

Name Data Type Example Description
serialNo Varchar(50) 20120722224255982841 Generated by merchant to indicate message sequence.
code Integer 0 Processed result status
msg Varchar(128) success Processed result description.
merchantCode Varchar(10) TEST Unique code that identifies the Merchant.

**Please refer to appendix 1 for the list of status codes that system returns. "appendix 1".

Warning: serialNo is the identity of the message, and one serialNo for one request or response. Please make sure the serialNo is unique.We advise use GUID (UUID), or the date+time+random string as the serialNo.

API Interface Definition

Game Lobby Page

Usage: Player enters Game Lobby Page after clicking provider's button found in merchant website.

Interface Name:Redirect To Game Lobby

API Provider:Game Provider

API Requestor:Merchant

Name Data type Mandatory Example Description
acctId Varchar(50) Yes TESTPLAYER1 Unique player ID
token Varchar(128) Yes fe1a85adc54545d2963b661a22d09c9e
language Varchar(10) Yes en_US Language to display game lobby in.
channel Varchar(10) Yes Web Playing through mobile or web
isLobby boolean Yes true/false To enable player enter provider's game lobby

  1. For language, Refer to Appendix-2.
  2. Kindly refer 4.15 Domain List to get the latest domain for replacing the sampledomain.
  3. For DEMO may replace it with your merchant code.

Game Lobby Redirect URL and Parameters:

https://lobby.sampledomain.com/DEMO/auth/?acctId=TESTPLAYER1&language=zh_CN&token=fe1a85adc54545d2963b661a22d09c9e&channel=Web&isLobby=true

Game Page

Usage: Player enters E-games page by clicking Goto Game or Real Money button found in merchant website.

Interface Name:Redirect To Game

API Provider:Game Provider

API Requestor:Merchant

Name Data type Mandatory Example Description
acctId Varchar(50) Yes TESTPLAYER1 Unique player ID
token Varchar(128) Yes fe1a85adc54545d2963b661a22d09c9e
language Varchar(10) Yes en_US Language to display game lobby in.
game Varchar(10) Yes sLongX3 Game Code
brand Varchar(10) No TEST123 Custom Brand ID

  1. For language, Refer to Appendix-2.
  2. For game, Refer to appendix 4."Appendix 4".
  3. Kindly refer 4.15 Domain List to get the latest domain for replacing the sampledomain.
  4. For DEMO may replace it with your merchant code.

Game Redirect URL and Parameters(real money):

https://lobby.sampledomain.com/DEMO/auth/?acctId=TESTPLAYER1&language=zh_CN&token=fe1a85adc54545d2963b661a22d09c9e&game=sLongX3

Game Redirect URL and Parameters(play for fun):

https://play.sampledomain.com/game?merchantCode=DEMO&game=sLongX3&language=zh_CN

User Authorization

Usage: Merchant will provide this request for Game provider to authenticate the session.

Interface Name: authorize

API Provider: Merchant

API Requestor: Game Provider

Request Message Definition for AuthorizeRequest:

Name Data Type Mandatory Example Description
acctId Varchar(50) Yes TESTPLAYER1 Unique player ID
token Varchar(128) Yes fe1a85adc54545d2963b661a22d09c9e
language Varchar(10) No en_US Language code
gameCode Varchar(10) No sLongX3 Game Code
forFun boolean No false Play for fun
merchantCode Varchar(10) Yes TEST Merchant Code
serialNo Varchar(50) Yes 20120722224255982841 Serial No

Response message definition for AuthorizeResponse:

Name Data type Mandatory Example
acctInfo AcctInfo AcctInfo

AcctInfo type definition:

Name Date type Mandatory Example Description
acctId Varchar(50) Yes TESTPLAYER1 Unique player ID
userName Varchar(15) No TestPlayer Player name
currency Char(3) Yes CNY Currency Code
balance Decimal(12, 4) Yes 0 Current player balance
siteId Varchar(10) No SITE_CNY1 Unique site ID for merchant

Note :

  1. Refer to appendix 3 for a list of currency code that system support."Appendix 3".
  2. Refer to appendix 4 for a list of cryptocurrency code that system support."Appendix 4".
  3. Please skip the “balance” for the Authorize Response(Set to 0).
  4. Acct ID format: [a-zA-Z0-9_-@]{1,50}. Example: TestPlayer_1

Authorize (Request and response messages example)

JSON AuthorizeRequest:

{
		"acctId": "TESTPLAYER1", 
		"language": "en_US", 
		"merchantCode": "TEST", 
		"gameCode": "sLongX3", 
		"forFun": "false", 
		"token": "fe1a85adc54545d2963b661a22d09c9e", 
		"serialNo": "20120722224255982841"
	}

JSON AuthorizeResponse:

{
		"acctInfo": {
			"acctId": "TESTPLAYER1", 
			"balance": 0, 
			"userName": "TestPlayer", 
			"currency": "CNY"
			"siteId": "SITE_CNY1"
		},									
		"merchantCode": "TEST",
		"msg": "success",
		"code": 0,
		"serialNo": "20120722224255982841"
	}

Example in Http client:

Query user information

Usage Scenario: Search for user information (Balance etc).

Interface Name: getAcctInfo

API Provider: Game Provider

API Requestor: Merchant

Request Message Definition for GetAcctInfoRequest:

Name Data type Mandatory Example Description
acctId Varchar(50) Yes TESTPLAYER1 Player uniqueId, leave ‘Empty’ to return all players.
merchantCode Varchar(10) Yes TEST Merchant Code
serialNo Varchar(50) Yes 20120722224255982841 Generated by merchant to indicate message sequence.

Response message definition for GetAcctInfoResponse:

Name Data type Mandatory Example Description
resultCount Integer Yes 100 Total record count
pageCount Integer Yes 1 Total page count
list AcctInfo[] Yes AcctInfo

AcctInfo type definition:

Name Data Type Mandatory Example Description
acctId Varchar(50) Yes TESTPLAYER1 Unique player ID
userName Varchar(50) No TestPlayer Player name
currency Char(3) Yes CNY Currency Code
balance Decimal(12, 4) Yes 0 Current player balance

GetAcctInfo (Request and response messages example) :

JSON GetAcctInfoRequest:

{
		"acctId": "TESTPLAYER1", 
		"merchantCode": "TEST", 
		"serialNo": "20120802152140143938"
	}

JSON GetAcctInfoResponse:

{
		"list": [{
			"userName": "TestPlayer1", 
			"currency": "CNY", 
			"acctId": "TESTPLAYER1", 
			"balance": 1000,
			"isOnline": 0
		}],										
		"resultCount": 1,
		"pageCount": 1,
		"merchantCode": "TEST",
		"msg": "success",
		"code": 0,
		"serialNo": "20120802152140143938"
	}

Example in Http client:

Query user balance (One Wallet)

Usage Scenario : Search for user balance.

Interface Name : getBalance

API Provider : Merchant

API Requestor : Game Provider

Request Message Definition for GetBalanceRequest:

Name Data type Mandatory Example Remarks
acctId Varchar(50) Yes TESTPLAYER1 Acct Id
token (For Staging Only) Varchar(128) Yes TEST
merchantCode Varchar(10) Yes TEST Merchant Code
serialNo Varchar(50) Yes 20120722224255982841 Generated by merchant to indicate message sequence.
currency Char(3) No CNY Currency Code

Response message definition for GetBalanceResponse:

Name Data type Mandatory Example Remarks
acctInfo AcctInfo[] Yes AcctInfo acctInfo
acctId Varchar(50) Yes TESTPLAYER1 Unique player ID
userName Varchar(15) No TestPlayer Player name
currency Char(3) Yes CNY Currency Code
balance Decimal(12, 4) Yes 0 Current player balance
siteId Varchar(10) No SITE_CNY1 Unique site ID for merchant

GetBalance (Request and response messages example) :

JSON GetBalanceRequest::

{
		"acctId": "TESTPLAYER1", 
		"token": "fe1a85adc54545d2963b661a22d09c9e", (For Staging Only)
		"merchantCode": "TEST", 
		"serialNo": "20120802152140143938",
		"currency": "CNY"
	}

JSON GetBalanceResponse:

{
		"acctInfo": {
			"userName": "TestPlayer1", 
			"currency": "CNY", 
			"acctId": "TESTPLAYER1", 
			"balance": 1000
		},										
		"merchantCode": "TEST",
		"msg": "success",
		"code": 0,
		"serialNo": "20120802152140143938"
	}

Transfer (One Wallet)

Usage Scenario :

  1. When player place bet, Game Provider will send the transfer request to merchant, and merchant will deduct the player balance.
  2. When Game Provider payout, Game Provider will send the transfer request to merchant, and merchant will increase the player balance.
  3. If the player lose the bet, Game Provider will send a transfer request stated payout = 0.

Interface Name : transfer

API Provider : Merchant

API Requestor : Game Provider

Request Message Definition for TransferRequest:

Name Data Type Mandatory Example Description
transferId Varchar(50) Yes a3b0c9dd1ab041 Unique transfer ID
acctId Varchar(50) Yes TESTPLAYER1 Player ID
currency Char(3) Yes USD Currency code
amount Decimal(20, 9) Yes 1000 Transfer amount (Must greater than 0)
type Int Yes 1 1 = Place bet
2 = Cancel Bet
4 = Payout
6 = Jackpot payout by merchant & game provider
7 = Jackpot payout by merchant (pending release)
8 = Jackpot payout by game provider (pending release)
9 = Tournament payout by merchant & game provider (pending release)
10 = Tournament payout by merchant (pending release)
11 = Tournament payout by game provider (pending release)
12 = Red packet payout by merchant & game provider (pending release)
13 = Red packet payout by merchant (pending release)
14 = Red packet payout by game provider (pending release)
20 = Bonus mission payout
channel Varchar(10) Yes Web / Mobile,
APP-i / APP-A / PC
Ticket for mobile or web
gameCode Varchar(10) Yes sLongX3 Game Code
ticketId Varchar(20) No 641482277
referenceId Varchar(50) No a8ab9cc8f1a277de Reference to transfer ID
specialGame SpecialGame SpecialGame Type
mainBetId (For Staging Only) Varchar(50) No 1ab9bdca06c14811b24653468e60988 Reference to the first place bet transfer Id
token (For Staging Only) Varchar(128) Yes fe1a85adc54545d2963b661a22d09c9e

SpecialGame type definition:

Name Data Type Mandatory Example Description
type Varchar(20) No Free Differentiate the special game type.
Example: bonus, free, bonusfree, freebonus.
count Int No 10 Total count on the special game
sequence Int No 1 Count on the completed special game

**specialGame only will pass during type = 4, payout**

Note:

  1. If the transfer Id received is duplicated, merchant need to check the transfer status and reply the status to Game Provider. CANNOT process the transfer with same transfer id.
  2. If the transfer Id are duplicated or not found, Merchant should return us Error Code: 109. Except this error code, provider will continue resend you the reference Id.
    1. Check if transfer Id exist (for all type)
    2. Check if place bet transaction (reference Id) of this transaction exists or not (for type 2 and type 4 only)
    3. Check if place bet transaction (reference Id) of this transaction has another cancel bet or payout transaction (for type 2 or type 4 only)

Response message definition for TransferResponse:

Name Data Type Mandatory Example Description
transferId Varchar(50) Yes a3b0c9dd1ab041 Unique transfer Id.
merchantTxId Varchar(20) No 498036704 Merchant transaction id
acctId Varchar(50) Yes TESTPLAYER1 Player ID
balance Decimal(12, 4) Yes 1000 Player balance after transfer

Transfer (Request and response messages example):

JSON TransferRequest:

{
		"acctId": "TESTPLAYER1", 
		"transferId": "0ab9bdca06c14811b24653468e60988", 
		"currency": "USD", 
		"amount": 10, 
		"type": 4, 
		"ticketId": "234950357", 
		"channel": "Web", 
		"gameCode": "sLongX3", 
		"merchantCode": "TEST", 
		"serialNo": "20120722231413699735",
		"referenceId": "dfffdca06c14811b24653468e60", 
		"mainBetId": "1ab9bdca06c14811b24653468e60988",  (For Staging Only)
		"token": "fe1a85adc54545d2963b661a22d09c9e",  (For Staging Only)
		"specialGame": {
			"type": "Free", 
			"count": 10, 
			"sequence": 1 
		}	
	
	}

JSON TransferResponse:

{
		"transferId": "0ab9bdca06c14811b24653468e609838", 
		"merchantCode": "TEST", 
		"merchantTxId": "20130813014319279367", 
		"acctId": "TestPlayer1", 
		"balance": "1050", 
		"msg": "success", 
		"code": 0, 
		"serialNo": "20120722231413699735"
	}

Transfer Jackpot (Request and response messages example):

JSON TransferRequest:

{
		"acctId": "TESTPLAYER1", 
		"transferId": "0ab9bdca06c14811b24653468e60988", 
		"currency": "USD", 
		"amount": 10, 
		"type": 6, 
		"ticketId": "234950357", 
		"channel": "Web", 
		"gameCode": "sRoma", 
		"merchantCode": "TEST", 
		"serialNo": "20210917171413632534"
		"referenceId": "dfffdca06c14811b24653468e60", 
	
	}

JSON TransferResponse:

{
		"transferId": "0ab9bdca06c14811b24653468e60988", 
		"merchantCode": "TEST", 
		"merchantTxId": "20210917014319279367", 
		"acctId": "TestPlayer1", 
		"balance": "1250", 
		"msg": "success", 
		"code": 0, 
		"serialNo": "20210917171413632534"
	}

Transfer History (One Wallet)

Usage Scenario :

  1. Search for transfer history.

Interface Name : transferHistory

API Provider : Game Provider

API Requestor : Merchant

Request Message Definition for TransferHistoryRequest:

Name Data Type Mandatory Example Description
beginDate char(15) Yes 20120720T230043 Start date range to search.
Format yyyymmdd’T’24hhmmss
endDate char(15) Yes 20120722T230043 End date range to search.
Format yyyymmdd’T’24hhmmss
pageIndex Integer Yes 1 Page number.
merchantCode Varchar(20) Yes TEST Unique code that identifies the Merchant.

Response message definition for TransferHistoryResponse:

Name Data Type Mandatory Example Description
resultCount Integer Yes 100 Total record count.
pageCount Integer Yes 1 Total page count.
merchantCode Varchar(20) Yes TEST Unique code that identifies the Merchant.
Code Integer Yes 1 Processed result status.
msg Varchar(255) Yes Success Processed result description.
serialNo Varchar(50) Yes 20210312T1705371679 Generated by merchant to indicate message sequence.
list TransferInfo[] Yes TransferInfo array.

TransferInfo definition:

Name Data Type Mandatory Example Description
transferId Varchar(50) Yes a3b0c9dd1ab041 Unique transfer Id.
acctId Varchar(50) Yes TESTPLAYER1 Player Id.
ticketId Varchar(20) Yes 641482277
transferTime Char(15) Yes 20120722T225043 Transfer Time.
gameCode Varchar(10) Yes sLongX3 Game code.
type Int Yes 1 1 = Place bet
2 = Cancel Bet
4 = Payout
6 = Jackpot payout by merchant & game provider
7 = Jackpot payout by merchant
8 = Jackpot payout by game provider
9 = Tournament payout by merchant & game provider
10 = Tournament payout by merchant
11 = Tournament payout by game provider
12 = Red packet payout by merchant & game provider
13 = Red packet payout by merchant
14 = Red packet payout by game provider
amount Decimal(20,4) Yes 1000 TransferAmount.
status Int Yes 0 Transfer status.
channel Varchar(10) Yes Web/Mobile,
APP-i/APP-A/PC
Ticket from mobile or web.

TransferHistory (Request and response messages example):

JSON TransferHistoryRequest:

{
		"beginDate": "20120721T175139", 
		"endDate": "20120723T174139", 
		"pageIndex": 1, 
		"merchantCode": "TEST" 
	}

JSON TransferHistoryResponse:

{
		"list": [{ 
			"transferId": "667706462", 
			"acctId": "TEST10001", 
			"ticketId": "749084635", 
			"type": 1, 
			"amount": 20, 
			"transferTime": "20130908T151100", 
			"gameCode": "sLongX3", 
			"status": 0, 
			"channel": "Web", 
		}], 
		"resultCount": 1, 
		"pageCount": 1, 
		"merchantCode": "TEST", 
		"code": 0, 
		"msg": "success", 
		"serialNo": "20120726214956563472" 
	}

TransferHistory Jackpot (Request and response messages example):

JSON TransferHistoryRequest:

{
		"beginDate": "20210917T175139", 
		"endDate": "20210920T174139", 
		"pageIndex": 1, 
		"merchantCode": "TEST" 
	}

JSON TransferHistoryResponse:

{
		"list": [{ 
			"transferId": "667706462", 
			"acctId": "TEST10001", 
			"ticketId": "749084635", 
			"type": 6, 
			"amount": 1250, 
			"transferTime": "20210918T151100", 
			"gameCode": "sRoma", 
			"status": 0, 
			"channel": "Web", 
		}], 
		"resultCount": 1, 
		"pageCount": 1, 
		"merchantCode": "TEST", 
		"code": 0, 
		"msg": "success", 
		"serialNo": "20210917171413632534" 
	}

Deposit (Balance Transfer)

Usage Scenario :When merchant wishes to transfer money to Game provider wallet for a particular member.

Interface Name: deposit

API Provider: Game Provider

API Requestor: Merchant

Request Message Definition for DepositRequest:

Name Data Type Mandatory Example Description
acctId Varchar(50) Yes TESTPLAYER1 Unique player ID
currency Char(3) Yes CNY Currency Code
amount Decimal(12, 4) Yes 1000 Amount to be added to player balance.
merchantCode Varchar(10) Yes TEST Merchant Code
serialNo Varchar(50) Yes 20120722224255982841 Generated by merchant to indicate message sequence.

Response message definition for DepositResponse:

Name Data Type Mandatory Example Description
transactionId Varchar(20) Yes 498036704 System generated unique id.
beforeBalance Decimal(12, 4) Yes 1000.0000 Player’s before balance
afterBalance Decimal(12, 4) Yes 1500.0000 Player’s after balance

Note:

  1. Serial No is the identity of the message, and one Serial No for one request or response. Please make sure the Serial No is unique for deposit and withdraw message.
  2. We advise to use GUID (UUID), or the date+time+random string as the Serial No
  3. Acct ID format: [a-zA-Z0-9_-@]{1,50}. Example: TestPlayer_1

Deposit (Request and response messages example):

JSON DepositRequest:

{
		"acctId": "TESTPLAYER1", 
		"amount": 200, 
		"currency": "CNY", 
		"merchantCode": "TEST", 
		"serialNo": "20120722231413699735"
	}

JSON DepositResponse:

{
		"newPlayer": false, 
		"beforeBalance": 1000.0000, 
		"afterBalance": 1500.0000, 
		"transactionId": "500648408", 		
		"merchantCode": "TEST", 
		"msg": "success", 
		"code": 0, 
		"serialNo": "20120722231413699735"
	}

Example in Http client:

Withdrawal

Usage Scenario: When merchant wishes to transfer money from Game provider wallet for a particular member.

Interface Name: withdraw

API Provider: Game Provider

API Requestor: Merchant

Request Message Definition for WithdrawRequest:

Name Data Type Mandatory Example Description
acctId Varchar(50) Yes TESTPLAYER1 Unique player ID
currency Char(3) Yes CNY Currency Code
amount Decimal(12, 4) Yes 1000 Amount to be reduced from player balance.
merchantCode Varchar(10) Yes TEST Merchant Code
serialNo Varchar(50) Yes 20120722224255982841 Generated by merchant to indicate message sequence.

Response message definition for WithdrawResponse:

Name Data Type Mandatory Example Description
transactionId Varchar(20) Yes 498036704 System generated unique id.
beforeBalance Decimal(12, 4) Yes 1500.0000 Player’s before balance
afterBalance Decimal(12, 4) Yes 1000.0000 Player’s latest balance

Note:

  1. Serial No is the identity of the message, and one Serial No for one request or response. Please make sure the Serial No is unique for deposit and withdraw message
  2. We advise to use GUID (UUID), or the date+time+random string as the Serial No.
  3. Acct ID format: [a-zA-Z0-9_-@]{1,50}. Example: TestPlayer_1

Withdraw (Request and response messages example):

JSON WithdrawRequest:

{
		"acctId": "TESTPLAYER1", 
		"amount": 200, 
		"currency": "CNY", 
		"merchantCode": "TEST", 
		"serialNo": "20120722231413699735"
	}

JSON WithdrawResponse:

{
		"newPlayer": false, 
		"beforeBalance": 1500.0000, 
		"afterBalance": 1000.0000, 
		"transactionId": "500648408", 
		"merchantCode": "TEST", 
		"msg": "success", 
		"code": 0, 
		"serialNo": "20120722231413699735"
	}

Example in Http client:

Check Transfer

Usage Scenario :

  1. Search for transfer history.

Interface Name : checkTransfer

API Provider : Game Provider

API Requestor : Merchant

Request Message Definition for CheckTransferRequest:

Name Data Type Mandatory Example Description
merchantCode Varchar(30) Yes TEST Unique code that identifies the Merchant.
serialNo Varchar(200) Yes 2020012004074 Generate by merchant to indicate message sequence.

Response message definition for CheckTransferResponse:

Name Data Type Mandatory Example Description
status Integer Yes 1 Transfer status.
0 = Unsuccesful Transfer
1 = Successful Transfer
currency Char(3) Yes PTS Currency code.
acctId Varchar(70) Yes TESTPLAYER1@TEST Unique player ID.
valueBefore Decimal(20,6) Yes 199992.000000 Before transferred value.
valueChange Decimal(20,6) Yes 1000.000000 Transferred amount requested by player.
valueAfter Decimal(20,6) Yes 200992.000000 After transferred value.
merchantCode Varchar(30) Yes TEST Unique code that identifies the Merchant.
code Integer Yes 0 Processed result status.
msg Varchar(255) Yes Success Processed result description.
serialNo Varchar(200) Yes 2020012004074 Generate by merchant to indicate message sequence.

CheckTransfer (Request and response messages example):

JSON CheckTransferRequest:

{
		"merchantCode": "TEST", 
		"serialNo": "2020012004074" 
	}

JSON CheckTransferResponse:

{
		"status": 1, 
		"currency": "PTS", 
		"acctId": "TESTPLAYER1@TEST", 
		"valueBefore": 199992.000000, 
		"valueChange": "1000.000000", 
		"valueAfter": 200992.000000, 
		"merchantCode": "TEST", 
		"code": 0, 
		"msg": "Success", 
		"serialNo": "2020012004074" 
	}

Example in Http client:

Query Player Betting History

Usage Scenario: Search for bet history

Interface Name: getBetHistory

API Provider: Game Provider

API Requestor: Merchant

Note :

  1. Merchant be advised to limit the search date by 2 hours per batch
  2. Nextspin recommend to have an interval of 3 to 5 seconds between batches

Request Message Definition for GetBetHistoryRequest:

Name Data Type Mandatory Example Description
beginDate Char(15) Yes 20120720T230043 Start date range to search. Format must be in yyyymmdd’T’24hhmmss
endDate Char(15) Yes 20120720T230043 End date range to search. Format must be in yyyymmdd’T’24hhmmss
pageIndex Integer Yes 1 Page number
merchantCode Varchar(10) Yes TEST Merchant Code
serialNo Varchar(50) Yes 20120722224255982841 Generated by merchant to indicate message sequence.

Response message definition for GetBetHistoryResponse:

Name Data Type Mandatory Example Description
resultCount Integer Yes 100 Total record count
pageCount Integer Yes 1 Total page count
list BetInfo[] Yes BetInfo Array

BetInfo definition:

Name Data Type Mandatory Example Description
ticketId Long Yes 641482277 Ticket number.
acctId Varchar(50) Yes TESTPLAYER1 Player’s unique Id
ticketTime Char(15) Yes 20120722T225417 Date time when ticket is bet
categoryId Varchar(10) Yes SM or TB or AD or BN Game category
gameCode Varchar(10) Yes sLongX3 Game Code
currency Char(3) Yes CNY Currency ISO code
betAmount Decimal(18, 6) Yes 20 Bet Amount
result Varchar(1024) No 23415 Result
winLoss Decimal(18, 6) Yes -20 Member win loss.
jackpotAmount Decimal(18, 6) Yes 0
betIp Varchar(20) Yes 8.8.8.8 Player's IP Address
luckyDrawId Long No 10
completed boolean Yes True Game is completed flag
roundId Long Yes 1823 Game Round ID
sequence Integer Yes 0, 1, 2, 3 0 = No jackpot win
channel Varchar(10) Yes Mobile/Web Ticket for mobile or web
balance Decimal(18, 6) Yes 234.000000 Previous Balance
jpWin Decimal(18, 6) Yes -100.000000 Jackpot Win
referenceId Varchar(50) Yes 4445780193 Reference to transfer ID (Only for one wallet)
isCascade boolean Yes true/false Check if gets any cascade
isBuyFeature Varchar(5) Yes true/false/NA Check if free spin is from buy feature(NA means don't have buy feature)

More details Please refer to appendix-4"Appendix-4".

GetBetHistory (Request and response messages example):

JSON GetBetHistoryRequest:

{
		"beginDate": "20120721T175139", 
		"endDate": "20120723T174139", 
		"pageIndex": 1, 
		"merchantCode": "TEST", 
		"serialNo": "20120723175139440637"
	}

JSON GetBetHistoryResponse:

{
		"list": [{
			"ticketId": 633161396, 
			"acctId": "Test10001", 
			"categoryId": "SM", 
			"gameCode": "sLongX3", 
			"ticketTime": "20130908T161044", 
			"betIp": "8.8.8.8", 
			"betAmount": 20, 
			"winLoss": 30, 
			"currency": "CNY", 
			"result": "23412", 
			"jackpotAmount": 1.5, 
			"luckyDrawId": 0, 
			"completed": True, 
			"roundId": 1879, 
			"sequence": 0, 
			"channel": web, 
			"balance": 234.000000, 
			"jpWin": -100.000000
			"referenceId": ""
			"isCascade": true
			"isBuyFeature": false
		}], 
		"resultCount": 1, 
		"pageCount": 1, 
		"merchantCode": "TEST", 
		"msg": "success", 
		"code": 0, 
		"serialNo": "20120723175139440637"
	}

JSON Jackpot GetBetHistoryResponse:

{
			"channel": Web, 
			"result": "{\"ticketId\":\"31\",\"jpCategory\":\"1\",\"jpCode\":\"Roma\"}", 
			"currency": "XXX", 
			"acctId": "TestPlayer488", 
			"balance": 20000024.4, 
			"jpWin": 0.0, 
			"gameCode": "sRoma", 
			"sequence": 0, 
			"referenceId": "", 
			"ticketId": 35, 
			"categoryId":"SM", 
			"luckyDrawId": 0, 
			"roundId": 0, 
			"betAmount": 0.0, 
			"completed": true, 
			"jackpotAmount": 0.0, 
			"ticketTime": "20221103T160952", 
			"betIp": "xxx.xxx.xxx.xxx"
	}

Example in Http client:

Query Bet Detail

Usage: Merchant may use the link to generate bet details without logon in BO.

Interface Name: Query Bet Detail

API Provider:Game Provider

Direct link for query bet detail:

https://gameapi.backoffice-domain.com/betDetails?merchantId=MERCHANT_CODE&token=MD5_HASH&lang=en&ticketId=TICKET_ID

  1. For secretKey, merchant may request from support agent.
  2. Use MD5 hash "ticketId|secretKey" for the token parameter.

Force Logout for Online Members

Usage Scenario: Kick selected user or all users out of E-games

Interface Name: kickAcct

API Provider: Game Provider

API Requestor: Merchant

Request Message Definition for KickAcctRequest:

Name Data Type Mandatory Example Description
acctId Varchar(50) No TESTPLAYER1 Player ID, Leave empty to force all “online” users to log out of E-games/Lottery.
merchantCode Varchar(10) Yes TEST Merchant Code
serialNo Varchar(50) Yes 20120722224255982841 Generated by merchant to indicate message sequence.

Response message definition for KickAcctResponse:

Name Data Type Mandatory Example Description
List String[] Yes [TESTPLAYER1] List of members that have been kicked out.

KickAcct (Request and response messages example):

JSON KickAcctRequest:

	{
		"acctId": "Test10001", 
		"merchantCode": "TEST", 
		"serialNo": "20130430164644935780"
	}
	

JSON KickAcctResponse:

{
		"list": ["Test10001"], 
		"merchantCode": "TEST", 
		"code": 0, 
		"msg": "success", 
		"serialNo": "20130430164644935780"
	}

Example in Http client:

Retrieve Game List

Usage Scenario: Provide a list of available games with details

Interface Name: getGames

API Provider: Game Provider

API Requestor: Merchant

Request Message Definition of GetGamesRequest:

Name Data Type Mandatory Example Description
merchantCode Varchar(50) Yes TEST Merchant Code
serialNo Varchar(50) Yes 20120722224255982841 Generated by merchant to indicate message sequence

Response message definition for GetGamesResponse:

Name Data Type Mandatory Example Description
games Game[] Yes Game

Game type definition:

Name Data Type Mandatory Example Description
gameCode Varchar(50) Yes sLongX3 Game code
gameName Varchar(50) Yes Long Long Long Game name
cnName Varchar(50) Yes 龙龙龙 Game name(CN)
line Integer Yes 1 Game line
category Varchar(50) Yes SM Game category

GetGames (Request and response messages example):

JSON GetGamesRequest:

{
		"merchantCode": "TEST", 
		"serialNo": "20130430164644935780"
	}

JSON GetGamesResponse:

{
		"games": [{
			"gameCode": "sLongX3", 
			"gameName": "Long Long Long", 
			"cnName": "龙龙龙", 
			"line": 1, 
			"category": "SM"
		}]
	}

Example in Http client:

Retrieve Domain List

Usage Scenario: Provide a list of available domains

Interface Name: getDomainList

API Provider: Game Provider

API Requestor: Merchant

Request Message Definition of GetDomainListRequest:

Name Data Type Mandatory Example Description
merchantCode Varchar(50) Yes TEST Merchant Code
serialNo Varchar(50) Yes 20210920224255982841 Generated by merchant to indicate message sequence

Response message definition for GetDomainListResponse:

Name Date Type Mandatory Example Description
domains String[] Yes ["https://lobby.sample.com"] Domain
merchantCode Varchar(50) Yes TEST Merchant Code
code Integer Yes 0 Processed result status
msg Varchar(128) Yes success Processed result description.
serialNo Varchar(50) Yes 20210920224255982841 Generated by merchant to indicate message sequence

GetDomainList (Request and response messages example):

JSON GetDomainListRequest:

{
		"merchantCode": "TEST", 
		"serialNo": "20210920164644935780"
	}

JSON GetDomainListResponse:

{
		"domains": [
			"https://lobby1.sample.com", 
			"https://lobby2.sample.com", 
			"https://lobby3.sample.com" 
		]
		"merchantCode": "TEST"
		"code": 0
		"msg": "Success"
		"serialNo": "20210920224255982841"
	}

Example in Http client:

Retrieve Profit Loss List

Usage Scenario: Retrieve profit loss details

Interface Name: getProfitLoss

API Provider: Game Provider

API Requestor: Merchant

Note :

  1. Merchant be advised to limit the search date within a month

Request Message Definition of GetProfitLossRequest:

Name Data Type Mandatory Example Description
beginDate Char(15) Yes 20220901T000000 Start date range to search. Format must be in yyyymmdd’T’24hhmmss
endDate Char(15) Yes 20220902T000000 End date range to search. Format must be in yyyymmdd’T’24hhmmss
merchantCode Varchar(10) Yes TEST Merchant Code
isAll boolean No true / false Show all sub-merchants under its merchant
currency Varchar(3) No CNY Currency ISO Code
pageIndex Integer Yes 1 Page number

Response message definition for GetProfitLossResponse:

Name Data Type Mandatory Example Description
resultCount Integer Yes 100 Total record count
pageCount Integer Yes 1 Total page count
list ProfitLossInfo Yes ProfitLoss information

ProfitLossInfo definition:

Name Data Type Mandatory Example Description
merchantCode Varchar(10) Yes TEST Merchant Code
currency Varchar(3) Yes CNY Currency ISO Code
betCount Integer Yes 149612 Total Page Number
betAmount Decimal(18,6) Yes 285725.320000 Bet Amount
validBetAmount Decimal(18,6) Yes 285725.320000 Valid Bet Amount
totalWL Decimal(18,6) Yes -7271.780000 Total Win Loss
jpContributeAmt Decimal(18, 6) Yes 0.000000 Jackpot Contribute Amount
jpAmt Decimal(18, 6) Yes 0.000000 Jackpot Amount
jpTotalWL Decimal(18, 6) Yes -7271.779999 Jackpot Total Win Loss
bonusAmt Decimal(18, 6) Yes 0.000000 Bonus Amount
bonusBearAmt Decimal(18, 6) Yes 0 Bonus Bear Amount

GetProfitLoss (Request and response messages example):

JSON GetProfitLossRequest:

{
		"beginDate": "20220901T000000", 
		"endDate": "20220902T000000", 
		"merchantCode": "TEST", 
		"isAll": true, 
		"currency": "CNY", 
		"pageIndex": 1
	}

JSON GetProfitLossResponse:

{
		"list": [{
			"merchantCode": "TEST", 
			"currency": "CNY", 
			"betCount": 149612, 
			"betAmount": 285725.32, 
			"validBetAmount": 285725.32, 
			"totalWL": -7271.78, 
			"jpContributeAmt": 0.0, 
			"jpAmt": 0.000000, 
			"jpTotalWL": -7271.779999, 
			"bonusAmt": 0.0, 
			"bonusBearAmt": 0
		}], 
		"pageCount": 1, 
		"resultCount": 1, 
		"merchantCode": "TEST", 
		"code": 0, 
		"msg": "success", 
		"serialNo": "20230419T1526329782"
	}

Example in Http client:

Retrieve Unfinished Game List

Usage Scenario: Retrieve unfinished game details

Interface Name: getUnfinishedGameLog

API Provider: Game Provider

API Requestor: Merchant

Request Message Definition of GetUnfinishedGameLogRequest:

Name Data Type Mandatory Example Description
beginDate Char(15) Yes 20220929T000000 Start date range to search. Format must be in yyyymmdd’T’24hhmmss
endDate Char(15) Yes 20221001T000000 End date range to search. Format must be in yyyymmdd’T’24hhmmss
merchantCode Varchar(10) Yes TEST Merchant Code
isAll boolean No true / false Show all sub-merchants under its merchant
acctId Varchar(50) No TestPlayer678 Unique Player ID
gameCode Varchar(10) No sShkThaiX2 Game Code
pageIndex Integer Yes 1 Page number

Response message definition for GetUnfinishedGameLogResponse:

Name Data Type Mandatory Example Description
resultCount Integer Yes 100 Total record count
pageCount Integer Yes 1 Total page count
list UnfinishGameInfo[] Yes UnfinishedGameInfo

UnfinishedGameInfo definition:

Name Data Type Mandatory Example Description
acctId Varchar(50) Yes TESTPLAYER678@TEST Unique Player ID
loginId Varchar(50) Yes TestPlayer678 Unique Player ID
gameCode Varchar(10) Yes sShkThaiX2 Game Code
merchantCode Varchar(10) Yes TEST Merchant Code
unfinishedBonus Integer Yes 0 Amount of Unfinished Bonus Game
unfinishedFree Integer Yes 12 Amount of Unfinished Free Spin
unfinishedFreeMultiplyer Integer Yes 1 Amount of Unfinished Free Multiplyer
createDate DateTime Yes 20220929T080000 Generated date of Player unfinished game

GetUnfinishedGameLog (Request and response messages example):

JSON GetUnfinishedGameLogRequest:

{
		"beginDate": "20220929T000000", 
		"endDate": "20221001T000000", 
		"merchantCode": "TEST", 
		"isAll": true, 
		"acctId": "TestPlayer678", 
		"gameCode": "sShkThaiX2", 
		"pageIndex": 1
	}

JSON GetUnfinishedGameLogResponse:

{
		"list": [{
			"acctId": "TESTPLAYER678@TEST", 
			"loginId": "TestPlayer678", 
			"gameCode": "sShkThaiX2", 
			"merchantCode": "TEST", 
			"unfinishedBonus": 0, 
			"unfinishedFree": 12, 
			"unfinishedFreeMultiplyer": 1, 
			"createDate": "20220929T080000"
		}], 
		"pageCount": 1, 
		"resultCount": 1, 
		"merchantCode": "TEST", 
		"code": 0, 
		"msg": "success, "
		"serialNo": "20230419T2105028176"	
	}

Example in Http client:

Query Online Player Info

Usage Scenario: Retrieve the total number of online players currently active on the platform

Interface Name: getOnlinePlayerInfo

API Provider: Game Provider

API Requestor: Merchant

Request Message Definition of GetOnlinePlayerInfoRequest:

Name Data Type Mandatory Example Description
merchantCode Varchar(10) Yes TEST Merchant Code
serialNo Varchar(50) Yes 20210920224255982841 Generated by merchant to indicate message sequence

Response message definition for GetOnlinePlayerInfoResponse:

Name Data Type Mandatory Example Description
resultCount Integer Yes 100 Total record count
pageCount Integer Yes 1 Total page count
list OnlinePlayerInfo[] Yes OnlinePlayerInfo

OnlinePlayerInfo definition:

Name Data Type Mandatory Example Description
userName Varchar(15) Yes TESTPLAYER678 Player name
currency Char(3) Yes CNY Currency code
acctId Varchar(50) Yes TESTPLAYER678 Unique Player ID

GetOnlinePlayerInfo (Request and response messages example):

JSON GetOnlinePlayerInfoRequest:

{
		"merchantCode": "TEST", 
		"serialNo": "1111-1111-1111" 
	}

JSON GetOnlinePlayerInfoResponse:

{
		{
		"serialNo": "1111-1111-1111", 
		"code": 0, 
		"msg": "Success", 
		"merchantCode": "TEST", 
		"resultCount": 1, 
		"pageCount": 1, 
		"list": [
			{
				"userName": "TESTPLAYER901", 
				"currency": "USD", 
				"acctId": "TESTPLAYER901" 
		}

Example in Http client:

API Tournament Definition

The domain for the tournament is same as the available domain. https://tournament.sampledomain.com

The staging for the tournament. https://tournament_staging.sampledomain.com

The production for the tournament. https://tournament.sampledomain.com

Retrieve Tournament List

Usage Scenario: Get list of available tournaments according to merchant

Endpoint Name: /tournament/get

API Provider: Game Tournament Domain

API Requestor: Merchant

Method: POST

Request Message Definition of Tournament List:

Name Data Type Mandatory Example Description
merchant Varchar(10) Yes TEST Unique code that identifies the Merchant.
language Varchar(10) Yes en_US Language to display game lobby in.
game Varchar(10) No sLongX3 game code

Response message definition for Tournament List:

Name Date Type Mandatory Example Description
isShow boolean Yes true Validation
info String[] No "id": "1000", Show list of information
id Varchar(10) Yes 1000 Account ID
name Varchar(255) Yes Songkran Festival Tournament Event Name
startDate Vachar(24) Yes 2023-04-01T00:00:00.000Z Start date
endDate Vachar(24) Yes 2023-04-14T23:59:59.000Z End date
desc Varchar(1024) Yes Spin & Soak up the Big Wins Description

Tournament List (Request and response messages example):

JSON Request:

{
		"merchant": "TEST", 
		"language": "en_US", 
        "game": "sCandyXmas"
	}

JSON Success Response:

{
        "isShow": true, 
		"info": [
        {
            "id": "1000",
            "name": "Songkran Festival Tournament",
            "startDate": "2023-04-01T00:00:00.000Z",
            "endDate": "2023-04-14T23:59:59.000Z",
            "desc": "Spin & Soak up the Big Wins"
	      }
      ]
    }

JSON Info Not Available Response:

{
        "isShow": false, 
    }

Retrieve Tournament Prize List

Usage Scenario: Get prize list of available tournaments according to merchant and currency

Endpoint Name: /tournament/prize/get

API Provider: Game Tournament Domain

API Requestor: Merchant

Method: POST

Request Message Definition of Tournament Prize List:

Name Data Type Mandatory Example Description
tid Varchar(10) Yes 1000 Tournament ID
merchant Varchar(10) Yes TEST Unique code that identifies the Merchant.
currency Varchar(3) Yes USD Currency code

Response message definition for Tournament Prize List:

Name Date Type Mandatory Example Description
rank Varchar(10) Yes 1 Prize position
prize Varchar(50) Yes USD$ 500 Player Prize

Tournament Prize List (Request and response messages example):

JSON Request:

{
		"tid": "1000", 
		"merchant": "TEST", 
        "currency": "USD"
	}

JSON Response:

[
        { 
        "rank": "1", 
        "prize": "USD$ 500" 
        }, 
        { 
        "rank": "2", 
        "prize": "USD$ 300" 
        }, 
        { 
        "rank": "3", 
        "prize": "USD$ 300" 
        }, 
        { 
        "rank": "4", 
        "prize": "USD$ 200" 
        }, 
        { 
        "rank": "5-10", 
        "prize": "USD$ 100" 
        }
    ]

Retrieve Tournament Rank List

Usage Scenario: Get rank list of tournaments

Endpoint Name: /tournament/rank/get

API Provider: Game Tournament Domain

API Requestor: Merchant

Method: POST

Request Message Definition of Tournament Rank List:

Name Data Type Mandatory Example Description
tid Varchar(10) Yes 1000 Tournament ID
merchant Varchar(10) Yes TEST Unique code that identifies the Merchant.
game Varchar(10) No sRoma game code

Response message definition for Tournament Rank List:

Name Date Type Mandatory Example Description
rank Integer Yes 1 Prize position
playerId Varchar(10) Yes TESTPLAYERID Player ID
score Decimal(18,6) Yes 3809.523809 Player Score

Tournament Rank List (Request and response messages example):

JSON Request:

{
		"tid": "1000", 
		"merchant": "TEST", 
        "game": "sRoma"
	}

JSON Response:

[
        { 
        "rank": "1", 
        "playerId": "TESTPLAYER1", 
        "score": "771402.857142" 
        }, 
        { 
        "rank": "2", 
        "playerId": "TESTPLAYER2", 
        "score": 3809.523809 
        }, 
        { 
        "rank": "3", 
        "playerId": "TESTPLAYER3", 
        "score": 1000 
        }, 
        { 
        "rank": "4", 
        "playerId": "TESTPLAYER4", 
        "score": 12.619047 
        }, 
        { 
        "rank": "5", 
        "playerId": "TESTPLAYER5", 
        "score": 1.428571 
        }
    ]

Retrieve Tournament Player's Rank

Usage Scenario: Get specific player's rank in tournaments

Endpoint Name: /tournament/rank/player/get

API Provider: Game Tournament Domain

API Requestor: Merchant

Method: POST

Request Message Definition of Tournament Player's Rank:

Name Data Type Mandatory Example Description
tid Varchar(10) Yes 1000 Tournament ID
merchant Varchar(10) Yes TEST Unique code that identifies the Merchant.
playerId Varchar(50) Yes TESTPLAYER1 Player ID
game Varchar(10) No sRoma game code

Response message definition for Tournament Player's Rank:

Name Date Type Mandatory Example Description
score Decimal(18,6) Yes 3809.523809 Player Score
bet Decimal(18,6) Yes 16000 Player Bet
rank Integer Yes 2 Player Rank

Tournament Player's Rank (Request and response messages example):

JSON Request:

{
		"tid": "1000", 
		"merchant": "TEST", 
        "playerId": "TESTPLAYER1", 
        "game": "sRoma"
	}

JSON Response:

{
        "score": 3809.523809, 
        "bet": 16000, 
        "rank": 2 
    }

Retrieve Tournament Player's Bet Details

Usage Scenario: Get player's details according to merchant and tournament

Endpoint Name: /tournament/details/get

API Provider: Game Tournament Domain

API Requestor: Merchant

Method: POST

Request Message Definition of Tournament Player's Bet Details:

Name Data Type Mandatory Example Description
tid Varchar(10) Yes 1000 Tournament ID
merchant Varchar(10) Yes TEST Unique code that identifies the Merchant.
playerId Varchar(50) No TESTPLAYER1 Player ID
beginDate char(24) No 2022-09-01 00:00:00 Start date range to search.
Format yyyy-MM-dd HH:mm:ss
endDate char(24) No 2022-09-10 00:00:00 End date range to search.
Format yyyy-MM-dd HH:mm:ss
pageNo Integer No 1 Page number
pageSize Integer No 10 Total record

Response message definition for Tournament Player's Bet Details:

Name Date Type Mandatory Example Description
merchantCode Varchar(10) Yes TEST Unique code that identifies the Merchant.
playerId Varchar(50) Yes TESTPLAYER1 Player ID
currency Varchar(6) Yes MYR Currency
betCount Integer Yes 19856 Total page number
ttlBet Decimal(18,6) Yes 3239892 Total Bet
wlAmt Decimal(18,6) Yes -3131821.12 winLoss Amount
score Decimal(18,6) Yes 771402.857142 Player Score
rank Integer Yes 1 Player Rank

Tournament Player's Bet Details (Request and response messages example):

JSON Request:

{
		"tid": "1000", 
		"merchant": "TEST", 
        "playerId": "TESTPLAYER1", 
        "beginDate": "2022-09-01 00:00:00", 
        "endDate": "2022-09-10 00:00:00", 
        "currency": "USD",
        "pageNo": 1,
        "pageSize": 10
	}

JSON Response:

[
        { 
			"merchant": "TEST", 
			"playerId": "TESTPLAYER1", 
			"currency": "USD",
			"betCount": 19856,
			"ttlBet": 3239892,
			"wlAmt": -3131821.12,
			"score": -771402.857142,
			"rank": 1
        }, 
        { 
			"merchant": "TEST", 
			"playerId": "TESTPLAYER2", 
			"currency": "MYR",
			"betCount": 18,
			"ttlBet": 16000,
			"wlAmt": -6152,
			"score": 3809.523809,
			"rank": 2
        }, 
        { 
			"merchant": "TEST", 
			"playerId": "TESTPLAYER3", 
			"currency": "MYR",
			"betCount": 44,
			"ttlBet": 4200,
			"wlAmt": 28028,
			"score": 1000,
			"rank": 3
        } 
    ]

Retrieve Tournament Player's Result

Usage Scenario: Get player's result according to merchant and tournament

Endpoint Name: /tournament/results/get

API Provider: Game Tournament Domain

API Requestor: Merchant

Method: POST

Request Message Definition of Tournament Player's Result Details:

Name DataType Mandatory Example Description
tid Varchar(10) Yes 1000 Tournament ID
merchant Varchar(10) Yes TEST Unique code that identifies the Merchant
currency Varchar(3) No USD Currency code of Prize

Response message definition for Tournament Player's Result Details:

Name DataType Mandatory Example Description
merchant Varchar(10) Yes TEST Unique code that identifies the Merchant
playerId Varchar(10) Yes TESTPLAYERID Player ID
currency Varchar(3) Yes USD Currency code of Player
score Varchar(50) Yes USD$ 500 Player Score
rank Varchar(10) Yes 1 Prize position
prize Varchar(50) Yes USD$ 500 Player's Prize

Tournament Player's Result(Request and response messages example):

JSON Request:

{
		"tid": "1000", 
		"merchant": "TEST", 
		"currency": "USD"
	}

JSON Response:

[
		{ 
		"merchantCode": "TEST", 
		"playerId": "TESTPLAYER431", 
		"currency": "USD",
		"ttlBet": 6795069,
		"score": 6795069,
		"rank": 1
		"prize": USD$ 2,118		
		}
	]

Tournament Page

Usage: Tournament page.

Endpoint Name:/tournament

API Provider: Game Tournament Domain

API Requestor:Merchant

Name Data type Mandatory Example Description
merchant Varchar(10) Yes TEST Unique code that identifies the Merchant.
language Varchar(10) Yes en_US Language to display game lobby in.
currency char(3) Yes MYR Currency
playerId Varchar(50) No TESTPLAYER1 Unique Player ID

  1. For language, Refer to Appendix-2.
  2. Kindly refer 4.15 Domain List to get the latest domain.

Tournament Page Redirect URL and Parameters:

https://tournament.sampledomain.com/tournament?merchant=TEST&lang=en_US&cy=USD&tid=1000

Appendix 1 Response Code Definition

code Chinese caption English caption Description
0 成功 Success Interface call is successful.
1 系统错误 System Error Internal system error at Game provider. Example: Program bug or database connection failed.
2 非法请求 Invalid Request Request is not support by Game provider.
3 服务暂时不可用 Service Inaccessible Game provider API down.
100 请求超时 Request Timeout
101 用户调用次数超限 Call Limited
104 请求被禁止 Request Forbidden
105 缺少必要的参数 Missing Parameters
106 非法的参数 Invalid Parameters
107 批次号重复 Duplicated Serial No
108 Apk 版本及 Pc 版本商家登录 Key 错误 Merchant Key Error
109 重复Transfer Duplicate Transfer
110 批次号不存在 Record Id Not Found
10113 Merchant 不存在 Merchant Not Found
112 Api 调用次数超限 Api Call Limited Exceed the limit of calling API
113 Acct Id 不正确 Invalid Acct Id Acct ID incorrect format
50100 用户不存在 Acct Not Found
50101 帐号未激活 Acct Inactive
50102 帐号已锁 Acct Locked
50103 帐号 Suspend Acct Suspend
50104 Token 验证失败 Token Validation Failed
50110 帐号余额不足 Insufficient Balance
50111 超过帐号交易限制 Exceed Max Amount
50112 币种不支持 Currency Invalid Deposit/withdraws currency code are not consistent with Player’s default currency code or merchant does not use the currency code.
50113 金额不合法 Amount Invalid Deposit/withdraw Amount must be greater than > 0
10104 会员密码不正确 Password Invalid Password not match
30003 设置不完整 Bet Setting Incomplete
10103 会员不存在 Acct Not Found
10105 账号为激活 Acct Status Inactived
10110 账号已锁 Acct Locked
10111 帐号 Suspend Acct Suspend
11101 余额不足 Bet Insufficient Balance
11102 投注失效 Bet Draw Stop Bet
11103 玩法为开放 Bet Type Not Open
11104 下注信息不完整 Bet Info Incomplete
11105 帐号信息异常 Bet Acct Info Incomplete
11108 下注请求不合法 Bet Request Invalid
12001 设置不完整 Bet Setting Incomplete
1110801 下注最大值超过上限 Bet Request Invalid Max
1110802 下注最小值超下线 Bet Request Invalid Min
1110803 下注金额错误 Bet Request Invalid Totalbet
50200 游戏在该货币未激活 Game Currency Not Active

Appendix 2 Language Code Definition

ISO code for language Description
bn_BD Bangladeshi
de_DE German
en_US English
es_ES Spanish
fil_PH Philippine
hi_IN Hindi
id_ID Indonesian
ja_JP Japanese
kh_KM Khmer
ko_KR Korean
my_MM Myanmar
pt_PT Potuguese
sv_SE Swedish
th_TH Thai
vi_VN Vietnamese
zh_CN Simplified Chinese
zh_TW Traditional Chinese

Appendix 3 Currency Code Definition (ISO)

Currency Code Description Description(cn) Ratio
AED United Arab Emirates Dirham 阿联酋迪拉姆 1:1
AMD Armenian Dram 亚美尼亚德拉姆 1:1
AOA Angolan Kwanza 安哥拉匡撒 1:1
ARS Argentine Peso 阿根廷比索 1:1
AUD Australian Dollar 澳洲元 1:1
BDT Bangladeshi taka 孟加拉塔卡 1:1
BND Brunei Dollar 汶萊元 1:1
BRL Brazilian Real 巴西雷亚尔 1:1
CAD Canadian Dollar 加元 1:1
CNY Chinese Yuan (Renminbi) 人民币 1:1
COP Colombian Peso 哥伦比亚比索 1:1000
CO2 Colombian Peso 哥伦比亚比索 1:1
CLP Chilean Peso 智利比索 1:1
DZD Algerian Dinar 阿尔及利亚第纳尔 1:1
EUR Euro 欧元 1:1
ETB Ethiopian Birr 埃塞俄比亚比尔 1:1
FKP Falkland Pound 福克兰群岛镑 1:1
GBP British Pound 英镑 1:1
GHS Ghanaian Cedi 加纳塞地 1:1
HKD Hong Kong Dollar 港元 1:1
IDR Indonesia Rupiah 印尼盾 1:1000
ID2 Indonesia Rupiah 印尼盾 1:1
INR Indian Rupee 印度卢比 1:1
JPY Japanese Yen 日圓 1:1
KHR Cambodian Riel 柬埔寨瑞尔 1:1
KWD Kuwaiti Dinar 科威特第纳尔 1:1
KRW South Korean Won 韩圆 1:1
LAK Laotian Kip 寮國基普 1:1000
MAD Moroccan Dirham 摩洛哥迪拉姆 1:1
MMK Myanmar Kyat 缅甸元 1:1000
MK2 Myanmar Kyat 缅甸元 1:1
MNT Mongolian Tughrik 蒙古图格里克 1:1000
MN2 Mongolian Tughrik 蒙古图格里克 1:1
MYR Malaysia Ringgit 马来西亚零吉 1:1
MXN Mexican Peso 墨西哥比索 1:1
NGN Nigerian Naira 尼日利亚奈拉 1:1
NPR Nepalese rupee 尼泊尔卢比 1:1
PHP Philippine peso 菲律宾比索 1:1
PEN Peruvian Sol 秘鲁索尔 1:1
PGK Papua New Guinean Kina 巴布亚新几内亚基那 1:1
PKR Pakistani rupee 巴基斯坦卢比 1:1
RUB Russian Ruble 俄罗斯卢布 1:1
SEK Swedish krona 瑞典克朗 1:1
SGD Singapore Dollar 新加坡元 1:1
THB Thailand Baht 泰铢 1:1
TH2 Thailand Baht 泰铢 1:100
TND Tunisian Dinar 突尼斯第納爾 1:1
TRY Turkish Lira 土耳其里拉 1:1
TZS Tanzanian Shilling 坦尚尼亞先令 1:1000
USD United States Dollar 美元 1:1
UZS Uzbekistani Som 乌兹别克斯坦苏姆 1:1000
VES Venezuelan Bolívares 委内瑞拉玻利瓦尔 1:1
VND Viet Nam Dong 越南盾 1:1000
VN2 Viet Nam Dong 越南盾 1:1
XAF Central African CFA Franc 中非法郎 1:1

Appendix 4 Cryptocurrency Code Definition (ISO)

Currency Code Description Ratio
ET2 milli Etherium 1:0.001
FTN FastToken 1:1
LT2 milli Litecoin 1:0.001
BC2 milli Bitcoin Cash 1:0.001
TET Tether USDT 1:1
TON Toncoin 1:0.001
XB3 micro-Bitcoin 1:0.000001
XRP Ripple 1:1