MaxBridge Service
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
Random Nonce generated for each request
Hash of the request. Check hash generation instruction here
Request body
Identifier of user in the PAM&Wallet
Responses
Body
Users balance in cents
Balance currency
Identifier of user in the PAM&Wallet
Username in PAM&Wallet
Users full name in PAM&Wallet
Users birthdate
Maximum amount of transaction allowed for user
Minimum amount of transaction allowed for user
Users status in the PAM&Wallet (Registered, Verified etc)
Users preferred currency id in PAM&Wallet
Registration domain
Additional Data
Document id in the PAM&Wallet
Document type id (ID_CARD, PASSPORT etc.)
DOcument Number
Users personal id
Documents issuer country id
Issue date of document
Expiry date of document
Document Issuing Authority
Document Issuing Place
Documents Additional Data
Identifier of user in the PAM&Wallet
Data of documents last modification
Status of Document (Verified, Unverified etc.)
Status note
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"
}
This method withdraws amount from the users balance in PAM&Wallet
Request headers
Random Nonce generated for each request
Hash of the request. Check hash generation instruction here
Request body
Transaction amount in cents
ISO 4217 three-letter currency code
Id of payment service in the Payment Dierectory
IPv4 or IPv6 of the client
User language
Transaction fee amount in cents
Transaction identifier in the retail system
Responses
Body
Status code
message
Transaction identifier in the persistence service
Transaction identifier in the Retail service
Transaction identifier in the Core system
Fetchs location from Maxbet Retail App
Request parameters
Users identificator in the PAM&Wallet
Responses
Body
Array of the retails
Id of Retail Cash desk in the Maxbet Retail System
Name of Retail Cash desk in the Maxbet Retail System
Geographic coordinate that specifies the north–south position.
Geographic coordinate that specifies the east–west position.
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": ""
}
}
]
}
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
API Key
Request body
Users identificator in the PAM&Wallet
Responses
Body
Id of Retail Cash desk in the Maxbet Retail System
Name of Retail Cash desk in the Maxbet Retail System
Geographic coordinate that specifies the north–south position.
Geographic coordinate that specifies the east–west position.
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
Fetchs reservation from Maxbet Retail App
Request parameters
Users identificator in the PAM&Wallet
Request headers
API KEY
Responses
Body
Reservation id in the Maxbet Retail System
Transaction amount in cents
Pin code generated during reservation
Transaction fee amount
location object
Location id in the Maxbet Retail system
Location name
Creation date of the reservation
Reservation expiration date
Reservation status
Users identifier in the Pam&Wallet system
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
}
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
API Key
Request body
Guid of the location where the reservation is supposed to be collected.
ISO 4217 three-letter currency code
Users amount in cents
Users current balance in the core
Userd identificator in the Pam & Wallet system
Responses
Body
A unique, auto-generated numeric code used to identify the reservation.
A unique identifier for the newly created reservation record.
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"
}
Retrieves detailed information about a specific SSBT deposit reservation using its unique reservation ID.
Request parameters
Unique identifier of the SSBT deposit reservation.
Request headers
API Key
Responses
Body
User identification in the Pam&Wallet system
Transaction id in Retail system
Transaction amount
Transaction currency. ISO 4217 three-letter currency code
Reservation id of the transaction in the Maxbet Retail System
id of the payment service in the Singular Payment Directory, linked to the SSBT devoices
SSBT deposit current status (Pending, Success, Failed, RolledBack, Rejected)
UTC timestamp indicating when the reservation was created.
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
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
API Key
Request body
Reservation id in MaxBet Retail System
User id in PAM & Wallet
Responses
Body
Transaction identifier in the Retail service
Unique identifier of the SSBT deposit reservation.
Payment id in the SIngular Payment Directory linked to SSBT device
User id in PAM & Wallet
Transaction amount in cents
ISO 4217 three-letter currency code
Final status of the deposit (e.g. “Success”, “Failed”).
UTC timestamp indicating when the reservation was created.
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"
}
Rejects an existing SSBT deposit reservation, provided it is currently in a Pending state.
Request parameters
Reservation id in MaxBet Retail System
Request headers
API Key
Responses
Body
Transaction identifier in the Retail service
Unique identifier of the SSBT deposit reservation.
Payment id in the SIngular Payment Directory linked to SSBT device
User id in PAM & Wallet
Transaction amount in cents
ISO 4217 three-letter currency code
Final status of the deposit (e.g. “Success”, “Failed”).
UTC timestamp indicating when the reservation was created.
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"
}
Get Locations operation is used to retrieve all the cash desk locations
Request headers
ALways should be true
JSESSIONID returned during core auth
Users identificator in the PAM&Wallet
Request body
If of a city in the Maxbet Retail System
If of a district in the Maxbet Retail System
Name of Retail cash desk in the Maxbet Retail System
Responses
Body
Array of retails
Id of Retail Cash desk in the Maxbet Retail System
Name of Retail Cash desk in the Maxbet Retail System
Geographic coordinate that specifies the north–south position.
Geographic coordinate that specifies the east–west position.
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"
}
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
ALways should be true
Users identificator in the PAM&Wallet
Request body
Id of Retail Cash desk in the Maxbet Retail System
Name of Retail Cash desk in the Maxbet Retail System
Geographic coordinate that specifies the north–south position.
Geographic coordinate that specifies the east–west position.
Fetchs reservation detaiols from Maxbet Retail and redirects to Front end client
Request headers
ALways should be true
JSESSIONID returned during core auth
Users identificator in the PAM&Wallet
Responses
Body
Reservation id in the Maxbet Retail System
Transaction amount in cents
Pin code generated during reservation
Transaction fee amount
location object
Location id in the Maxbet Retail system
Location name
Creation date of the reservation
Reservation expiration date
Reservation status
Users identifier in the Pam&Wallet system
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"
}
Request headers
Random Nonce generated for each request
Hash of the request. Check hash generation instruction here
Request body
Userd identificator in the Pam & Wallet system
Transaction amount in cents
ISO 4217 three-letter currency code
Guid of the location where the reservation is supposed to be collected.
Responses
Body
Status code
message
A unique, auto-generated numeric code used to identify the reservation.
A unique identifier for the newly created reservation record.
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"
}
}
During this step user choose one location from previous step and withdraw is reserved.
Request headers
ALways should be true
JSESSIONID returned during core auth
Users identificator in the PAM&Wallet
Request body
Userd identificator in the Pam & Wallet system
Transaction amount in cents
ISO 4217 three-letter currency code
Guid of the location where the reservation is supposed to be collected.
Responses
Body
A unique, auto-generated numeric code used to identify the reservation.
A unique identifier for the newly created reservation record.
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"
}
MaxBet -> Singular
Retrieves transaction details from maxbet retail sysrem and forwards to Front-end client
Request headers
ALways should be true
JSESSIONID returned during core auth
Users identificator in the PAM&Wallet
Request body
Unique id of reservation in MaxBet retail Service
Responses
Body
Status code
Message
Response data returned from thr retail system
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"
}
This method is creating deposit transaction in the Core and persistence.Adds amount to the users balance
Request headers
ALways should be true
JSESSIONID returned during core auth
Users identificator in the PAM&Wallet
Request body
Reservation id in MaxBet Retail System
Responses
Body
Status code
Message
Transaction identifier in the persistence service
Transaction identifier in the Retail service
Transaction identifier in the Core system
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"
}
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
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 |
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
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 |