Python Library for CryptAPI payment gateway
Project description
CryptAPI's Python Library
Python implementation of CryptAPI's payment gateway
Requirements:
Python >= 3.0
Requests >= 2.20
Install
pip install python-cryptapi
Usage
Importing in your project file
import CryptAPI
Generating a new Address
import CryptAPI
ca = CryptAPI.Helper(coin, myAddress, callbackUrl, params, cryptapiParams)
address = ca.getAddress()['address_in']
Where:
coin
is the coin you wish to use, from CryptAPI's supported currencies (e.g 'btc', 'eth', 'erc20_usdt', ...).myAddress
is your own crypto address, where your funds will be sent to.callbackUrl
is the URL that will be called upon payment.params
is any parameter you wish to send to identify the payment, such as{orderId: 1234}
.cryptapiParams
parameters that will be passed to CryptAPI _(check which extra parameters are available here: https://docs.cryptapi.io/#operation/create).address
is the newly generated address, that you will show your users in order to receive payments.
Getting notified when the user pays
Once your customer makes a payment, CryptAPI will send a callback to your
callbackUrl
. This callback information is by default inGET
but you can se it toPOST
by settingpost: 1
incryptapiParams
. The parameters sent by CryptAPI in this callback can be consulted here: https://docs.cryptapi.io/#operation/confirmedcallbackget
Checking the logs of a request
import CryptAPI
ca = CryptAPI.Helper(coin, myAddress, callbackUrl, params, cryptapiParams)
data = ca.get_logs()
Same parameters as before, the
data
returned can b e checked here: https://docs.cryptapi.io/#operation/logs
Generating a QR code
import CryptAPI
ca = CryptAPI.Helper(coin, myAddress, callbackUrl, params, cryptapiParams)
###
qr_code = ca.get_qrcode(value, size)
For object creation, same parameters as before. You must first call ``getAddress` as this method requires the payment address to have been created.
For QR Code generation:
value
is the value requested to the user in the coin to which the request was done. Optional, can be empty if you don't wish to add the value to the QR Code.size
Size of the QR Code image in pixels. Optional, leave empty to use the default size of 512.
Response is an object with
qr_code
(base64 encoded image data) andpayment_uri
(the value encoded in the QR), see https://docs.cryptapi.io/#operation/qrcode for more information.
Estimating transaction fees
import CryptAPI
fees = CryptAPI.Helper.get_estimate(coin, addresses, priority)
Where:
coin
is the coin you wish to check, from CryptAPI's supported currencies (e.g 'btc', 'eth', 'erc20_usdt', ...)addresses
The number of addresses to forward the funds to. Optional, defaults to 1.priority
Confirmation priority, (check this article to learn more about it). Optional, defaults todefault
.
Response is an object with
estimated_cost
andestimated_cost_usd
, see https://docs.cryptapi.io/#operation/estimate for more information.
Converting between coins and fiat
import CryptAPI
conversion = CryptAPI.Helper.get_conversion(value, from_coin)
Where:
coin
the target currency to convert to, from CryptAPI's supported currencies (e.g 'btc', 'eth', 'erc20_usdt', ...)value
value to convert infrom
.from_coin
currency to convert from, FIAT or crypto.
Response is an object with
value_coin
andexchange_rate
, see https://docs.cryptapi.io/#operation/convert for more information.
Getting supported coins
import CryptAPI
supportedCoins = CryptAPI.Helper.get_supported_coins()
Response is an array with all supported coins.
Help
Need help?
Contact us @ https://cryptapi.io/contacts/
Changelog
1.0.0
- Initial Release
1.0.1
- Initial Release
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.