NFT Minting
Create Order
POST
https://api-purchase-nft.nivapay.com/merchant/hosted/nftCheckout/order
Merchant will call this endpoint to generate a new order. Merchant needs to redirect their user to the hosted checkout URL to complete the journey.
Headers
X-API-KEY*
string
Merchant API key
Request Body
crypto_symbol*
string
Symbol of the virtual asset which user wants to pay in. If the SC function requires funds, then this should be the same currency.
user_last_name
string
Last name of your user
user_first_name
string
First name of your user
user_email_id
string (email)
Email ID of your user
merchant_webhook_url
string (url)
URL where you want to receive webhook events
merchant_redirect_url*
string (url)
URL to which the user will be redirected back at the end of the journey or when user cancels the session. For SDK integration, pass a dummy value.
merchant_txn_id
string
Internal ID provided by the merchant to track this order. This will be passed in the webhook events too.
merchant_user_id*
string
Internal ID provided by the merchant for the user
merchant_id*
string
ID assigned to the merchant by Nivapay
crypto_contract_address
string
Contract address is required, if symbol+network is not a native currency, else can be null
contractExecution*
json
Smart contract (SC) execution details
network_params*
json
Contains network params
totalValue*
string
Total value of crypto to be paid to the function for this particular call (with above function_args). Value must not be in wei. You can use big decimals up to 18 digits.
payableCryptoContractAddress
string
If the virtual asset is an ERC20 / BEP20 token then itโs contract address to uniquely identify it
payableCryptoSymbol*
string
Symbol of the virtual asset to be paid to the SC function
payment
json
Required only if the SC function is expected to receive funds for its successful execution
function_args*
json
JSON containing the list of arguments (key-value pairs) this SC function takes. Arguments must adhere to the data type defined in the function ABI registered. Refer to the example below.
smartContractFunctionId*
string
ID of the SC function registered by the merchant
customGasLimit
string
Gas limit to override the defaultGasLimit specified at the time of registering your SC. If your SC function can vary in terms of computational effort, then it is strongly recommended to set this to avoid โinsufficient gas feeโ failures.
networkName*
string
Blockchain network on which this SC exists
crypto_network*
string
Blockchain network of this virtual asset
order_id
string
Order ID assigned by Nivapay
yes
crypto_symbol
string
Symbol of the virtual asset which user wants to pay in. If the SC function requires funds, then this should be the same currency.
yes
crypto_contract_address
string
Contract address is required, if symbol+network is not a native currency, else can be null
no
crypto_network
string
Blockchain network of this virtual asset
yes
crypto_amount
string
Virtual asset amount to be paid to fulfil this order
yes
hash
string
Secret hash which allows you to access the gateway_url. It is already added as a query param to the gateway_url.
yes
gateway_url
string (url)
URL to the hosted checkout page where you need to redirect your user
yes
Generate Crypto Quote
POST
https://api-purchase-nft.nivapay.com/merchant/hosted/nftCheckout/cryptoQuote
Get the amount to be paid in crypto to fulfil the desired NFT Checkout order
Headers
X-API-KEY*
string
Merchant API key
Request Body
crypto_symbol*
string
Symbol of the virtual asset which user wants to pay in. If the SC function requires funds, then this should be the same currency.
merchant_id*
string
ID assigned to the merchant by Nivapay
crypto_contract_address
string
Contract address is required, if symbol+network is not a native currency, else can be null
contractExecution*
json
Smart contract (SC) execution details
network_params*
json
Contains network params
totalValue*
string
Total value of crypto to be paid to the function for this particular call (with above function_args). Value must not be in wei. You can use big decimals up to 18 digits.
payableCryptoContractAddress
string
If the virtual asset is an ERC20 / BEP20 token then itโs contract address to uniquely identify it
payableCryptoSymbol*
string
Symbol of the virtual asset to be paid to the SC function
payment
json
Required only if the SC function is expected to receive funds for its successful execution
function_args*
json
JSON containing the list of arguments (key-value pairs) this SC function takes. Arguments must adhere to the data type defined in the function ABI registered. Refer to the example below.
smartContractFunctionId*
string
ID of the SC function registered by the merchant
customGasLimit
string
Gas limit to override the defaultGasLimit specified at the time of registering your SC. If your SC function can vary in terms of computational effort, then it is strongly recommended to set this to avoid โinsufficient gas feeโ failures.
networkName*
string
Blockchain network on which this SC exists
crypto_network*
string
Blockchain network of this virtual asset
crypto_amount
string
Crypto amount to be paid to fulfil this order
yes
allowed
boolean
Whether this amount is permissible for payment for the given crypto currency. If this is false then the NFT Checkout order also won't get generated.
yes
message
string
Message explaining if it is not allowed or Bad request
no
Last updated
Was this helpful?