Signature
Generate HMAC hash signature to check that webhook is actually coming from BetEngine.
The Signature is calculated based on the timestamp
, request body
and your Secret Key
with HMAC hash using SHA256 Algorithm.
Here is an example on how to generate the Signature for ticket_create
action with Secret Key=12345ABCDE
, timestamp=1706191612
and following request body:
{
"action": "ticket_create",
"data": {
"operator": "acme",
"ticket_id": "668ef666333180bba97f0c93",
"ticket_code": "CD4BDD",
"player_id": "sometokenvalue",
"price": 500,
"stake": 444,
"wht_amount": 240,
"wht": 10,
"ext_amount": 56,
"ext": 12.5,
"ext_type": "inclusive",
"gross_payout": 2842,
"net_payout": 2602,
"currency": "USD",
"atag": "atag_value",
"ticket_type": "quickbet"
}
}
In order to generate the Signature all spaces must be removed from the request body:
{"action":"ticket_create","data":{"operator":"acme","ticket_id":"668ef666333180bba97f0c93","ticket_code":"CD4BDD","player_id":"sometokenvalue","price":500,"stake":444,"wht_amount":240,"wht":10.0,"ext_amount":56,"ext":12.5,"ext_type":"inclusive","gross_payout":2842,"net_payout":2602,"currency":"USD","atag":"atag_value","ticket_type":"quickbet"}}
Then message for HMAC algorithm has to be formed using following template:
{timestamp}{request body with removed spaces}
So the message should look like the following:
1706191612{"action":"ticket_create","data":{"operator":"acme","ticket_id":"668ef666333180bba97f0c93","ticket_code":"CD4BDD","player_id":"sometokenvalue","price":500,"stake":444,"wht_amount":240,"wht":10.0,"ext_amount":56,"ext":12.5,"ext_type":"inclusive","gross_payout":2842,"net_payout":2602,"currency":"USD","atag":"atag_value","ticket_type":"quickbet"}}
The computed Signature for this request is:
87ec9666ad9446d5ff41febf540acde588a2a3bb648af100bf871d2f0d80783b
A free online HMAC Generator for testing is available on https://www.freeformatter.com/hmac-generator.html#before-output.
Here is how we calculated the Signature from above example using Free Formatter


Last updated