Download OpenAPI specification:Download
CryptAPI.io is a cryptocurrency payment API.
It is designed with the intent to allow you to integrate multiple coin payments in your service with the least effort possible.
There are no sign-ups, lengthy implementations or API keys required, it is as easy as a simple CURL request to create a new payment address.
The only thing required is that you implement the logic on your server to handle the callbacks sent to your server when the transaction from the client is confirmed.
For the documentation of BlockBee click here.
This method is used to generate a new address to give your clients, where they can send payments.
Notice: The length of this request can't surpass the 8192
characters!
Please make sure when sending a transaction you consult the minimum transfer value for the crypto/token you wish to use. If the value you send is bellow our minimums, CryptAPI will ignore the transaction.
ticker required | string The token ticker. Currently supported tokens can be checked on the Supported Coins page. |
callback required | string The URL the callbacks will be sent to. Must be a valid URL. |
address | string Address or addresses where the payment will be forwarded to. |
pending | integer Set this to 1 if you want to be notified of pending transactions (before they're confirmed) |
confirmations | integer Number of confirmations you want before receiving the callback (Min. 1) |
string E-mail address to receive payment notifications | |
post | integer Set this to 1 if you wish to receive the callback as a POST request (default: GET) |
priority | string Different per currency/network. |
multi_token | integer Set this to 1 to enable it (default: 0). |
multi_chain | integer Set this to 1 to enable it (default: 0). |
convert | integer Set this to 1 to enable it (default: 0). |
Address was created
Error creating address
{- "address_in": "14PqCsA7KMgseZMPwg6mJy754MtQkrgszu",
- "address_out": "1H6ZZpRmMnrw8ytepV3BYwMjYYnEkWDqVP (single address) {1H6ZZpRmMnrw8ytepV3BYwMjYYnEkWDqVP: 0.70, 1PE5U4temq1rFzseHHGE2L8smwHCyRbkx3: 0.30} (multiple addresses)",
- "callback_url": "example.com/invoice/1234?payment_id=5678",
- "priority": "default",
- "status": "success"
}
This method is used to check logs for your callback URLs.
ticker required | string The token ticker. Currently supported tokens can be checked on the Supported Coins page. |
List of payments sent to this callback
Your request couldn't be processed, please try again later
No request or no payment callbacks found
{- "address_in": "14PqCsA7KMgseZMPwg6mJy754MtQkrgszu",
- "address_out": "1H6ZZpRmMnrw8ytepV3BYwMjYYnEkWDqVP (single address) {1H6ZZpRmMnrw8ytepV3BYwMjYYnEkWDqVP: 0.70, 1PE5U4temq1rFzseHHGE2L8smwHCyRbkx3: 0.30} (multiple addresses)",
- "callback_url": "example.com/invoice/1234?payment_id=5678",
- "status": "success",
- "notify_pending": true,
- "notify_confirmations": 1,
- "priority": "default",
- "callbacks": [
- {
- "txid_in": "33f11611f863d7475eb10daada2f225f0877561cf58cdfff175e99635dfd9120",
- "txid_out": "5ea53d5e728bfdb56b54c0b945990b69ae1e66cec56ab24679c9a622c4695276",
- "value": 100000,
- "value_coin": 0.1,
- "value_forwarded": 100000,
- "value_forwarded_coin": 0.1,
- "confirmations": 13,
- "last_update": "14/10/2022 12:47:18",
- "result": "done",
- "fee_percent": 1,
- "fee": 2000,
- "fee_coin": 0.02,
- "prices": 55.59,
- "logs": [
- {
- "responses": "*ok*",
- "response_status": "200",
- "next_try": "14/10/2022 12:47:18",
- "pending": false,
- "confirmed": true
}
]
}
]
}
This endpoint is used to check the information of the cryptocurrency you want to use.
ticker required | string The token ticker. Currently supported tokens can be checked on the Supported Coins page. |
Info fetched successfully
Error fetching info
{- "coin": "Bitcoin",
- "minimum_transaction": "20000",
- "minimum_fee": "200",
- "fee_percent": "1.00",
- "prices_updated": "2019-10-14T13:00:09.585Z",
- "status": "success",
- "prices": "{'DKK': '56281.94', 'CAD': '10985.14', 'AED': '30517.01', 'BRL': '34243.36', 'USD': '8308.47', 'MXN': '160193.26', 'CNY': '58740.88', 'INR': '591471.72', 'JPY': '899719.16', 'HKD': '65173.93', 'GBP': '6616.08', 'EUR': '7535.35'}"
}
This method generates a base64-encoded image for payments
ticker required | string The token ticker. Currently supported tokens can be checked on the Supported Coins page. |
{- "status": "success",
- "qr_code": "...",
- "payment_uri": "..."
}
This method allows you to estimate blockchain fees to process a transaction.
Attention: This is an estimation only, and might change significantly when the transaction is processed. CryptAPI is not responsible if blockchain fees when forwarding the funds differ from this estimation.
Note: These not include CryptAPI's fees.
ticker required | string The token ticker. Currently supported tokens can be checked on the Supported Coins page. |
addresses | integer The number of addresses to forward the funds to. Default: 1 |
priority | string Different per currency/network. Check our knowledge base for more information about this parameter. |
Estimated cost
Your request couldn't be processed, please try again later
{- "status": "success",
- "estimated_cost": "0.00001",
- "estimated_cost_currency": "{'USD': '0.09', 'EUR': '0.08', 'GBP': '0.07', 'CAD': '0.11', 'JPY': '10.21', 'AED': '0.33', 'DKK': '0.58', 'BRL': '0.46', 'CNY': '0.56', 'HKD': '0.69', 'INR': '6.67', 'MXN': '1.81', 'UGX': '310.74', 'PLN': '0.35', 'PHP': '4.56', 'CZK': '1.91', 'HUF': '27.95', 'BGN': '0.15', 'RON': '0.39', 'LKR': '18.02'}"
}
This method allows you to easily convert prices from FIAT to Crypto or even between cryptocurrencies
ticker required | string The token ticker. Currently supported tokens can be checked on the Supported Coins page. |
{- "value_coin": "0.01",
- "exchange_rate": "47000",
- "status": "success"
}
This is the Callback documentation. Be aware that, these callbacks are sent by our API to your platform. The Callbacks are triggered when the user sends the payment to the address generated by our system. Your platform should be able to handle these callbacks.
The callbacks will be sent with an extra header, x-ca-signature
, which is a base64-encoded 1024-bit RSA-SHA256 signature of the callback. The data signed depends on what type of callback you're receiving: if it's sent via GET then the full request URL to your system (including all GET parameters) are signed, if it's sent via POST
then the entire body of the request is signed.
The Public Key
for the verification can be retrieved from this endpoint.
Check our knowledge base to learn how to verify the callback with code samples.
Callback issued when a client's transaction is pending confirmation.
Note 1: Only issued if you have requested to be notified of pending transactions.
Note 2: Sent via POST
if post=1
parameter set, else sent via GET
We strongly advise against whitelisting our callback IPs, because they might change in the future without warning, but if you really need to, at this moment the callbacks will be sent from the following IPs: 145.239.119.223
and 135.125.112.47
Expected response from your server
*ok*
Callback issued when a client's transaction has been confirmed by the network.
Note: Sent via POST
if post=1
parameter set, else sent via GET
We strongly advise against whitelisting our callback IPs, because they might change in the future without warning, but if you really need to, at this moment the callbacks will be sent from the following IPs: 145.239.119.223
and 135.125.112.47
Note: To prevent repeated callbacks sent to your systems, please respond with *ok*
to our callbacks.
Expected response from your server
The callback will be marked as successful when it receives the following response from your server
*ok*