Receiving address signature (Verify address through CoinGet’s public key)
convertedAddr
No
string
Converted address (Currently only BCH can be changed to legacy address, a string of your address will be returned for callback, callback will only be based on address parameter)
Response Status
Status code
Description
4042
Failed to verify collection wallet
4043
Collection wallet does not exist
4044
Failed to receive collection address
4045
Insufficient addresses
4050
Currently does not support this mainnet
4051
EOS chain does not require a collection address
4052
Token does not require a collection address
4053
Failed to convert BCH address
4061
Failed to verify linked records
4062
Unable to generate address from a linked mainnet
4063
Failed to verify gas fee address
4064
Mainnet not supported by your dispatch wallet. Please update your dispatch wallet
4071
Select a mainnet
4072
Failed to verify mainnet
Callback notification
Request method
POST
Request parameter
Body parameter
Name of parameters
Required
Type
Description
data
Yes
string
Content(JSON string,refer below)
Receive token notice
Upon detecting any addresses that belong to a corporate’s collecting wallet, CoinsDo’s node will update the corporate’s collecting wallet that it has new deposits.
Corporate’s collecting wallet will verify the signed addresses to ensure that the addresses were generated by itself.
Corporate’s collecting wallet will use third party block explorers to verify the deposits.
Third party block explorers will update the corporate’s collecting wallet after they have verified the deposits.
After receiving the verified deposits from the third party block explorers, the corporate’s collecting wallet will sign the data before sending it to CoinsDo’s server.
The corporate’s business server will receive a response that has the collecting wallet’s signature through CoinsDo’s API.
Corporate’s business server will verify the response and ensure that it originates from the corporate’s collecting wallet.
The notice you will receive when the chain has a confirmed block
Transaction index (does not apply to all the token. Might apply to BTC, ERC20, and TRC20 log sequence number)
fromAddress
Yes
string
Sending address
toAddress
Yes
string
Receiving address
currency
Yes
string
Collection Currency/Token Standard (Refer to the supported token above at 1.2)
flag
Yes
string
Collection token/Contract address/Token ID (refer to supported token at 1.2)
amount
Yes
string
Token amount
txFee
Yes
string
Gas fees
feeSymbol
Yes
string
Gas fees unit/symbol
txTime
Yes
string
Transaction confirmation timestamp(seconds)
txMemo
No
string
Chain remarks (Currently only supports TRX, TRC20, EOS, XRP)
blockNumber
Yes
string
Block height
deviceUuid
Yes
string
wallet’s UUID (receiving address)
checkMode
Yes
string
Verification method (0. Verify through wallet’s address with third parties verification API 1. Verify address through wallet)
isReachedConfirm
Yes
string
Whether the amount has been received (0. Not received 1. Received)
blockConfirm
Yes
string
Block number confirmation
checkSign
Yes
string
Wallet’s signature after verifying collection record
addressRemark
No
string
remark of receiving address
mainnet
Yes
string
mainnet(refer to currency control)
coinName
Yes
string
currency(refer to currency control)
coinsDoId
Yes
string
CoinsDoID (refer to currency control)
protocol
Yes
string
Protocol (refer to currency control)
tokenAddress
Yes
string
Token address (refer to currency control)
coinType
Yes
string
Coin type (refer to currency control)
recordId
Yes
string
CoinsDo Transaction ID
checkCode
No
string
Checking result (Parameter details as below)
checkCode
Address checking
Transaction checking
Description
-1
Checking error
Checking error
Unknown error
0
Checking success
Checking success
Checking success
1
Checking error
Check pending
Address not exists
2
Checking success
Checking success
Data not match
3
Checking success
Checking error
Transaction faied
4
Checking success
Checking error
Transaction checking failed
5
Checking success
Checking error
Transaction not found
6
Checking success
Checking disabled
Checking disabled
7
Checking error
Check pending
Address not found
❗Checking requires the wallet to stay online. If check is disabled, wallet will skip checking and trigger callback
directly. Under normal circumstances, a callback will only happen if checking is success, however. If checking has encountered an error, callback will be triggered only after 10 check repetitions.
❗You may ignore checkSign if checking is disabled, as the parameter value might be empty.
Checking Signature Verification Method
The signature is based on RSA-SHA256 method using wallet’s public key and signature (checkSign)
Example
checkCode = 0;
recordId = 4590542064244737;
txHash = 0x2f8160ad2ab556be36003a77087968387843ef9104fa7bca5fda5a1f7b2c6c1d;
Sign data hash will be
045905420642447370x2f8160ad2ab556be36003a77087968387843ef9104fa7bca5fda5a1f7b2c6c1
Next, use wallet public key to verify against checkSign (signature) based on RSA-SHA256 method.
Wallet public key
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCYmbkVn95lUPYZTybd68Bm5CoW0UjMpEQijaGZLPm6NH0YGJiPsQa6n3jBWEm2zhiG+oLAjZnNNl+SPxEO7dJC/PhTCuFp1muGOn5xm6ItS11ByEbAOZrSMWkV7mqFQZQkTZw0tHGP7X8AqoiXClFwc+m/lkVawHqq2NUSJbafJQIDAQAB,
checkSign (Signature)
BLVMetTZSNEzI2apnOpSRIdhrwDjyAsOVpJprEHZeWsrL4CGq3t50G1L7MjIlVFknEaAmvlKFgLu22oEhD4NRZOUU7rIcfTldzWpYct8s+/Ais9LMqCu3Uw0mfhYXO7fB11BA3q+glaH0JEQ1Wnmcvt5OIfzlCW2rG9vethipxY=
❗We recommend merchant to use coinsDoId to determine the coin that you are receiving, or you can use mainnet + coinType to determine if you have received the coin, For example
Main currency:mainnet=ETH coinType=0 refers to ETH with coinsDoId=2.
Token:mainnet=ETH coinType=1 ,together with tokenAddress to determine which token it is For example, tokenAddress=0xdac17f958d2ee523a2206206994597c13d831ec7 refers to USDT with coinsDoId=6.
❗coinName should not be used to determine if you have received the token because different mainnet uses the same token name.
Response example
{
"code": 200, // Status code
"msg": "Success", // Response message
"data": null //Response data
}
{
"code": 200, // Status code
"msg": "Success", // Response message
"data": null //Response data
}
Convert BCH address
Endpoint description
BCH addresses: There are two different types of addresses - Legacy (classic) and CashAddr (Standard). You can use this interface description to convert addresses when your address is compatible.
After submitting a request, the client must wait for the wallet client to process the collection. The collection result can be viewed in the collection record or the wallet client log.