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.
Before delving into the documentation, why not check if the libraries already have the functionality you need? It could save you time and effort in the long run!
ticker required | string The |
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 If you wish to receive notifications for transactions that are pending and not yet confirmed, set this value to 1. |
confirmations | integer Number of blockchain 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 Users can set the priority for forwarding funds to the provided address using this parameter. |
multi_token | integer Enabling this parameter allows customers to make payments using any token that is supported by the system, even if it differs from the one specified by the user initially. |
multi_chain | integer Enabling this parameter allows you to create the same address on all chains that share the same addresses, such as Polygon, Binance Smart Chain, and Ethereum, which enables you to receive payments on all of them. |
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 |
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 |
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 |
{- "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 |
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 |
value required | number Value to convert |
from required | string Specify the type of currency you wish to convert, whether it is a FIAT currency or a cryptocurrency.
Example: from=usd |
{- "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*