Bitpace Merchant REST API
The Bitpace Merchant API is designed to be a predictable and intuitive interface to enable merchants to buy/sell supported cryptocurrencies.
API End Points:
Production
https://api.bitpace.com/api/v1/
Sandbox
https://api-sandbox.bitpace.com/api/v1/
Requests
Merchant API is REST-based.
Accepts and returns only JSON data.
All communication must be completed securely using HTTPS
Authorization
The Bitpace Merchant API implements JWT to allow clients to log in without exposing their credentials. The process involves several steps:
Acquire an access token
- Use the access token to make authenticated requests
- Before you begin, you will need to get the client credentials from us.
Acquire an access token
The authentication key consists of your merchant code and password.
curl -X POST 'https://api-sandbox.bitpace.com/api/v1/auth/token'
-d '{"merchant_code" : "TESTMERCHANT0000111", "password" : "secret"}'
Exchanging an access token
The access token must be exchanged in any authorized requests in the header parameters. For example:
curl -X GET 'https://api-sandbox.bitpace.com/api/v1/buy/prices/BTC'
-H 'Authorization: eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJtZXJjaGFudElkIjoxLCJ0aW1lc3RhbXAiOjE1NDU4MjIwODd9.e_Qj_IgyZg09m5nJToQVZRDwVGJLTKLTgs0I3H9_uKM'
Flows:
Authentication
This endpoint is used to acquire the access token. Lifetime of the token is 10 hours. Creating a new one doesn’t revoke the previous token.
Request body
Responses
Body
Valid for 10 hours
{
"data": {
"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJtZXJjaGFudElkIjoxLCJ0aW1lc3RhbXAiOjE1NDU4MjIwODd9.e_Qj_IgyZg09m5nJToQVZRDwVGJLTKLTgs0I3H9_uKM"
},
"code": "00",
"message": "APPROVED",
"status": "APPROVED"
}
{cryptocurrencyCode}
{cryptocurrencyCode}
{cryptocurrencyCode}
Merchant can get the best current buy rate of a cryptocurrency for buys and withdrawals.
Path variables
Request headers
Responses
OK
Body
Coin fiat money price
Fiat money currency
Coin type
{
"data": {
"buy_price": 3302.4382,
"currency": "EUR",
"cryptocurrency": "BTC"
},
"code": "00",
"message": "Response Approved",
"status": "APPROVED",
"traceId": "8d1bc7316bec4f13"
}
{cryptocurrencyCode}
Merchant can get the best current sell rate of a cryptocurrency for sells and deposits.
Path variables
currencyPair
Request headers
Responses
OK
Body
Fiat money currency
Coin type
{
"data": {
"sell_price": 3302.4252,
"currency": "EUR",
"cryptocurrency": "BTC"
},
"code": "00",
"message": "Response Approved",
"status": "APPROVED",
"traceId" : "00e5e697d1ed6d92"
}
{currencyCode}
Merchant can get his balance for buy and sell orders.
Request headers
Responses
OK
Body
FIat money currency
{
"data": {
"buysell": {
"balance": "0",
"currency": "EUR"
},
"exchange": {
"balance": "984554.09",
"currency": "EUR"
}
},
"code": "00",
"message": "Response Approved",
"status": "APPROVED",
"traceId": "54439a729d0bb8ff"
}
Merchant can get all defined crypto currencies and FIAT balances
Request headers
Responses
OK
Body
{
"code": "00",
"message": "Response Approved",
"data": [
{
"balance": 800921,
"currency": "EUR"
},
{
"balance": 11.311195,
"currency": "BTC"
},
{
"balance": 12.784886,
"currency": "ETH"
}
],
"status": "APPROVED",
"traceId": "14409c856bde4107"
}
{currencyCode}
Merchant can get his exchange balance by parameter
Path variables
Request headers
Responses
OK
Body
{
"code": "00",
"message": "Response Approved",
"data": {
"balance": 800921,
"currency": "EUR"
},
"status": "APPROVED",
"traceId": "e51b5ce7896c93f7"
}
Merchant can get his ledger activities
Request parameters
Page number
Page size, row count per page
Format:YYYY-MM-DD Should earlier than today.
Format:YYYY-MM-DD Should be later than start date.
Request headers
Responses
OK
Body
Order Id
Order amount
Balance before this order
Balance after this order
Order type
effecting balance as increasing or decreasing
FIAT Money or cryptocoin types
Datetime
Total page count
Total row size in the ledger
How many rows are requested in a page
How many rows are existing in the selected page
If the result is the first page this area will be TRUE, else FALSE
If the result is the last page this area will be TRUE, else FALSE
If result data is empty this area will be TRUE, else FALSE
{
"code": "00",
"message": "Response Approved",
"data": {
"content": [
{
"orderId": 45698,
"amount": 50.130000,
"preBalance": 453668.000000,
"postBalance": 453718.130000,
"type": "PAYMENT",
"transactionType": "CREDIT",
"currencyCode": "EUR",
"createdAt": "2022-08-22T14:50:04.747269"
},
{
"orderId": 45701,
"amount": 34.960000,
"preBalance": 453633.040000,
"postBalance": 453668.000000,
"type": "PAYMENT",
"transactionType": "CREDIT",
"currencyCode": "EUR",
"createdAt": "2022-08-22T14:14:03.353505"
},
{
"orderId": 45697,
"amount": 0.000550,
"preBalance": 6.458402,
"postBalance": 6.457852,
"type": "WITHDRAW",
"transactionType": "DEBIT",
"currencyCode": "BTC",
"createdAt": "2022-08-22T12:25:12.266353"
}
],
"pageable": {
"sort": {
"sorted": false,
"unsorted": true,
"empty": true
},
"pageSize": 3,
"pageNumber": 0,
"offset": 0,
"paged": true,
"unpaged": false
},
"totalPages": 1,
"totalElements": 3,
"last": true,
"number": 0,
"size": 3,
"numberOfElements": 3,
"sort": {
"sorted": false,
"unsorted": true,
"empty": true
},
"first": true,
"empty": false
},
"status": "APPROVED",
"traceId": "3c7e9e390e671eeb"
}
{orderId}
{orderId}
?version=v2Merchant can get an order price.
Request headers
Request body
Coin Amount
Coin Type
Optional. It should be one of the blockchain network code we support. ERC20 for ETH, USDT, USDC, LINK
FIAT Money Amount
FIAT Money Type
Get a Buy Price to buy coins that you are gonna hold with Bitpace.
Get a Sell Price to sell your coins that you are holding with Bitpace.
Get a Withdraw Price to buy then withdraw it to a given customer coin wallet address.
Displaying prices with/without fees shown separately & deducting from sending amount or merchant balance
Pricing will be displayed as usual and withdrawal fee will be deducted from the sending amount
the withdrawal fee will not be deducted from amount being sent, it will be deducted from the merchant balance and fee will be displayed in the response.
Merchant Comission fee appears in the response
Merchant commision fee doesn’t appear
Merchant commision fee appears
Responses
Body
It will be valid for 30 seconds.
if you add the “excluded_withdraw_fee” field in your request. it will be displayed. It is cryptocurrency amount.
if you add the “excluded_withdraw_fee” field in your request. It is FIAT value of cryptocurrency amount
if you add the “show_fees” field in your request as true, merchant commission fee will be added the response. It is FIAT value in requested currency.
{
"data": {
"token": "nRRMlCnAwr5SHWeEaqe3a5BQLCAxtHVAEexsJsDcmhYmbCAEts1GM9U9ehek0IpO7YP4w1PLgrW3w6WSzSDBFq6EFWzt9iCqE1MhSmR1Fpo=",
"total_amount": 703.62,
"currency": "EUR",
"cryptocurrency_amount": 0.223121,
"cryptocurrency": "BTC",
"withdraw_fee": 0.0002, //Displayed if you add exclude_withdraw_fee
"withdraw_fee_value": 10.12 //Displayed if you add exclude_withdraw_fee
"merchant_commission_fee": 1.00 //Displayed if you add show_fees
},
"code": "00",
"message": "Response Approved",
"status": "APPROVED",
"traceId": "2b49d543e7804cd0"
}
Merchant can create an order.
Request headers
Request body
Customer’s first name
Customer’s last name
Customer’s email address
Only for withdraws
Coin wallet address for withdrawals
For XRP, EOS and XLM orders
Responses
Body
{
"data": {
"order_id": 11
},
"code": "00",
"message": "Response Approved",
"status": "APPROVED",
"traceId": "cf42bf4929c9d924"
}
{orderId}
Merchants can query order details.
Path variables
Order id
Request headers
Authentication token
Responses
Body
Unique id of an order
Order type
For Merchant’s own deposits
Current status of an order
Currency amount of an order
Fiat money currency code
Cryptocurrency amount of an order
Cryptocurrency code
{
"code": "00",
"message": "Response Approved",
"data": {
"order_id": 11,
"type": "WITHDRAW",
"status": "COMPLETED",
"order_amount": 50.00,
"currency": "EUR",
"cryptocurrency_amount": 0.005910,
"cryptocurrency": "BTC"
},
"status": "APPROVED",
"traceId": "902a3c59a3b7f94c"
}
{orderId}
?version=v2Merchants can query order details.
Path variables
Order id
Request headers
Authentication token
Responses
Body
Unique id of an order
Order type
For Merchant’s own deposits
Current status of an order
Currency amount of an order
Fiat money currency code
Cryptocurrency amount of an order
Cryptocurrency code
Blockchain transachion hash (we there are more than one, first transaction)
Sender / Receiver Adress
Currency to deposits are converted
Total amount of setteled, the amount of updated the ledger
Requested Order amount
Bitpace commission amount
Received/Sent total crypto amount
Withdrawal fee amount which equals of the network fee
Date, If the order is refunded
Amount, If the order is refunded
Withdrawal fee amount for the refund process which is cost in the network, If the order is refunded
{
"code": "00",
"message": "Response Approved",
"data": {
"order_id": 11,
"type": "WITHDRAW",
"status": "COMPLETED",
"order_amount": 50.00,
"currency": "EUR",
"cryptocurrency_amount": 0.005910,
"cryptocurrency": "BTC"
},
"status": "APPROVED",
"traceId": "902a3c59a3b7f94c"
}
Merchants can create dynamic deposit addresses for their customers and get deposit addresses related to any customer.
{referenceId}
{referenceId}
/cryptocurrency/{cryptocurrencyCode}
{referenceId}
/cryptocurrency/{cryptocurrencyCode}
/all{cryptocurrencyCode}
Merchant can create a customer spesific coin wallet address to receive coins. These addresses are allocated for the specific customer. Whenever they send the coin as much as they want, the system will create a “dynamic deposit order” with the received amount of money converted from received coins. We are using smart contracts so, some of the coins may use the same wallet addresses for the same customer.
Request headers
Request body
Optional. It should be one of the blockchain network code we support
Merchant’s customer reference id
Customer’s name
Customer’s surename
Customer’s email address
The crypto currency type that, the deposit arrived to this addreess will be automatically converted to
Responses
OK
Body
{
"data": {
"address": "2Mv2VAaATwnmaqxNLRWQB3vVUyjrMpy48zr"
},
"code": "00",
"message": "Response Approved",
"status": "APPROVED",
"traceId": "4dd44277dc06d5b8"
}
{referenceId}
Fetches all created deposit addresses for a customer.
Path variables
Merchant’s customer reference id
Request parameters
Reponse will contains the settlement currency?
(default) Do not return the settlement currency
Return the settlement currency
Request headers
Responses
OK
Body
(Optional, if only parameter exists) The currency type that, the deposit arrived to this addreess will be automatically converted to (For now only EUR, USDT, USDC available)
{
"data": [
{
"code": "BTC",
"address": "2N89APxLxMUU6XaytrgSuhce2g93teMyN1w"
},
{
"code": "BCH",
"address": "2NFMVznLLbs9XAkh1dSskGCbWiu71XrZpWk"
}
],
"code": "00",
"message": "Response Approved",
"status": "APPROVED",
"traceId": "4dd44277dc06d5b8"
}
{
"data": [
{
"code": "BTC",
"address": "2N89APxLxMUU6XaytrgSuhce2g93teMyN1w",
"settlement_currency":"USDT"
},
{
"code": "BCH",
"address": "2NFMVznLLbs9XAkh1dSskGCbWiu71XrZpWk",
"settlement_currency":"EUR"
}
],
"code": "00",
"message": "Response Approved",
"status": "APPROVED",
"traceId": "4dd44277dc06d5b8"
}
{referenceId}
/cryptocurrency/{cryptocurrencyCode}
Fetches a previously created deposit address for a customer.
Path variables
Merchant’s customer reference id
Coin type
Request headers
Responses
OK
Body
{
"data": {
"address": "2Mv2VAaATwnmaqxNLRWQB3vVUyjrMpy48zr"
},
"code": "00",
"message": "Response Approved",
"status": "APPROVED",
"traceId": "4dd44277dc06d5b8"
}
{referenceId}
/cryptocurrency/{cryptocurrencyCode}
/allFetches all created deposit address by cryptocurrency code for a customer.
Path variables
Merchant’s customer reference id
Coin type
Request headers
Responses
OK
Body
{
"data": [
{
"code": "BTC",
"address": "2N89APxLxMUU6XaytrgSuhce2g93teMyN1w"
},
{
"code": "BTC",
"address": "2NFMVznLLbs9XAkh1dSskGCbWiu71XrZpWk"
}
],
"code": "00",
"message": "Response Approved",
"status": "APPROVED",
"traceId": "4dd44277dc06d5b8"
}
Get list of supported crypto currencies in dynamic deposits.
Request headers
Responses
OK
Body
List items
{
"code": "00",
"message": "Response Approved",
"data": [
{
"depositActive": true,
"fixedDepositActive": true,
"withdrawActive": true,
"paymentActive": true,
"tradeActive": true,
"code": "BTC",
"name": "Bitcoin",
"supportedSettlement": false
},
{
"depositActive": true,
"fixedDepositActive": true,
"withdrawActive": true,
"paymentActive": true,
"tradeActive": true,
"code": "ETH",
"name": "Ethereum",
"supportedSettlement": false
},
{
"depositActive": true,
"fixedDepositActive": true,
"withdrawActive": true,
"paymentActive": true,
"tradeActive": true,
"code": "BCH",
"name": "Bitcoin Cash",
"supportedSettlement": false
},
{
"depositActive": true,
"fixedDepositActive": true,
"withdrawActive": true,
"paymentActive": true,
"tradeActive": true,
"code": "LTC",
"name": "Litecoin",
"supportedSettlement": false
},
{
"depositActive": true,
"fixedDepositActive": true,
"withdrawActive": true,
"paymentActive": true,
"tradeActive": true,
"code": "XRP",
"name": "Ripple",
"supportedSettlement": false
},
{
"depositActive": true,
"fixedDepositActive": true,
"withdrawActive": true,
"paymentActive": true,
"tradeActive": true,
"code": "USDT",
"name": "USDT",
"supportedSettlement": true
},
{
"depositActive": true,
"fixedDepositActive": true,
"withdrawActive": true,
"paymentActive": true,
"tradeActive": true,
"code": "USDC",
"name": "USDC",
"supportedSettlement": true
},
{
"depositActive": false,
"fixedDepositActive": false,
"withdrawActive": true,
"paymentActive": false,
"tradeActive": true,
"code": "AVAX",
"name": "Avalanche",
"supportedSettlement": false
}
],
"status": "APPROVED",
"traceId": "c06c232ad7277629"
}
{cryptocurrencyCode}
Get list of supported networks for a specific crypto currenciy in dynamic deposits.
Path variables
Coin Type
Request headers
Responses
OK
Body
{
"data": {
"ERC20",
"TRC20"
},
"code": "00",
"message": "Response Approved",
"status": "APPROVED",
"traceId": "a78477f154e84076"
}
Get list of supported crypto currencies which is available to use as settlement currency
Request headers
Responses
OK
Body
List items
{
"code": "00",
"message": "Response Approved",
"data": [
{
"depositActive": true,
"fixedDepositActive": true,
"withdrawActive": true,
"paymentActive": true,
"tradeActive": true,
"code": "USDT",
"name": "USDT",
"supportedSettlement": true
},
{
"depositActive": true,
"fixedDepositActive": true,
"withdrawActive": true,
"paymentActive": true,
"tradeActive": true,
"code": "USDC",
"name": "USDC",
"supportedSettlement": true
}
],
"status": "APPROVED",
"traceId": "724830220364fe6d"
}
Fixed Deposits differ from dynamic deposit as there is an expected fixed amount from this action. Whereas, deposits can be made in any amount above minimum transaction value.
{id}
/conversionMerchant can create both amount and customer specific unique fixed deposit.
Request headers
Request body
Order FIAT money amount
FIAT Currency Type
Merchant’s return url
Merchant’s failure url
Merchant’s name on invoice page
Customer’s ip address
Customer’s name
Customer’s last name
Customer’s email address
Responses
Body
Order id
{id}
/conversionMerchant can confirm previously created fixed deposit with cryptocurrency code.
Path variables
Order id that will be confirmed.
Request headers
Request body
Cryptocurrency code
Optional. It must be one of the blockchain network code we support
Responses
Body
Order id
Order status
Order amount
Currency code
Cryptocurrency amount
Cryptocurrency code
Blockchain address
Merchant name
Merchant can create both amount and customer specific unique fixed deposit url.
Request headers
Request body
Order EUR money amount
FIAT currency type
Merchant’s return url
Merchant’s failure url
Merchant’s name on invoice page
Customer’s ip address
Customer’s name
Customer’s last name
Customer’s email address
Payment expiration time in minutes after coin type selection which is counting in the customer payment page. Default: 30
Order expiration time in minutes after coin type selection. After this duration order will be expired if not any deposit has been received. Default: 120
if this parameter is FALSE, and the customer sends overpayment, customer will see SUCCESSFULL payment when his deposit arrived. If this paremeter is TRUE, and the customer sends overpayment, customer will see a PARTIAL PAYMENT warning. Default: TRUE
The crypto currency type that, the deposit arrived to this addreess will be automatically converted to
Responses
Body
Merchant’s amount and customer specific unique fixed deposit url
Merchant can refund fixed deposit if available.
Request headers
Request body
Order id
Blockchain address which is fixed deposit will be refunded
Only for XRP, XLM and EOS refunds
Who will pay refund costs including the network fee
Responses
Body
Returns TRUE if refund request is accepted
Merchant can accept fixed deposit if available.
Request headers
Request body
Order id
Responses
Body
Unique id of an order
Order type
Current status of order
Currency amount of an order
Currency code
Cryptocurrency amount of an order
Cryptocurrency code
Blockchain address
Blockchain transaction id
{referenceId}
/cryptocurrency/{cryptocurrencyCode}
/depositType/COIN_STOREMerchant can create a customer spesific coin wallet address to receive coins.
Request headers
Request body
COIN_STORE
Merchant’s customer reference id
Customer’s name
Customer’s surename
Customer’s email address
Responses
OK
Body
{
"data": {
"address": "2Mv2VAaATwnmaqxNLRWQB3vVUyjrMpy48zr"
},
"code": "00",
"message": "Response Approved",
"status": "APPROVED",
"traceId": "4dd44277dc06d5b8"
}
{referenceId}
/cryptocurrency/{cryptocurrencyCode}
/depositType/COIN_STOREFetches a previously created deposit address for a customer.
Path variables
Merchant’s customer reference id
Coin type
Request headers
Responses
OK
Body
{
"data": {
"address": "2Mv2VAaATwnmaqxNLRWQB3vVUyjrMpy48zr"
},
"code": "00",
"message": "Response Approved",
"status": "APPROVED",
"traceId": "4dd44277dc06d5b8"
}
Merchant can create an order.
Request headers
Request body
Customer’s first name
Customer’s last name
Customer’s email address
Only for withdraws
Coin wallet address for withdrawals
For XRP, EOS and XLM orders
Responses
Body
{
"data": {
"order_id": 11
},
"code": "00",
"message": "Response Approved",
"status": "APPROVED",
"traceId": "cf42bf4929c9d924"
}
After the transaction is processed, callback in JSON format is sent to callback URL provided by merchant. Callbacks are sent for only deposit and withdraw transactions.
Callbacks are always sent:
- when received transaction was completed
- when its status was changed
Callback signature
Signature is used in callbacks and protects the message from changes. Each callback’s request is signed by the signature, signature of callback is sent in callback header.
Signature is calculated by Bitpace from callback secret(generated for merchant) value and JSON body of callback request with SHA-256. Callback secret is also generated by Bitpace and received by merchant with merchant code.
For example, you have following parameters:
Callback secret: 11qq22ww
Received callback’s JSON body
Then merchant will need to calculate SHA-256 signature of the following string:
{“order_id”:123,“status”:“COMPLETED”,“type”:“DEPOSIT”,… }11qq22ww
The result string must be equal to string in the header Signature of callback.
Callback requests are sent with the following parameters.
Request headers
Callback signature
Callback signature with Hmac
Request body
Unique id of order
Current status of order
Type of order
Reference id of merchant’s customer
Fiat money amount of order (Only available for dynamic deposits and fixed deposits)
Merchant’s commission fee amount in currency
Fiat money code (Only available for dynamic deposits and fixed deposits)
Cryptocurrency amount of order (Only available for dynamic deposits and fixed deposits)
Cryptocurrency code (Only available for dynamic deposits and fixed deposits)
Bitcoin
Ethereum
Litecoin
Ripple
Bitcoin Cash
Q. What are the available statuses of a DYNAMIC DEPOSIT/FIXED DEPOSIT?
A. For dynamic deposit: ‘PENDING’, ‘COMPLETED’, ‘FAILED’
For fixed deposit: ‘COMPLETED’, ‘EXPIRED’, ‘REFUNDABLE’, ‘REFUNDED’, ‘ACCEPTED’
Q.What would an example callback body look like?
A. We have number of examples (dynamic deposit, withdrawal and fixed deposit):
Dynamic Deposit
{
"order_id": 53,
"status": "COMPLETED",
"type": "DEPOSIT",
"customer_reference_id": "307388",
"order_amount": "8.940444",
"fee_amount": "0.33",
"currency": "EUR",
"cryptocurrency_amount": "0.003017",
"cryptocurrency": "BTC",
"blockchain_tx_id": "3a2b423ab6b64d97afda96166c7cb43ef8f0296bc4d970bff5ded11aeda64421",
"network":"BITCOIN",
"address":"0x123123123C194bF8BEAc8140E0C867B7215Eafe95"
}
Fixed Deposit
{
"order_id": 53,
"status": "COMPLETED",
"type": "PAYMENT",
"customer_reference_id": "307388",
"order_amount": "8.94",
"fee_amount": "0.33",
"currency": "EUR",
"cryptocurrency_amount": "0.003017",
"cryptocurrency": "BTC",
"blockchain_tx_id": "3a2b423ab6b64d97afda96166c7cb43ef8f0296bc4d970bff5ded11aeda64421",
"network":"TRC20",
"address":"TKQSfYyn4BpHnyrGcNKrG64uS6jiZ1Q13b"
}
Withdraw
{
"order_id": 53,
"status": "COMPLETED",
"type": "WITHDRAW",
"customer_reference_id": "307388",
"fee_amount": "0.33",
"blockchain_tx_id": "3a2b423ab6b64d97afda96166c7cb43ef8f0296bc4d970bff5ded11aeda64421",
"network":"LTC",
"address":"MBzFpsCLumCBVzrFAa1CXWHrTTwLc8xUm5"
}
Q. On which states do we receive callbacks?
A. Callbacks sent for COMPLETED, REFUNDABLE, ACCEPTED, REFUNDED, FAILED, and EXPIRED statuses for all types of transactions
Q. Do I have to use your fixed deposit page? How can i create/use my own?
A. We provide a fixed deposit url ( ’/fixed-deposit/url'
) to the merchant and merchant redirects the customer to this url, customer see the fixed deposit page and has 30 minutes to send coins. The price remains locked for 30 minutes, after payment is done, it redirects to the merchant’s page which is provided by merchant on create fixed deposit request.
The other way to create fixed deposit is create fixed deposit without a fixed deposit page but with information of the fixed deposit, you need to create fixed deposit with “/fixed-deposit” and choose a coin type at second call “/fixed-deposit/{id}/conversion”. After this call you will have all calculations and regarding info about the fixed payment and we will be waiting to complete the payment.
Q. I’ve locked the price via get order price method, does that mean i can create order from that price whenever i want?
A. No it doesn’t. The price is locked for 1 minute. Furthermore to this, there are number of mechanisms preventing price taken to be valid if there is a sudden price change. This is to make sure we minimize your loss under such circumstances.
Q. How many confirmations do you need?
A. For fixed payments we only need to see in blockchain. For dynamic deposits we need one confirmation and for withdrawals 1 confirmations.
Q. What are the types of response codes and what do the mean?
A. Please see table below for all response codes:
Code: 00 - Message: Response Approved
Code: 05 - Message: Response Rejected
Code: 10 - Message: Response Waiting
Code: 300 - Message: Authorization token not found
Code: 301 - Message: Invalid authorization token
Code: 303 - Message: Merchant IP not Whitelisted
Code: 100 - Message: Merchant not found, check your credentials
Code: 105 - Message: Merchant not authorized to reach this resource
Code: 106 - Message: Requested order was not found
Code: 107 - Message: Minimum order amount should be: %s
Code: 108 - Message: Maximum order amount should be: %s
Code: 110 - Message: Mercant customer not found
Code: 115 - Message: Merchant customer deposit address not found
Code: 116 - Message: Merchant customer not found
Code: 120 - Message: Order cannot be refunded
Code: 121 - Message: Order cannot be accepted
Code: 150 - Message: Unsupported cryptocurrency
Code: 155 - Message: Required field missing: %s
Code: 156 - Message: Invalid value for field: %s
Code: 157 - Message: Deposit address not found
Code: 160 - Message: Price not available
Code: 165 - Message: Order cannot be created
Code: 166 - Message: Deposit address cannot be created
Code: 167 - Message: Withdraw order cannot be created
Code: 168 - Message: Another order is processing right now
Code: 170 - Message: Merchant balance not enough for this transaction
Code: 171 - Message: Customer balance not enough for this transaction
Code: 172 - Message: Amount must be positive
Code: 173 - Message: Merchant balance transaction state failure
Code: 201 - Message: Resource not found
Code: 400 - Message: Content not found
Code: 401 - Message: Unauthorized access
Code: 500 - Message: System Error
Q. Do you have an ETA on the notifications change?
A. For Fixed Deposit; as soon as the payment is made or 15 minute period is completed and partial payment is made or accepted. If no payment is made, notification will not be sent and payment will be expired.
For Dynamic Deposits; it’s sent after 1 confirmation.
For Withdrawals; it’s sent after 1 confirmation.
Q. How can I visualize fixed deposit payment page with pre-selected language?
A. You may add the language parameter as query string at the end of the url
This is a sample fixed deposit payment URL;
https://deposit.bitpace.com/sci/fixed-deposit/PAYM-2a7227a7b1c608ba
Add “lang” parameter
https://deposit.bitpace.com/sci/fixed-deposit/PAYM-2a7227a7b1c608ba?lang=en-EN
Here is the full list supported ; en-UK’, ‘tr-TR’, ‘ar-SA’, ‘de-DE’, ‘es-ES’, ‘es-MX’, ‘fr-FR’, ‘hi-IN’, ‘it-IT’, ‘iw-IL’, ‘ja-JP’, ‘ko-KR’, ‘ms-MY’, ‘no-NO’, ‘pt-PT’, ‘ru-RU’, ‘zh-CN’,‘vi-VN’
Q. How can we open fixed deposit page with pre-selected coin and pre-selected network?
You can add the /pay/[coin type]/[network] at the end of the URL.
This is a sample fixed deposit payment URL;
https://deposit.bitpace.com/sci/fixed-deposit/PAYM-2a7227a7b1c608ba
Add “/pay/[coin type]/[network]”
https://deposit.bitpace.com/sci/fixed-deposit/PAYM-2a7227a7b1c608ba/pay/USDT
or
https://deposit.bitpace.com/sci/fixed-deposit/PAYM-2a7227a7b1c608ba/pay/USDT/TRC20
When the customer opens the fixed deposit payment URL with a coin parameter, the customer can’t change his payment to another coin!
Q. How can we check the health status of the services?
Here is the health checker service;
https://api.bitpace.com/actuator/health
Q. What are the FIAT currencies that you support?
We may add any requested FIAT currency in our system. Currently added currencies are; EUR, USD, GBP, TRY, NOK, AUD, CAD, INR, JPY, ZAR, VND, BRL, ARS, MXN, PLN, THB, BGN, COP, CRC, MKD, HKD, PGK, PKR, PHP, RON, MVR, SGD, HUF, CHF