CHECK - Once the payment is created, the Pay4Bit system returns its key details, such as paymentId and digital signatures.
PAY - Notification of successful deduction; you need to provide the service to the subscriber. In case of any error at this stage (e.g., database is unavailable), the payment receives a “not completed” status. Once the issue is resolved, you can retry processing the payment via dashboard.
ERROR - Payment error at any stage. If the error is caused by an empty/incorrect server response, the request will not be sent. Note that this status is not final, and there may be situations where a PAY request follows an ERROR request.
https://your_callback_url?
method=check
¶ms[account]=user
¶ms[projectId]=1
¶ms[sum]=100
¶ms[amount]=100.00
¶ms[currency]=AED
¶ms[sign]=9bdf52a4830779a1383ac24f1b3ed054
¶ms[check_sign]=ed787fcd62467dc3fdfb5f58c38557c1919154ec34e4e2147e630f9111a07e77
¶ms[localpayId]=1234567
¶ms[paymentType]=applepay
¶ms[revenue]=23.67
¶ms[desc]=Balance reload
method – one of the methods.
projectId – Your store ID in the Pay4Bit system.
localpayId – Pay4Bit Payment ID.
account – Subscriber identifier in the partner’s system.
sum – Paid amount.
amount – Paid amount (formatted to two decimal places).
currency – Currency in which the payment was made.
paymentType – The system in which the payment was made.
revenue – Revenue amount (In EUR).
sign – Digital signature. It is formed as an md5 hash of the concatenated values of payment id, account, sum, and merchant secret key.
check_sign – Digital signature. It is formed as a sha256 hash of the concatenated values of desc, account, amount, and merchant secret key.
IMPORTANT: The partner’s system must not have two different payments with the same localpayId. When receiving a repeated CHECK or PAY request, the result of the previous request should be returned without adding/crediting anything.
Successful Response
The response should be sent in JSON format
{"result": {
"message": "Request successfully processed"
}}
message – Text status of the request execution.
Error Response
The response should be sent in JSON format
{"result": {
"message": "Error description"
}}
message – Text status of the request execution.