MaxBridge Service

A service dedicated to the integration of MaxBet payment retail into Singular platform
MaxBet Retail
Retail Cash-Desk Withdrawals
Incoming
POST /api/v1/payment/get-user-info
POST /api/v1/transactions/withdraw
Get User Info
POST /api/v1/payment/get-user-info

This request is sent by cash desk operator using MaxBet Retail App. It fetchs users info and documents from the core and redirects back to Maxbet Retail App.

Request headers

Nonce
string required

Random Nonce generated for each request

Example:
12345
Hash
string required

Hash of the request. Check hash generation instruction here

Example:
6f2c41f942e0f454462b29a6755630e147917cb06917fce6c8ee127a1bced3ec

Request body

Object
user_id
integer

Identifier of user in the PAM&Wallet

Example:
12345

Responses

200 OK
Body
Object
code
integer
Example:
10
message
string
Example:
success
data
Object
balance
integer

Users balance in cents

Example:
10000
currency
string

Balance currency

Example:
BAM
userinfo
Object
userID
integer

Identifier of user in the PAM&Wallet

Example:
10000
userName
string

Username in PAM&Wallet

Example:
exampleUser
fullName
string

Users full name in PAM&Wallet

Example:
John Doe
birthDate
string

Users birthdate

Example:
1985-05-15
transactionMaxLimit
integer

Maximum amount of transaction allowed for user

Example:
1000
transactionMinLimit
integer

Minimum amount of transaction allowed for user

Example:
10
userStatusID
integer

Users status in the PAM&Wallet (Registered, Verified etc)

Example:
2
preferredCurrencyID
integer

Users preferred currency id in PAM&Wallet

Example:
840
registrationDomain
string

Registration domain

Example:
example.com
additionalData
Object

Additional Data

key
string
Example:
value
userDocs
Array
Object
ID
integer

Document id in the PAM&Wallet

Example:
123456
DocumentTypeID
integer

Document type id (ID_CARD, PASSPORT etc.)

Example:
1
DocumentNumber
string

DOcument Number

Example:
A1234567
PersonalID
string

Users personal id

Example:
P987654
DocumentCountryID
integer

Documents issuer country id

Example:
44
DocumentIssueDate
string

Issue date of document

Example:
2022-01-15
DocumentExpirationDate
string

Expiry date of document

Example:
2032-01-14
DocumentIssuingAuthority
string

Document Issuing Authority

Example:
Gov Agency
DocumentIssuingPlace
string

Document Issuing Place

Example:
City Center
AdditionalData
Object

Documents Additional Data

key
string
Example:
value
UserId
integer

Identifier of user in the PAM&Wallet

Example:
78910
DateModified
string

Data of documents last modification

Example:
2024-12-31
DocumentStatus
integer

Status of Document (Verified, Unverified etc.)

Example:
1
StatusNote
string

Status note

Example:
Text
Example 1
Example 2

Successful request response example

POST https://{integration_url}/api/payment/get-user-info HTTP/1.1 

Nonce: 12345
Hash: 6f2c41f942e0f454462b29a6755630e147917cb06917fce6c8ee127a1bced3ec
Content-Type: application/json

{
    "user_id": 12345
}

HTTP/1.1 200 OK 

Content-Type: application/json

{
    "code": 10,
    "message": "success",
    "data": {
        "userinfo": {
            "userID": 10000,
            "userName": "exampleUser",
            "fullName": "John Doe",
            "birthDate": "1985-05-15",
            "transactionMaxLimit": 1000,
            "transactionMinLimit": 10,
            "userStatusID": 2,
            "preferredCurrencyID": 840,
            "registrationDomain": "example.com",
            "additionalData": {
                "key": "value"
            },
            "userDocs": [
                {
                    "ID": 123456,
                    "DocumentTypeID": 1,
                    "DocumentNumber": "A1234567",
                    "PersonalID": "P987654",
                    "DocumentCountryID": 44,
                    "DocumentIssueDate": "2022-01-15",
                    "DocumentExpirationDate": "2032-01-14",
                    "DocumentIssuingAuthority": "Gov Agency",
                    "DocumentIssuingPlace": "City Center",
                    "AdditionalData": {
                        "key": "value"
                    },
                    "UserId": 78910,
                    "DateModified": "2024-12-31",
                    "DocumentStatus": 1,
                    "StatusNote": "Text"
                }
            ]
        }
    }
}

Invalid response example

POST https://{integration_url}/api/payment/get-user-info HTTP/1.1 

Nonce: 12345
Hash: 6f2c41f942e0f454462b29a6755630e147917cb06917fce6c8ee127a1bced3ec
Content-Type: application/json

{
    "user_id": 12347
}

HTTP/1.1 200 OK 

Content-Type: application/json

{
    "code": 125,
    "message": "USER_NOT_FOUND"
}
Withdraw
POST /api/v1/transactions/withdraw

This method withdraws amount from the users balance in PAM&Wallet

Request headers

Nonce
string required

Random Nonce generated for each request

Example:
12344
Hash
string required

Hash of the request. Check hash generation instruction here

Example:
6f2c41f942e0f454462b29a6755630e147917cb06917fce6c8ee127a1bced3ec

Request body

Object
amount
integer

Transaction amount in cents

Example:
100
currency
string

ISO 4217 three-letter currency code

Example:
EUR
service_Id
integer

Id of payment service in the Payment Dierectory

Example:
1234
client_ip
string

IPv4 or IPv6 of the client

Example:
192.168.1.1
language
string

User language

Example:
en
Fee
integer

Transaction fee amount in cents

Example:
1
provider_transaction_id
string

Transaction identifier in the retail system

Example:
00000000-0000-0000-0000-000000000000

Responses

200 OK
Body
Object
code
integer

Status code

Example:
10
message
string

message

Example:
success
data
Object
sis_transaction_id
integer

Transaction identifier in the persistence service

Example:
123321
provider_transaction_id
string

Transaction identifier in the Retail service

Example:
00000000-0000-0000-0000-000000000000
core_transaction_id
string

Transaction identifier in the Core system

Example:
00000000-0000-0000-0000-000000000000
Outgoing
GET /api/lockless-reservation/preferred-branch
POST /api/lockless-reservation/preferred-branch
GET /api/v1/get-reservation
POST /api/lockless-reservation/create
Get Locations
GET /api/lockless-reservation/preferred-branch

Fetchs location from Maxbet Retail App

Request parameters

UserId
integer required

Users identificator in the PAM&Wallet

Responses

200 OK
Body
Object
retails
Array

Array of the retails

Object
id
string

Id of Retail Cash desk in the Maxbet Retail System

Example:
00000000-0000-0000-0000-000000000000
name
string

Name of Retail Cash desk in the Maxbet Retail System

Example:
Test
description
string
Example:
test desc
lat
integer

Geographic coordinate that specifies the north–south position.

Example:
123123
long
integer

Geographic coordinate that specifies the east–west position.

Example:
21232
open_hours
Object
monday
Object
open
string
Example:
09:00
close
string
Example:
18:00
tuesday
Object
open
string
Example:
09:00
close
string
Example:
18:00
wednesday
Object
open
string
Example:
09:00
close
string
Example:
18:00
thursday
Object
open
string
Example:
09:00
close
string
Example:
18:00
friday
Object
open
string
Example:
09:00
close
string
Example:
18:00
saturday
Object
open
string
Example:
10:00
close
string
Example:
16:00
sunday
string
Example 1
GET http://maxbetretailsystem.com/api/v1/get-locations?UserId=12345 HTTP/1.1 

HTTP/1.1 200 OK 

Content-Type: application/json

{
    "retails": [
        {
            "id": "00000000-0000-0000-0000-000000000000",
            "name": "Test",
            "description": "test desc",
            "lat": 123123,
            "long": 21232,
            "open_hours": {
                "monday": {
                    "open": "09:00",
                    "close": "18:00"
                },
                "tuesday": {
                    "open": "09:00",
                    "close": "18:00"
                },
                "wednesday": {
                    "open": "09:00",
                    "close": "18:00"
                },
                "thursday": {
                    "open": "09:00",
                    "close": "18:00"
                },
                "friday": {
                    "open": "09:00",
                    "close": "18:00"
                },
                "saturday": {
                    "open": "10:00",
                    "close": "16:00"
                },
                "sunday": ""
            }
        }
    ]
}
Get Lockless reservation preffered branch
POST /api/lockless-reservation/preferred-branch

Return a single location for users who had a Withdraw with a location of last Withdraw or returns list of all locations for users who are executing Withdraw for first time

Request headers

Authorization
string required

API Key

Example:
f5e6d209-428e-4843-8744-6173270a59dd

Request body

Object
userId
integer required

Users identificator in the PAM&Wallet

Example:
12345

Responses

200 OK
Body
Object
id
string

Id of Retail Cash desk in the Maxbet Retail System

Example:
00000000-0000-0000-0000-000000000000
name
string

Name of Retail Cash desk in the Maxbet Retail System

Example:
Test
description
string
Example:
test desc
lat
integer

Geographic coordinate that specifies the north–south position.

Example:
123123
long
integer

Geographic coordinate that specifies the east–west position.

Example:
21232
open_hours
Object
monday
Object
open
string
Example:
09:00
close
string
Example:
18:00
tuesday
Object
open
string
Example:
09:00
close
string
Example:
18:00
wednesday
Object
open
string
Example:
09:00
close
string
Example:
18:00
thursday
Object
open
string
Example:
09:00
close
string
Example:
18:00
friday
Object
open
string
Example:
09:00
close
string
Example:
18:00
saturday
Object
open
string
Example:
10:00
close
string
Example:
16:00
sunday
string
Example 1
Example 2
POST https://fimb-pts.maxbet.cloud/api/lockless-reservation/preferred-branch HTTP/1.1 

Content-Type: application/json
Authorization: f5e6d209-428e-4843-8744-6173270a59dd

{
    "userId": 12345
}

HTTP/1.1 200 OK 

Content-Type: application/json

{
    "id": "00000000-0000-0000-0000-000000000000",
    "name": "Test",
    "description": "test desc",
    "lat": 123123,
    "long": 21232,
    "open_hours": {
        "monday": {
            "open": "09:00",
            "close": "18:00"
        },
        "tuesday": {
            "open": "09:00",
            "close": "18:00"
        },
        "wednesday": {
            "open": "09:00",
            "close": "18:00"
        },
        "thursday": {
            "open": "09:00",
            "close": "18:00"
        },
        "friday": {
            "open": "09:00",
            "close": "18:00"
        },
        "saturday": {
            "open": "10:00",
            "close": "16:00"
        },
        "sunday": ""
    }
}
POST https://fimb-pts.maxbet.cloud/api/lockless-reservation/preferred-branch HTTP/1.1 

Content-Type: application/json
Authorization: f5e6d209-428e-4843-8744-6173270a59dd

{
   
}

HTTP/1.1 400 Bad Request 
Get Reservation
GET /api/v1/get-reservation

Fetchs reservation from Maxbet Retail App

Request parameters

user_id
integer required

Users identificator in the PAM&Wallet

Example:
1234

Request headers

Authorization
string optional

API KEY

Example:
08e331ab-d4fe-447a-8d77-1d417a0190ad

Responses

200 OK
Body
Object
id
string

Reservation id in the Maxbet Retail System

Example:
reservation_id
amount
number

Transaction amount in cents

Example:
123.23
confirmationPin
string

Pin code generated during reservation

Example:
asdasd
fee
number

Transaction fee amount

Example:
123.23
location
Object

location object

id
integer

Location id in the Maxbet Retail system

Example:
123
name
string

Location name

Example:
name
description
string
Example:
desc
createDate
string

Creation date of the reservation

Example:
date
expirationDate
string

Reservation expiration date

Example:
date
status
string

Reservation status

Example:
Approved
description
string
Example:
desc
user_id
integer

Users identifier in the Pam&Wallet system

Example:
123
Example 1
GET http://maxbet.retail.com/api/v1/get-reservation?user_id=1234 HTTP/1.1 

HTTP/1.1 200 OK 

Content-Type: application/json

{
    "id": "reservation_id",
    "amount": 123.23,
    "confirmationPin": "asdasd",
    "fee": 123.23,
    "location": {
        "id": 123,
        "name": "name",
        "description": "desc"
    },
    "createDate": "date",
    "expirationDate": "date",
    "status": "Approved",
    "description": "desc",
    "user_id": 123
}
Create Withdrawal Reservation
POST /api/lockless-reservation/create

Creates a lockless reservation for the specified user, provided they do not already have an active unpaid reservation, and their balance is sufficient to cover the requested amount.

Request headers

Authorization
string required

API Key

Example:
f5e6d209-428e-4843-8744-6173270a59dd

Request body

Object
locationId
string

Guid of the location where the reservation is supposed to be collected.

Example:
b841562f-e698-4b1f-a1ac-dfe82d57d61b
currency
string

ISO 4217 three-letter currency code

Example:
EUR
amount
integer

Users amount in cents

Example:
100
balance
integer

Users current balance in the core

Example:
5000
userId
integer required

Userd identificator in the Pam & Wallet system

Example:
12345

Responses

200 OK
Body
Object
code
string

A unique, auto-generated numeric code used to identify the reservation.

Example:
RESERVED
id
string

A unique identifier for the newly created reservation record.

Example:
b841562f-e698-4b1f-a1ac-dfe82d57d61b
Example 1
Example 2
Example 3

Success

POST https://fimb-pts.maxbet.cloud/api/lockless-reservation/create HTTP/1.1 

Authorization: f5e6d209-428e-4843-8744-6173270a59dd
Content-Type: application/json

{
    "locationId": "b841562f-e698-4b1f-a1ac-dfe82d57d61b",
    "currency": "EUR",
    "amount": 100,
    "balance": 5000,
    "userId":123245
}

HTTP/1.1 200 OK 

Content-Type: application/json

{
    "code": "RESERVED",
    "id": "b841562f-e698-4b1f-a1ac-dfe82d57d61b"
}

Missing request field

POST https://fimb-pts.maxbet.cloud/api/lockless-reservation/create HTTP/1.1 

Authorization: f5e6d209-428e-4843-8744-6173270a59dd
Content-Type: application/json

{
    "locationId": "b841562f-e698-4b1f-a1ac-dfe82d57d61b",
    "amount": 100,
    "balance": 5000
}

HTTP/1.1 400 Bad Request 

User already have unpaid reservation

POST https://fimb-pts.maxbet.cloud/api/lockless-reservation/create HTTP/1.1 

Authorization: f5e6d209-428e-4843-8744-6173270a59dd
Content-Type: application/json

{
    "locationId": "b841562f-e698-4b1f-a1ac-dfe82d57d61b",
    "currency": "EUR",
    "amount": 100,
    "balance": 5000,
    "userId":123245
}

HTTP/1.1 409 Conflict 

Content-Type: application/json

{
    "code": "RESERVED",
    "id": "b841562f-e698-4b1f-a1ac-dfe82d57d61b"
}
SSBT Deposits
Outgoing
GET /api/ssbt-deposit/details
POST /api/ssbt-deposit/commit
POST /api/ssbt-deposit/reject
SSBT Deposit details
GET /api/ssbt-deposit/details

Retrieves detailed information about a specific SSBT deposit reservation using its unique reservation ID.

Request parameters

reservationId
string required

Unique identifier of the SSBT deposit reservation.

Example:
00000000-0000-0000-0000-000000000000

Request headers

Authorization
string required

API Key

Example:
f5e6d209-428e-4843-8744-6173270a59dd

Responses

200 OK
Body
Object
identification
integer

User identification in the Pam&Wallet system

Example:
1234
reference
string

Transaction id in Retail system

Example:
00000000-0000-0000-0000-000000000000
amount
integer

Transaction amount

Example:
10
currency
string

Transaction currency. ISO 4217 three-letter currency code

Example:
EUR
reservationId
string

Reservation id of the transaction in the Maxbet Retail System

Example:
00000000-0000-0000-0000-000000000000
deviceId
number

id of the payment service in the Singular Payment Directory, linked to the SSBT devoices

Example:
1212
status
string

SSBT deposit current status (Pending, Success, Failed, RolledBack, Rejected)

Example:
Success
createdAt
string

UTC timestamp indicating when the reservation was created.

Example:
2025-05-29T12:17:36.275526
Example 1
Example 2
Example 3

Success request

GET https://fimb-pts.maxbet.cloud/api/ssbt-deposit/details?reservationId=00000000-0000-0000-0000-000000000000 HTTP/1.1 

Authorization: f5e6d209-428e-4843-8744-6173270a59dd

HTTP/1.1 200 OK 

Content-Type: application/json

{
    "identification": 1234,
    "reference": "00000000-0000-0000-0000-000000000000",
    "amount": 10,
    "currency": "EUR",
    "reservationId": "00000000-0000-0000-0000-000000000000",
    "deviceId": 1212,
    "status": "Success"
}

Bad request example

GET https://fimb-pts.maxbet.cloud/api/ssbt-deposit/details?reservationId=00000000-0000-0000-0000-000000000000 HTTP/1.1 

Authorization: f5e6d209-428e-4843-8744-6173270a59dd

HTTP/1.1 400 Bad Request 

Transaction not found example

GET https://fimb-pts.maxbet.cloud/api/ssbt-deposit/details?reservationId=00000000-0000-0000-0000-000000000000 HTTP/1.1 

Authorization: f5e6d209-428e-4843-8744-6173270a59dd

HTTP/1.1 404 Not Found 
SSBT Deposit Confirm
POST /api/ssbt-deposit/commit

Commits a pending SSBT deposit reservation for a specific user, finalizing the deposit transaction if it’s valid and approved by the external payment providers.

Request headers

Authorization
string required

API Key

Example:
f5e6d209-428e-4843-8744-6173270a59dd

Request body

Object
reservationId
string required

Reservation id in MaxBet Retail System

Example:
00000000-0000-0000-0000-000000000000
userId
integer required

User id in PAM & Wallet

Example:
1234

Responses

200 OK
Body
Object
reference
string

Transaction identifier in the Retail service

Example:
00000000-0000-0000-0000-000000000000
reservationId
string

Unique identifier of the SSBT deposit reservation.

Example:
00000000-0000-0000-0000-000000000000
deviceId
integer

Payment id in the SIngular Payment Directory linked to SSBT device

Example:
1345
identification
integer

User id in PAM & Wallet

Example:
12345
amount
integer

Transaction amount in cents

Example:
1000
currency
string

ISO 4217 three-letter currency code

Example:
EUR
status
string

Final status of the deposit (e.g. “Success”, “Failed”).

Example:
Success
createdAt
string

UTC timestamp indicating when the reservation was created.

Example:
01-21-2025 16:00
Example 1
POST https://fimb-pts.maxbet.cloud/api/ssbt-deposit/commit HTTP/1.1 

Authorization: f5e6d209-428e-4843-8744-6173270a59dd
Content-Type: application/json

{
    "reservationId": "00000000-0000-0000-0000-000000000000",
    "userId": 1234
}

HTTP/1.1 200 OK 

Content-Type: application/json

{
    "transactionId": "00000000-0000-0000-0000-000000000000",
    "reservationId": "00000000-0000-0000-0000-000000000000",
    "deviceId": 1345,
    "identification": 12345,
    "amount": 1000,
    "currency": "EUR",
    "status": "Success",
    "createdAt": "01-21-2025 16:00"
}
SSBT Deposit Reject
POST /api/ssbt-deposit/reject

Rejects an existing SSBT deposit reservation, provided it is currently in a Pending state.

Request parameters

reservationId
string required

Reservation id in MaxBet Retail System

Example:
00000000-0000-0000-0000-000000000000

Request headers

Authorization
string required

API Key

Example:
f5e6d209-428e-4843-8744-6173270a59dd

Responses

200 OK
Body
Object
reference
string

Transaction identifier in the Retail service

Example:
00000000-0000-0000-0000-000000000000
reservationId
string

Unique identifier of the SSBT deposit reservation.

Example:
00000000-0000-0000-0000-000000000000
deviceId
integer

Payment id in the SIngular Payment Directory linked to SSBT device

Example:
1345
identification
integer

User id in PAM & Wallet

Example:
12345
amount
integer

Transaction amount in cents

Example:
1000
currency
string

ISO 4217 three-letter currency code

Example:
EUR
status
string

Final status of the deposit (e.g. “Success”, “Failed”).

Example:
Success
createdAt
string

UTC timestamp indicating when the reservation was created.

Example:
01-21-2025 16:00
Example 1

Success Example

POST https://fimb-pts.maxbet.cloud/api/ssbt-deposit/reject?reservationId=00000000-0000-0000-0000-000000000000 HTTP/1.1 

Authorization: f5e6d209-428e-4843-8744-6173270a59dd

HTTP/1.1 200 OK 

Content-Type: application/json

{
    "transactionId": "00000000-0000-0000-0000-000000000000",
    "reservationId": "00000000-0000-0000-0000-000000000000",
    "deviceId": 1345,
    "identification": 12345,
    "amount": 1000,
    "currency": "EUR",
    "status": "Success",
    "createdAt": "01-21-2025 16:00"
}
Website
Retail Cash-Desk Withdrawals
Incoming
POST /api/v1/integrations/get-locations
POST /api/v1/integrations/get-users-default-location
POST /api/v1/integrations/get-reservation
POST /api/v1/transactions/create-reservation
POST /api/v1/payment/withdraw-reservation
Get Locations
POST /api/v1/integrations/get-locations

Get Locations operation is used to retrieve all the cash desk locations

Request headers

X-Requested-With
boolean required

ALways should be true

Referer
string required
Example:
https://authproxy.maxbet.com
Content-Type
string required
Example:
application/json
Cookie
string required

JSESSIONID returned during core auth

Example:
eyJ0cyI6NDg5NTE5NzExMDQyLCJkdCI6ImV5SjFhV1FpT2pFNU1UVTJPVEVzSW5OemFXUWlPaUkzWTJFeFlqVmhNaTB6TVdSaUxUUTVPRGd0T0dGbU5pMHhZemxsTlRZMlpqWm1PV0lpZlE9PSIsInNnIjoiYjcwNzYyNDVmYjFkNzYwZWRkMzlhOGJkMWNhMGMwZDU4M2Q2ZDJiMGFjNjBkWY2NzQyZTU2NzcyYmYxMiJ9
X-UserID
integer required

Users identificator in the PAM&Wallet

Example:
1234

Request body

Object
city_id
string

If of a city in the Maxbet Retail System

Example:
00000000-0000-0000-0000-000000000000
district_id
string

If of a district in the Maxbet Retail System

Example:
00000000-0000-0000-0000-000000000000
name
string

Name of Retail cash desk in the Maxbet Retail System

Example:
test

Responses

200 OK
Body
Object
code
integer
Example:
10
message
string
Example:
Success
data
Object
retails
Array

Array of retails

Object
id
string

Id of Retail Cash desk in the Maxbet Retail System

Example:
00000000-0000-0000-0000-000000000000
name
string

Name of Retail Cash desk in the Maxbet Retail System

Example:
Test
description
string
Example:
test desc
lat
integer

Geographic coordinate that specifies the north–south position.

Example:
123123
long
integer

Geographic coordinate that specifies the east–west position.

Example:
21232
open_hours
Object
monday
Object
open
string
Example:
09:00
close
string
Example:
18:00
tuesday
Object
open
string
Example:
09:00
close
string
Example:
18:00
wednesday
Object
open
string
Example:
09:00
close
string
Example:
18:00
thursday
Object
open
string
Example:
09:00
close
string
Example:
18:00
friday
Object
open
string
Example:
09:00
close
string
Example:
18:00
saturday
Object
open
string
Example:
10:00
close
string
Example:
16:00
sunday
string
Example 1
Example 2
POST http://s/paymentswebapi/api/integrations/get-locations HTTP/1.1 

X-Requested-With: true
Referer: https://authproxy.maxbet.com
Content-Type: application/json
Cookie: eyJ0cyI6NDg5NTE5NzExMDQyLCJkdCI6ImV5SjFhV1FpT2pFNU1UVTJPVEVzSW5OemFXUWlPaUkzWTJFeFlqVmhNaTB6TVdSaUxUUTVPRGd0T0dGbU5pMHhZemxsTlRZMlpqWm1PV0lpZlE9PSIsInNnIjoiYjcwNzYyNDVmYjFkNzYwZWRkMzlhOGJkMWNhMGMwZDU4M2Q2ZDJiMGFjNjBkWY2NzQyZTU2NzcyYmYxMiJ9
X-UserID: 1234

HTTP/1.1 200 OK 

Content-Type: application/json

{
    "code": 10,
    "message": "Success",
    "data": {
        "retails": [
            {
                "id": "00000000-0000-0000-0000-000000000000",
                "name": "Test",
                "description": "test desc",
                "lat": 123123,
                "long": 21232,
                "open_hours": {
                    "monday": {
                        "open": "09:00",
                        "close": "18:00"
                    },
                    "tuesday": {
                        "open": "09:00",
                        "close": "18:00"
                    },
                    "wednesday": {
                        "open": "09:00",
                        "close": "18:00"
                    },
                    "thursday": {
                        "open": "09:00",
                        "close": "18:00"
                    },
                    "friday": {
                        "open": "09:00",
                        "close": "18:00"
                    },
                    "saturday": {
                        "open": "10:00",
                        "close": "16:00"
                    },
                    "sunday": ""
                }
            },
            {
                "id": "11111111-1111-1111-1111-111111111111",
                "name": "Test2",
                "description": "test desc2",
                "lat": 3234234,
                "long": 7556434,
                "open_hours": {
                    "monday": {
                        "open": "09:00",
                        "close": "18:00"
                    },
                    "tuesday": {
                        "open": "09:00",
                        "close": "18:00"
                    },
                    "wednesday": {
                        "open": "09:00",
                        "close": "18:00"
                    },
                    "thursday": {
                        "open": "09:00",
                        "close": "18:00"
                    },
                    "friday": {
                        "open": "09:00",
                        "close": "18:00"
                    },
                    "saturday": {
                        "open": "10:00",
                        "close": "16:00"
                    },
                    "sunday": ""
                }
            }
        ]
    }
}
POST https://authproxy.maxbet.com/paymentswebapi/api/integrations/get-locations HTTP/1.1 

X-Requested-With: true
Referer: https://authproxy.maxbet.com
Content-Type: application/json
Cookie: eyJ0cyI6NDg5NTE5NzExMDQyLCJkdCI6ImV5SjFhV1FpT2pFNU1UVTJPVEVzSW5OemFXUWlPaUkzWTJFeFlqVmhNaTB6TVdSaUxUUTVPRGd0T0dGbU5pMHhZemxsTlRZMlpqWm1PV0lpZlE9PSIsInNnIjoiYjcwNzYyNDVmYjFkNzYwZWRkMzlhOGJkMWNhMGMwZDU4M2Q2ZDJiMGFjNjBkWY2NzQyZTU2NzcyYmYxMiJ9
X-UserID: 1234

HTTP/1.1 200 OK 

Content-Type: application/json

{
    "code": 111,
    "message": "GENERIC_ERROR"
}
Get Users Default Location
POST /api/v1/integrations/get-users-default-location

Retrieves users default location from the Maxbet Retail System, which was choosen during first withdrawal. User is unable to change it by themself. They should ask administrator in order to change it.

Request headers

X-Requested-With
boolean required

ALways should be true

Example:
true
Referer
string required
Example:
https://authproxy.maxbet.com
Content-Type
string required
Example:
application/json
Cookie
string required
Example:
eyJ0cyI6NDg5NTE5NzExMDQyLCJkdCI6ImV5SjFhV1FpT2pFNU1UVTJPVEVzSW5OemFXUWlPaUkzWTJFeFlqVmhNaTB6TVdSaUxUUTVPRGd0T0dGbU5pMHhZemxsTlRZMlpqWm1PV0lpZlE9PSIsInNnIjoiYjcwNzYyNDVmYjFkNzYwZWRkMzlhOGJkMWNhMGMwZDU4M2Q2ZDJiMGFjNjBkWY2NzQyZTU2NzcyYmYxMiJ9
X-UserID
string required

Users identificator in the PAM&Wallet

Example:
2345

Request body

Object
code
integer
Example:
10
message
string
Example:
Success
data
Object
id
string

Id of Retail Cash desk in the Maxbet Retail System

Example:
00000000-0000-0000-0000-000000000000
name
string

Name of Retail Cash desk in the Maxbet Retail System

Example:
Test
description
string
Example:
test desc
lat
integer

Geographic coordinate that specifies the north–south position.

Example:
123123
long
integer

Geographic coordinate that specifies the east–west position.

Example:
21232
open_hours
Object
monday
Object
open
string
Example:
09:00
close
string
Example:
18:00
tuesday
Object
open
string
Example:
09:00
close
string
Example:
18:00
wednesday
Object
open
string
Example:
09:00
close
string
Example:
18:00
thursday
Object
open
string
Example:
09:00
close
string
Example:
18:00
friday
Object
open
string
Example:
09:00
close
string
Example:
18:00
saturday
Object
open
string
Example:
10:00
close
string
Example:
16:00
sunday
string
Get Reservation
POST /api/v1/integrations/get-reservation

Fetchs reservation detaiols from Maxbet Retail and redirects to Front end client

Request headers

X-Requested-With
boolean required

ALways should be true

Example:
true
Referer
string required
Example:
https://authproxy.maxbet.com
Content-Type
string required
Example:
application/json
Cookie
string required

JSESSIONID returned during core auth

Example:
eyJ0cyI6NDg5NTE5NzExMDQyLCJkdCI6ImV5SjFhV1FpT2pFNU1UVTJPVEVzSW5OemFXUWlPaUkzWTJFeFlqVmhNaTB6TVdSaUxUUTVPRGd0T0dGbU5pMHhZemxsTlRZMlpqWm1PV0lpZlE9PSIsInNnIjoiYjcwNzYyNDVmYjFkNzYwZWRkMzlhOGJkMWNhMGMwZDU4M2Q2ZDJiMGFjNjBkWY2NzQyZTU2NzcyYmYxMiJ9
X-UserID
integer optional

Users identificator in the PAM&Wallet

Example:
1234

Responses

200 OK
Body
Object
code
integer
Example:
10
message
string
Example:
success
data
Object
id
string

Reservation id in the Maxbet Retail System

Example:
reservation_id
amount
number

Transaction amount in cents

Example:
123.23
confirmationPin
string

Pin code generated during reservation

Example:
asdasd
fee
number

Transaction fee amount

Example:
123.23
location
Object

location object

id
integer

Location id in the Maxbet Retail system

Example:
123
name
string

Location name

Example:
name
description
string
Example:
desc
createDate
string

Creation date of the reservation

Example:
date
expirationDate
string

Reservation expiration date

Example:
date
status
string

Reservation status

Example:
Approved
description
string
Example:
desc
user_id
integer

Users identifier in the Pam&Wallet system

Example:
123
Example 1
Example 2

Successful Request

POST http://s/paymentswebapi/api/integrations/get-reservation HTTP/1.1 

X-Requested-With: true
Referer: https://authproxy.maxbet.com
Content-Type: application/json
Cookie: eyJ0cyI6NDg5NTE5NzExMDQyLCJkdCI6ImV5SjFhV1FpT2pFNU1UVTJPVEVzSW5OemFXUWlPaUkzWTJFeFlqVmhNaTB6TVdSaUxUUTVPRGd0T0dGbU5pMHhZemxsTlRZMlpqWm1PV0lpZlE9PSIsInNnIjoiYjcwNzYyNDVmYjFkNzYwZWRkMzlhOGJkMWNhMGMwZDU4M2Q2ZDJiMGFjNjBkWY2NzQyZTU2NzcyYmYxMiJ9

HTTP/1.1 200 OK 

Content-Type: application/json

{
    "code": 10,
    "message": "success",
    "data": {
        "id": "reservation_id",
        "amount": 123.23,
        "confirmationPin": "asdasd",
        "fee": 123.23,
        "location": {
            "id": 123,
            "name": "name",
            "description": "desc"
        },
        "createDate": "date",
        "expirationDate": "date",
        "status": "Approved",
        "description": "desc",
        "user_id": 123
    }
}

Generic error example

POST https://authproxy.maxbet.com/api/v1/paymentswebapi/api/integrations/get-reservation HTTP/1.1 

X-Requested-With: true
Referer: https://authproxy.maxbet.com
Content-Type: application/json
Cookie: eyJ0cyI6NDg5NTE5NzExMDQyLCJkdCI6ImV5SjFhV1FpT2pFNU1UVTJPVEVzSW5OemFXUWlPaUkzWTJFeFlqVmhNaTB6TVdSaUxUUTVPRGd0T0dGbU5pMHhZemxsTlRZMlpqWm1PV0lpZlE9PSIsInNnIjoiYjcwNzYyNDVmYjFkNzYwZWRkMzlhOGJkMWNhMGMwZDU4M2Q2ZDJiMGFjNjBkWY2NzQyZTU2NzcyYmYxMiJ9

HTTP/1.1 200 OK 

Content-Type: application/json

{
    "code": 111,
    "message": "GENERIC_ERROR"
}
Create Withdrawal Reservation
POST /api/v1/transactions/create-reservation

Request headers

Nonce
string required

Random Nonce generated for each request

Example:
12344
Hash
string required

Hash of the request. Check hash generation instruction here

Example:
6f2c41f942e0f454462b29a6755630e147917cb06917fce6c8ee127a1bced3ec

Request body

Object
userId
integer

Userd identificator in the Pam & Wallet system

Example:
2147483647
amount
integer

Transaction amount in cents

Example:
1000000
currency
string

ISO 4217 three-letter currency code

Example:
BAM
locationId
string

Guid of the location where the reservation is supposed to be collected.

Example:
3fa85f64-5717-4562-b3fc-2c963f66afa6

Responses

200 OK
Body
Object
code
integer

Status code

Example:
10
message
string

message

Example:
Success
data
Object
code
string

A unique, auto-generated numeric code used to identify the reservation.

Example:
string
id
string

A unique identifier for the newly created reservation record.

Example:
Guid
Example 1
POST https://fimb-pts.maxbet.cloud/api/v1/transactions/create-reservation HTTP/1.1 

Nonce: 12344
Hash: 6f2c41f942e0f454462b29a6755630e147917cb06917fce6c8ee127a1bced3ec
Content-Type: application/json

{
    "userId": 2147483647,
    "amount": 1000000,
    "currency": "BAM",
    "locationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}

HTTP/1.1 200 OK 

Content-Type: application/json

{
    "code": 10,
    "message": "Success",
    "data": {
        "code": "string",
        "id": "Guid"
    }
}
Withdrawal Reservation
POST /api/v1/payment/withdraw-reservation

During this step user choose one location from previous step and withdraw is reserved.

Request headers

X-Requested-With
boolean required

ALways should be true

Example:
true
Referer
string required
Example:
https://authproxy.maxbet.com
Content-Type
string required
Example:
application/json
Cookie
string required

JSESSIONID returned during core auth

Example:
eyJ0cyI6NDg5NTE5NzExMDQyLCJkdCI6ImV5SjFhV1FpT2pFNU1UVTJPVEVzSW5OemFXUWlPaUkzWTJFeFlqVmhNaTB6TVdSaUxUUTVPRGd0T0dGbU5pMHhZemxsTlRZMlpqWm1PV0lpZlE9PSIsInNnIjoiYjcwNzYyNDVmYjFkNzYwZWRkMzlhOGJkMWNhMGMwZDU4M2Q2ZDJiMGFjNjBkWY2NzQyZTU2NzcyYmYxMiJ9
X-UserID
integer required

Users identificator in the PAM&Wallet

Request body

Object
userId
string required

Userd identificator in the Pam & Wallet system

Example:
2147483647
amount
integer required

Transaction amount in cents

Example:
1000000
currency
string

ISO 4217 three-letter currency code

Example:
BAM
locationId
string

Guid of the location where the reservation is supposed to be collected.

Example:
3fa85f64-5717-4562-b3fc-2c963f66afa6

Responses

200 OK
Body
Object
code
integer
Example:
10
message
string
Example:
success
data
Object
code
string required

A unique, auto-generated numeric code used to identify the reservation.

Example:
string
id
string required

A unique identifier for the newly created reservation record.

Example:
Guid
Example 1
Example 2

Successful Request

POST https://authproxy.maxbet.com//api/v1/payment/withdraw-reservation HTTP/1.1 

X-Requested-With: true
Referer: https://authproxy.maxbet.com
Content-Type: application/json
Cookie: eyJ0cyI6NDg5NTE5NzExMDQyLCJkdCI6ImV5SjFhV1FpT2pFNU1UVTJPVEVzSW5OemFXUWlPaUkzWTJFeFlqVmhNaTB6TVdSaUxUUTVPRGd0T0dGbU5pMHhZemxsTlRZMlpqWm1PV0lpZlE9PSIsInNnIjoiYjcwNzYyNDVmYjFkNzYwZWRkMzlhOGJkMWNhMGMwZDU4M2Q2ZDJiMGFjNjBkWY2NzQyZTU2NzcyYmYxMiJ9
X-UserID: 1234

{
    "userId": "2147483647",
    "amount": 1000000,
    "currency": "BAM",
    "locationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}

HTTP/1.1 200 OK 

Content-Type: application/json

{
    "code": 10,
    "message": "success",
    "data": {
        "code": "string",
        "id": "Guid"
    }
}

Invalid Request

POST https://authproxy.maxbet.com//api/v1/payment/withdraw-reservation HTTP/1.1 

X-Requested-With: true
Referer: https://authproxy.maxbet.com
Content-Type: application/json
Cookie: eyJ0cyI6NDg5NTE5NzExMDQyLCJkdCI6ImV5SjFhV1FpT2pFNU1UVTJPVEVzSW5OemFXUWlPaUkzWTJFeFlqVmhNaTB6TVdSaUxUUTVPRGd0T0dGbU5pMHhZemxsTlRZMlpqWm1PV0lpZlE9PSIsInNnIjoiYjcwNzYyNDVmYjFkNzYwZWRkMzlhOGJkMWNhMGMwZDU4M2Q2ZDJiMGFjNjBkWY2NzQyZTU2NzcyYmYxMiJ9

{
    "currency": "EURS",
    "amount": 10
}

HTTP/1.1 200 OK 

Content-Type: application/json

{
    "code": 99,
    "message": "Invalid Currency"
}
SSBT Deposits
Incoming

MaxBet -> Singular

POST /api/v1/ssbt/transactions/get-transaction-details
POST /api/v1/transactions/deposit
Get Transaction Details
POST /api/v1/ssbt/transactions/get-transaction-details

Retrieves transaction details from maxbet retail sysrem and forwards to Front-end client

Request headers

X-Requested-With
boolean required

ALways should be true

Example:
true
Referer
string required
Example:
https://authproxy.maxbet.com
Content-Type
string required
Example:
application/json
Cookie
string required

JSESSIONID returned during core auth

Example:
eyJ0cyI6NDg5NTE5NzExMDQyLCJkdCI6ImV5SjFhV1FpT2pFNU1UVTJPVEVzSW5OemFXUWlPaUkzWTJFeFlqVmhNaTB6TVdSaUxUUTVPRGd0T0dGbU5pMHhZemxsTlRZMlpqWm1PV0lpZlE9PSIsInNnIjoiYjcwNzYyNDVmYjFkNzYwZWRkMzlhOGJkMWNhMGMwZDU4M2Q2ZDJiMGFjNjBkWY2NzQyZTU2NzcyYmYxMiJ9
X-UserID
integer required

Users identificator in the PAM&Wallet

Example:
1234

Request body

Object
reservation_id
string

Unique id of reservation in MaxBet retail Service

Example:
00000000-0000-0000-0000-000000000000

Responses

200 OK
Body
Object
code
string

Status code

Example:
10
message
string

Message

Example:
Success
data
Object

Response data returned from thr retail system

Example 1
Example 2

Successfull request example

POST https://authproxy.maxbet.com/api/v1/ssbt/transactions/get-transaction-details HTTP/1.1 

X-Requested-With: true
Referer: https://authproxy.maxbet.com
Content-Type: application/json
Cookie: eyJ0cyI6NDg5NTE5NzExMDQyLCJkdCI6ImV5SjFhV1FpT2pFNU1UVTJPVEVzSW5OemFXUWlPaUkzWTJFeFlqVmhNaTB6TVdSaUxUUTVPRGd0T0dGbU5pMHhZemxsTlRZMlpqWm1PV0lpZlE9PSIsInNnIjoiYjcwNzYyNDVmYjFkNzYwZWRkMzlhOGJkMWNhMGMwZDU4M2Q2ZDJiMGFjNjBkWY2NzQyZTU2NzcyYmYxMiJ9
X-UserID: 1234

{
    "reservation_id": "00000000-0000-0000-0000-000000000000"
}

HTTP/1.1 200 OK 

Content-Type: application/json

{
    "code": "10",
    "message": "Success",
    "data": {}
}

Transaction not found

POST https://authproxy.maxbet.com/api/v1/ssbt/transactions/get-transaction-details HTTP/1.1 

X-Requested-With: true
Referer: https://authproxy.maxbet.com
Content-Type: application/json
Cookie: eyJ0cyI6NDg5NTE5NzExMDQyLCJkdCI6ImV5SjFhV1FpT2pFNU1UVTJPVEVzSW5OemFXUWlPaUkzWTJFeFlqVmhNaTB6TVdSaUxUUTVPRGd0T0dGbU5pMHhZemxsTlRZMlpqWm1PV0lpZlE9PSIsInNnIjoiYjcwNzYyNDVmYjFkNzYwZWRkMzlhOGJkMWNhMGMwZDU4M2Q2ZDJiMGFjNjBkWY2NzQyZTU2NzcyYmYxMiJ9
X-UserID: 1234

{
    "transaction_id": "00000000-0000-0000-0000-000000000000"
}

HTTP/1.1 200 OK 

Content-Type: application/json

{
    "code": "156",
    "message": "TRANSACTION_NOT_FOUND"
}
Deposit
POST /api/v1/transactions/deposit

This method is creating deposit transaction in the Core and persistence.Adds amount to the users balance

Request headers

X-Requested-With
boolean required

ALways should be true

Example:
true
Referer
string required
Example:
https://authproxy.maxbet.com
Content-Type
string required
Example:
application/json
Cookie
string required

JSESSIONID returned during core auth

Example:
eyJ0cyI6NDg5NTE5NzExMDQyLCJkdCI6ImV5SjFhV1FpT2pFNU1UVTJPVEVzSW5OemFXUWlPaUkzWTJFeFlqVmhNaTB6TVdSaUxUUTVPRGd0T0dGbU5pMHhZemxsTlRZMlpqWm1PV0lpZlE9PSIsInNnIjoiYjcwNzYyNDVmYjFkNzYwZWRkMzlhOGJkMWNhMGMwZDU4M2Q2ZDJiMGFjNjBkWY2NzQyZTU2NzcyYmYxMiJ9
X-UserID
integer required

Users identificator in the PAM&Wallet

Example:
1234

Request body

Object
reservation_id
string

Reservation id in MaxBet Retail System

Example:
00000000-0000-0000-0000-000000000000

Responses

200 OK
Body
Object
code
integer

Status code

Example:
10
message
string

Message

Example:
success
data
Object
sis_transaction_id
integer

Transaction identifier in the persistence service

Example:
1122
provider_transaction_id
string

Transaction identifier in the Retail service

Example:
xxxxxxxxxxxxxxxx
core_transaction_id
string

Transaction identifier in the Core system

Example:
xxxxxxxxxxxxxxxx
Example 1
Example 2

Successful Deposit

POST https://authproxy.maxbet.com/api/v1/transactions/deposit HTTP/1.1 

X-Requested-With: true
Referer: https://authproxy.maxbet.com
Content-Type: application/json
Cookie: eyJ0cyI6NDg5NTE5NzExMDQyLCJkdCI6ImV5SjFhV1FpT2pFNU1UVTJPVEVzSW5OemFXUWlPaUkzWTJFeFlqVmhNaTB6TVdSaUxUUTVPRGd0T0dGbU5pMHhZemxsTlRZMlpqWm1PV0lpZlE9PSIsInNnIjoiYjcwNzYyNDVmYjFkNzYwZWRkMzlhOGJkMWNhMGMwZDU4M2Q2ZDJiMGFjNjBkWY2NzQyZTU2NzcyYmYxMiJ9
X-UserID: 1234

{
    "reservation_id": "00000000-0000-0000-0000-000000000000",
    "user_id": "1234"
}

HTTP/1.1 200 OK 

Content-Type: application/json

{
    "code": 10,
    "message": "success",
    "data": {
        "sis_transaction_id": 1122,
        "provider_transaction_id": "xxxxxxxxxxxxxxxx",
        "core_transaction_id": "xxxxxxxxxxxxxxxx"
    }
}

Duplicated deposit

POST https://authproxy.maxbet.com/api/v1/transactions/deposit HTTP/1.1 

X-Requested-With: true
Referer: https://authproxy.maxbet.com
Content-Type: application/json
Cookie: eyJ0cyI6NDg5NTE5NzExMDQyLCJkdCI6ImV5SjFhV1FpT2pFNU1UVTJPVEVzSW5OemFXUWlPaUkzWTJFeFlqVmhNaTB6TVdSaUxUUTVPRGd0T0dGbU5pMHhZemxsTlRZMlpqWm1PV0lpZlE9PSIsInNnIjoiYjcwNzYyNDVmYjFkNzYwZWRkMzlhOGJkMWNhMGMwZDU4M2Q2ZDJiMGFjNjBkWY2NzQyZTU2NzcyYmYxMiJ9
X-UserID: 1234

{
    "reservation_id": "00000000-0000-0000-0000-000000000000",
    "user_id": "1234"
}

HTTP/1.1 200 OK 

Content-Type: application/json


{
    "code": 151,
    "message": "DUPLICATED_PROVIDERS_TRANSACTIONID"
}
Appendix
Hash Calculation

Each request sent to the MaxBridge API includes hash parameter to make sure that request in valid and that requestor has right to request transaction validity check.

Hash is being calculated by combining several parameters of the request and applying SHA256 hash to it. More specifically, hash of the request is calculated in a following way:

SHA256(nonce + request body + provider secret key)

  • Nonce - Parameter sent in a header of the request used for security purposes
  • Request Body - JSON that is sent in the body of the request
  • Provider Secret Key - Shared key needed to communicate with the MaxBridge

For example, lets look at following get-transaction-details request:

nonce: 1234

{“transaction_id”:“00000000-0000-0000-0000-000000000000”,“service_id”:1,“user_id”:1121}

String needed to calculate the hash will be:

1234{"transaction_id":"00000000-0000-0000-0000-000000000000","service_id":1,"user_id":1121}secret


SHA256 value of the string will be:

6f2c41f942e0f454462b29a6755630e147917cb06917fce6c8ee127a1bced3ec

Status Codes
Code Name Description
10 STATUS_SUCCESS Operation was successful
99 WRONG_REQUEST Received request had invalid structure
100 FIELD_LIMIT_REACHED Value specified in the field has reached its limit
101 FIELD_MIN_MAX_NOT_MATCHED Value specified in the field does not meet Min / Max requirements
102 FIELD_FORMAT_NOT_MATCHED Value specified in the field does not meet its format requirements
103 FIELD_IS_EMPTY Field can`t be empty
104 PATTERN_IS_NOT_MATCHED Value specified in the field does not meet its pattern requirements
105 COUNTRY_NOT_SUPPORTED Specified country is not supported by the system
106 AGE_LIMIT_NOT_MATCHED Specified age of the user does not meet system defined requirements
107 ID_DOCUMENT_IS_MISSING ID Document of the user must be specified
108 MAX_POSSIBLE_REG_PER_IP_REACHED IP has reached its limit for number of registrations allowed
109 UNABLE_TO_SAVE_ID_DOC ID Document of the user could not be saved
110 UNABLE_TO_ASSIGN_ACCOUNT_TO_USER Can not assign the payment account to the user
111 GENERIC_FAILED_ERROR Generic error
112 MISSING_PARAMETERS The request is missing mandatory parameters
113 USER_WITH_GIVEN_AUTH_CREDENTIALS_NOT_FOUND Specified user identifier or password was incorrect
114 OTP_REQUEST_LIMIT_REACHED Reached maximum number of OTP send requests
115 UNABLE_TO_SEND_OTP_TEL_IS_MISSING The user has no phone number assigned to it
116 UNABLE_TO_SEND_SMS_CODE_OTP_IS_ENABLED Could not send high security enable OTP
117 FAILED_TO_SEND_OTP OTP code could not be sent
118 OTP_IS_SENT OTP code has been sent to the user
119 OTP_NOT_FOUND Specified otp code was incorrect
120 OTP_IS_NOT_ENABLED High security mode is not activated for the user
121 UNABLE_TO_GENERATE_OTP Unable to generate OTP
122 OTP_IS_REQUIRED User has high security enabled and no OTP was provided
123 LAST_ACCESS_FROM_DIFFERENT_IP The last requester IP for the session was different from the current one
124 IP_IS_BLOCKED IP has exceeded number of requests allowed and has been blocked
125 ACCOUNT_NOT_FOUND Specified user account can not be found
126 SESSION_NOT_FOUND Specified user has no active session
127 OLD_AND_NEW_VALUES_MATCH_ERROR The old and new values match, the value can not be updated
128 CONTACT_DETAILS_NOT_ASSIGNED The user has no contact details assigned
129 CONTACT_DETAIL_NOT_MATCHED Provided contact detail information is invalid
130 UNABLE_TO_ENABLE_OTP_TEL_IS_MISSING The user has no phone number assigned to it
131 ACCOUNT_IS_BLOCKED User account is blocked
132 OTP_IS_OFF High security mode is disabled for the user
133 USER_HAS_GIVEN_ID_DOC ID document already exists
134 OTP_IS_ENABLED High security mode is activated for the user
135 USERS_DOCUMENT_NOT_FOUND Document with the specified id can not be found
136 DOCUMENT_PHOTO_ALREADY_EXISTS ID document already has a photo
137 PROVIDER_NOT_FOUND Could not find the provider id
138 ACCESS_DENIED Access denied to the specified operation
139 WRONG_HASH The has of the request is invalid
140 ACCESS_GRANTED Access granted
141 USER_IS_SELF_EXCLUDED The user has self-exclusion limit
142 WRONG_DATES Dates are invalid
143 CAN_NOT_BE_NEGATIVE The amount can not be negative
144 MUST_BE_MORE_THAN_ZERO The amount can not be negative
145 CURRENCY_NOT_FOUND Specified currency could not be found
146 USERS_ACCOUNTS_NOT_FOUND User has no account in the specified currency
147 TOKEN_NOT_FOUND Specified token could not be found
148 TOKEN_IS_EXPIRED Specified token is expired
149 INCORRECT_USER_STATUSID Specified user status id is invalid
150 ACCESS_DENIED_FOR_GIVEN_PROVIDER Provider doesn’t have the access to perform the operation
151 DUPLICATED_PROVIDERS_TRANSACTIONID Specified provider transaction id already exists
152 PRIMARY_CURRENCY_NOT_FOUND No preferred currency is specified
153 TRANSACTION_AMOUNT_AND_LIMIT_DONT_MATCH Transaction amount breaches the limit rules
154 INSUFFICIENT_FUNDS Insufficient funds on the account
155 INCORRECT_TRANSACTION_ID_FORMAT Transaction id format is invalid
156 TRANSACTION_NOT_FOUND Couldn’t find transaction with the given id
157 TRANSACTION_STATUS_SUCCESS Transaction status is - SUCCESS
158 TRANSACTION_STATUS_ROLLBACK Transaction status is - ROLLBACK
159 ACCOUNT_IS_SUSPENDED User account is suspended
170 UNABLE_TO_GET_BALANCE Unable to get user balance
171 UNABLE_TO_EXCHANGE Unable to exchange between currencies
172 TRANSACTION_ROLLBACK_TIME_EXPIRED Rollback time limit expired
173 UNABLE_TO_ROLLBACK_TRANSACTION Unable to rollback transaction
174 PAYMENT_ACCOUNT_NOT_FOUND Payment account with the specified id not found
175 PAYMENT_ACCOUNT_IS_NOT_VERIFIED Specified payment account is not verified
176 EXCHANGE_RATE_NOT_FOUND Exchange rate between currencies is not specified
177 CARD_VERIFICATION_TRANSACTION_DOES_NOT_REQUIRE_APPROVAL Approval is not required for card verification transaction
178 UNIDENTIFIED_TRANSACTION_STATUS Couldn’t identify transaction status
179 UNABLE_TO_CHANGE_TRANSACTION_STATUS_FROM_CURRENT_STATUS Transaction can not be updated from the current status to the specified one
180 UNABLE_TO_CHANGE_TRANSACTION_STATUS Unable to change transaction status
181 TRANSACTION_STATUS_APPROVED Transaction status is - APPROVED
182 TRANSACTION_STATUS_PENDING Transaction status is - PENDING
183 TRANSACTION_STATUS_REJECTED Transaction status is - REJECTED
184 TRANSACTION_STATUS_FROZEN Transaction status is - FROZEN
185 TRANSACTION_STATUS_CANCELED Transaction status is - CANCELED
186 PROVIDER_IS_DISABLED Specified provider is disabled
187 FAILED_TO_VERIFY_PARAMETERS Couldn’t verify provided parameters
188 REGISTRATION_PROFILE_NOT_FOUND Specified registration profile doesn’t exist
189 ORIGIN_DOMAIN_NOT_ALLOWED Origin domain is not allowed
190 UNABLE_TO_SEND_EMAIL_VERIFICATION_EMAIL_IS_MISSING Email couldn’t be sent because user has no email specified
191 FIELD_NEW_VALUE_CAN_NOT_BE_LESS_THAN_CURRENT_VALUE The specified value can not be less than the old one
192 TERMS_AND_CONDITION_NOT_FOUND Specified T&C could not be found
193 USER_IS_MISSING_REGISTRATION_DOMAIN User has no registration domain specified
194 UNABLE_TO_ACCEPT_PROVIDED_TERMS Specified T&C could not be accepted
195 USER_HAS_TO_ACCEPT_REQUIRED_TERMS User is required to accept specific T&C for the operation
196 TRANSACTION_STATUS_RETURN Transaction status is - RETURN
197 CONTACT_CHANNEL_NOT_VERIFIED Specified contact channel is not verified
198 USER_IS_MISSING_DATE_OF_BIRTH Date of birth is not specified for the user
199 CARD_VERIFICATION_TRANSACTION_CANNOT_PARTICIPATE_IN_BONUS Card verification transaction can not be a bonus transaction
200 STATUS_ITEM_EXISTS The requested resource is available
201 CASH_TRANSACTION_CANNOT_PARTICIPATE_IN_BONUS Cash transaction can not be a bonus transaction
202 BONUS_WITH_SPECIFIED_PARAMETERS_NOT_FOUND Bonus with specified parameters doesn’t exist
203 BONUS_IS_MISSING_ALLOWED_GAMES_LIST Bonus is missing allowed games list
204 PROVIDER_SERVICE_IS_NOT_ALLOWED_TO_USE_BONUS Specified provider is not allowed for the bonus
205 BONUS_IS_EXPIRED Bonus is expired
206 UNABLE_TO_MODIFY_CORRUPTED_TRANSACTION Unable to modify corrupted transaction
207 INVALID_IMAGE_FILE_NAME Image file name is invalid
208 STATUS_CANNOT_BE_CHANGE_TO_GIVEN_NEW_STATUS Old and new statuses are the same
209 THIRD_PARTY_AUTH_SYSTEM_DISABLED External authentication system is disabled
210 THIRD_PARTY_AUTH_SYSTEM_NOT_ALLOWED External authentication system is not allowed
211 PAYMENT_ACCOUNT_ALREADY_EXISTS Specified payment account already exists
212 SESSION_CHECK_WITH_EXPOSED_SESSION_ID_NOT_ALLOWED Can not check the session with exposed session id
213 USER_DOES_NOT_BELONG_TO_ORIGIN_DOMAIN User registration and origin domains don’t match
214 TX_FEE_MUST_BE_NULL_OR_MORE_THAN_ZERO Transaction fee can not be 0, it should be “null” or more than 0
215 PROVIDED_TX_FEE_CAN_NOT_OVERRIDE_PROVIDERS_TX_FEES Provider’s transaction fees can not be overriden
216 PROVIDER_TX_REFERENCE_ID_IS_ALREADY_SET Specified transaction reference id already exists
217 PROVIDER_MIN_AMOUNT_IS_GREATER_THAN_AMOUNT Amount is less than minimum allowed amount
218 DEPOSIT_LIMIT_REACHED Maximum deposit amount reached
219 WAGER_LIMIT_REACHED Maximum wager amount reached
220 LOSS_LIMIT_REACHED Maximum loss amount reached
221 TRANSACTION_TYPE_NOT_ALLOWED Transaction type not allowed
222 USER_HAS_ACTIVE_LIMIT_IN_DIFFERENT_CURRECNY User has active limit in different currency
223 VALUE_IS_ALREADY_SET Specified value is already set
224 CURRENCY_NOT_FOUND_OR_IS_VIRTUAL Currency doesn’t exist or is virtual
225 FINANCIAL_LIMIT_REACHED Maximum financial limit reached
226 REALITY_CHECK_IS_DUE Reality check time limit reached
227 REALITY_CHECK_IS_NOT_DUE_YET Reality check time limit is not yet reached
228 ID_DOCUMENT_WITH_CURRENT_STATUS_CAN_NOT_BE_ALTERED ID document with current status can not be changed
229 ID_DOCUMENT_IS_EXPIRED ID document is expired
230 ID_DOCUMENT_IS_MISSING_SCANNED_IMAGES ID document has no scanned images
231 INVALID_PROVIDER_TRANSACTION_SESSION_STATUS Provider transaction session status is invalid
232 NOT_ALLOWED_TO_OPEN_TRANSACTION_SESSION Denied to open transaction session
233 CARD_VERIFICATION_CANNOT_BE_PART_OF_TRANSACTION_SESSION Card verification can not be part of transaction session
234 CARD_VERIFICATION_AMOUNT_MUST_BE_MORE_THAN_ZERO Card verification amount must be more than 0
235 BONUS_AMOUNT_CAN_NOT_BE_NEGATIVE Bonus amount can not be negative
236 ZERO_AMOUNT_TRANSACTION_MUST_CLOSE_SESSION Session must be closed on 0 amount transaction
237 ZERO_AMOUNT_SESSION_CLOSE_TX_CAN_NOT_REQUIRE_APPROVAL 0 amount session close transaction can not require approval
238 PROVIDER_TX_REFERENCE_ID_IS_REQUIRED Provider transaction reference id is required
239 TRANSACTION_SESSION_IS_CLOSED Transaction session is closed
240 CASH_TRANSACTION_CANNOT_BE_PART_OF_TRANSACTION_SESSION Cash transaction can not be part of transaction session
241 ZERO_AMOUNT_SESSION_OPEN_TX_CAN_NOT_REQUIRE_APPROVAL 0 amount session open transaction can not require approval
242 BONUS_AWARD_ID_MUST_BE_NULL_FOR_ZERO_AMOUNT_TX 0 amount transaction can not have a bonus amount
243 ------
244 TRANSACTION_IN_PROVIDER_TRANSACTION_SESSION_IS_WAITING_FOR_APPROVAL Transaction in provider transaction session is waiting for approval
245 PAYMENT_PROVIDER_IS_NOT_ALLOWED_TO_PERFORM_ROLLBACK_WITH_TX_REFERENCE_ID Payment provider is not allowed to perform rollback with tx reference id
246 SUBSEQUENT_TX_IN_PROVIDER_TRANSACTION_SESSION_IS_PENDING_TRANSACTION Subsequent tx in provider transaction session is pending transaction
247 TRANSACTION_IS_NOT_LAST_IN_PROVIDER_TRANSACTION_SESSION Transaction is not last in provider transaction session
248 FAILED_TO_VERIFY_PROVIDER_TRANSACTION_SESSION Failed to verify provider transaction session
249 TRANSACTION_FEE_CANNOT_BE_APPLIED_TO_CARD_VERIFICATION_TRANSACTION Transaction fee cannot be applied to card verification transaction
250 TRANSACTION_AMOUNT_CHECKSUM_ERROR Transaction amount checksum error
251 FEE_EXCEEDS_TRANSACTION_AMOUNT Fee can not be more than transaction amount
252 NOT_ALLOWED_TO_SET_PROVIDER_TX_REFERENCE_ID_TO_EXISTING_GAME_TX Not allowed to set provider tx reference id to existing game tx
253 VALID_TRANSACTION_SESSION_NOT_FOUND Valid transaction session not found
254 FAILED_TO_RETRIEVE_ACTIVE_BONUS_BALANCE Failed to retrieve active bonus balance
255 USER_VALIDATION_WITH_REGULATOR_SERVICE_HAS_FAILED_WITH_SYSTEM_ERROR User validation with regulator service has failed with system error
256 USER_IS_BLACKLISTED_BY_REGULATOR_SERVICE User is blacklisted by regulator service
257 QUERY_NOT_ALLOWED Query not allowed
258 AUTH_CREDENTIALS_DOES_NOT_MATCH Auth credentials do not match
259 USER_IS_BLOCKED_FOR_MALICIOUS_ACTIVITY User is blocked for malicious activity
260 ALTERATION_NOT_ALLOWD Alteration is not allowed for the field
261 VALUE_NOT_ALLOWED_TO_BE_SET Value not allowed to be changed
262 FAILED_TO_SET_MANDATORY_SESSION_LIMIT Failed to set mandatory session limit
265 USER_IS_REGULATORY_EXCLUDED User is excluded by regulatory limitations
266 OTP_DELIVERY_CHANNEL_IS_NOT_AVAILABLE Requested contact channel(email/phone) is not configured for delivering OTP
267 PARAMETER_VALIDATION_FAILED Some of the request parameters are invalid
268 SERVER_ERROR General server error
277 FORGET_USER_IDS_LIMIT_EXCEEDED Array of user IDs exceeds the maximum allowed limit
278 FORGET_USER_BALANCE_LIMIT_EXCEEDED User’s balance exceeds maximum allowed limit to be forgotten
279 FORGET_USER_HAS_PENDING_TRANSACTIONS User has pending transactions and can not be forgotten
280 FORGET_USER_HAS_OPEN_BETS User has open bets/rounds and can not be forgotten
281 USER_IS_FORGOTTEN The user is already forgotten
282 ACCOUNT_IS_LIMITED The user account has specific status/limit and can not be forgotten
283 FORGET_USERS_ERROR Forget user request failed
284 USER_IS_OBFUSCATED The user is obfuscated
285 USER_IS_NOT_FORGOTTEN The user is not forgotten/obfuscated
400 STATUS_ITEM_DOES_NOT_EXISTS The requested resource is not available
500 STATUS_UNABLE_TO_CHECK_ITEM Status unable to check item
Document Statuses

Documents can have one of the following statuses:

ID Status
0 Unverified
1 Verified
2 Under Review
3 Rejected
User Statuses

User statuses are dynamic and can be configured at any time to enhance user management capabilities.

Each status can enforce following on the users:

  • Different Block Type
  • Different Cash Out Limit

System supports functionality enabling clients to add new statuses at any point of time.

By default, following statuses are supported by the system:

ID Name Block Type
1 Registered None
2 Verified None
3 Full Block Fully Blocked
4 Game Block Blocked from placing bets
5 Withdraw Blocked Blocked from withdrawing amount from account balance
6 VIP None

The block types in the system are the following

ID Block Type Description
null No Block Not blocked on any action
0 Full Block Restricts almost every action
1 Game Block Restricts placing bets
2 Transaction Block Restricts any transaction, other than game wins

Full description https://singular.atlassian.net/wiki/spaces/GPA/pages/473270485002/Core+System+-+Player+Statuses

Document Statuses
ID Name
1 IDCard
2 Passport
3 HomeRegistry
4 DriverLicense
5 Warrant
6 FaceID
7 OtherID
8 ProofofAddress
9 BankStatement
10 ScanofCard
11 ScreenshotofeWallet
12 SourceofFunds
14 BankAccountID
15 RefugeeIDCertificate
16 ElectronicRegistry
17 Ekeng
100 OtherDocuments
101 OtherDocuments