BemPay payment gateway is a web-based service devised to provide cryptocurrency payment and blockchain transaction services to its customers in exchange for goods and services. It enables you to raise the possibility of blockchain transactions and payment of cryptocurrencies to your online store as well as online services by utilizing BemPay.
Financial transactions through BemPay
To conduct a cryptocurrency transaction, the customer must be directed towards BemPay payment page. On this page, the customer selects the amount of USD and relevant cryptocurrency rate and has a potential for confirming the payment by observing the system's bid price. On the payment confirmation page, the payment destination address is displayed along with the amount. The user makes use of the QR code to transfer money through his wallet. If the customer is not able to scan the QR code, there is a possibility for them to get the payment process completed by entering the address manually. Upon completion of the transaction, the customer will be referred to the specified address by merchant system.
After the payment is completed by the customer, the transaction begins to remain in the pending state until their deposits are confirmed on the crypto network. Once the transaction Status in the network is specified, BemPay platform commences informing the merchant system of the final transaction Status.
Ultimately, BemPay settles the store account on a daily basis by aggregating the store transactions.
Transaction status through BemPay
The transaction proceeds towards settlement from the time it is conducted. The transaction status is considered to be recorded at each stage and the transaction process could be tracked through the merchant system by reading it. By conducting a transaction, a token is allocated to it, providing access to the transaction. The transaction status has been displayed separately in the table below. The transaction process is rolled back as “status” in BemPay data models.
Status
Discription
100
Success Payment
110
The customer's order has been already registered and the customer is paying. The transaction status will be checked through the network in BemPay and will have it announced to the merchant site if approved.
111
The customer has paid for his order and the transaction has been approved by the network. BemPay begins to register the confirmed status and embarks on notifying the merchant site after inquiring about the transaction confirmation.
112
The customer has not paid for his order or the above-mentioned transaction has not been confirmed on the network. After receiving an inquiry, the unconfirmed transaction status will be verified and notifies the merchant site.
113
The customer has paid for his order and the mentioned transaction has been approved by the network. However, the customer's payment appears to be less than the requested amount.
114
The customer's order has been expired.
Create a transaction ( Request )
The source site to create and start the transaction must address the required information and data according to the table below https://bempay.io/webservice/rest/PaymentRequest the POST method
Parameter
Type
Status
Description
MerchantID
string
Mandatory
Merchant ID is visible in the "My Control Panel" section of your user panel
Source
string
Mandatory
Reference currency (Example: USD)
Amount
integer
Mandatory
USD value in cryprocurrency
InvoiceID
string
Optional
Invoice ID, this ID will be sent to the seller's site after payment
Description
string
Optional
Description of the transaction
Email
string
Optional
Buyer email address
CallbackURL
string
Mandatory
An address on the merchant’s website to which the client will be rolled back after conducting the transaction.
WebhookURL
string
Mandatory
An address on the merchant’s website to which the final status of the transaction will be sent.
List of returned data in response to the transaction process ( Request )
Parameter
Description
Status
The Status of the request, which if successful is equal to 100, otherwise it is a negative number, which if negative, its interpretation in the tab Return codes / errors Can be checked
Authority
The request reference ID, if successful, is 32 characters long and otherwise blank.
PaymentUrl
The link to which the user must be transferred in order to pay
CReturn to merchant website ( Callback )
After conducting the transaction via BemPay gateway, the user will return to the mentioned address of the merchant system. The merchant system can specify this address by setting the CallbackURL value.
Transaction status ( Verify )
After conducting the transaction status, BemPay will announce the merchant website regarding the final status by calling back the webhook address. The merchant website can set the webhook URL by specifying the value in the first stage of the destination address.
To verify the transaction, it must send the required information and data according to the following table to https://bempay.io/webservice/rest/PaymentVerification via the POST method
Parameter
Type
Status
Description
MerchantID
string
Mandatory
Merchant ID is visible in the "My Portals" section of your user panel
Authority
string
Mandatory
Request Unique Reference ID Code
Source
string
Mandatory
Reference currency (Example: USD)
Amount
integer
Mandatory
USD value in cryprocurrency
Return data list in response to transaction inquiry process (Verify)
Parameter
Description
Status
The Status of the request is 100 if it is successful, otherwise it is a negative number, and if it is negative, its description is in the tab Return codes / errors can be checked
RefID
If payment is successful; Returns the transaction number of the payment made
Source
Reference currency (Example: USD)
Amount
USD value in cryprocurrency
BuyerIP
If payment is successful; Returns buyer's IP
PaymentTime
If payment is successful; Returns the transaction payment time (output of the payment time is timestamp)
The result of the transaction will be automatically sent to the web hook address 1 to 240 minutes after payment by the method PaymentVerification
If the return value of Status in the transaction inquiry process through PaymentVerification is equal to 100, the transaction is done correctly, otherwise the return value will be equal to a negative number. You can check the Return codes / errors tab.
Error table and web service feedback
Code
Description
100
successful operation
101
Payment operation successful and PaymentVerification transaction already done
102
Web service connection failed
103
The transaction is waiting for confirmation
-1
The request must be submitted via a web service
-2
No value sent for MerchantID
-3
No value sent for Amount
-4
No value sent for CallbackURL
-5
The requested Source is not currently supported.
-6
MerchantID entered in system not found
-7
MerchantID entered is not enabled
-8
Your account is not commercial, so you can not use the web service
-9
IP is not valid
-10
Return address does not match registered payment gateway address
-11
Web Service Error - Transaction Error Found
-12
Value Authority Submissions are not valid - transaction not found
-13
No value sent to Authority
-14
Transaction information not found, check the Authority value and make sure it is correct
-15
The transaction has not been paid
-16
The amount sent is not the same as the transaction amount, check the Amount value and make sure it is correct
-17
Your access to this transaction has been denied, Authority This transaction has not been registered for your MerchantID
-18
Transaction payment completed successfully, but there was a problem updating the acceptor wallet