NFT Checkout

Create Order

POST https://api-ramp-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

Name
Type
Description

X-API-KEY*

string

Merchant API key

Request Body

Name
Type
Description

order_fiat_symbol*

string

Symbol of the fiat currency in which the user would like to make payment

user_city

string

User’s residential city as per their identity document

user_addressLine2

string

User’s residential address (line 2) as per their identity document

user_addressLine1

string

User’s residential address (line 1) as per their identity document

user_dob

string

User’s date of birth in yyyy-mm-dd format

user_mobileNumber

string

Mobile number with ISD code prefixed e.g. +919876543210

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

fiat_payment_method*

string (enum)

The payment method through which the user will pay

contractExecution*

json

Smart contract (SC) execution details

user_countryCode

string

ISO alpha2 code of the user’s residential country as per their identity document e.g. US, GB, etc. Refer to the full list: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2

user_postCode

string

User’s residential postal / zip code as per their identity document e.g. 90001

user_state

string

User’s residential state as per their identity document

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

chevron-rightCreate Order request example (curl)hashtag

Get Fiat currencies

GET https://api-ramp-nft.nivapay.com/merchant/hosted/nftCheckout/fiatCurrencies

Returns the list of fiat currencies along with the payment methods supported for on-ramping

Headers

Name
Type
Description

X-API-KEY*

string

Merchant API key

Generate Fiat Quote

POST https://api-ramp-nft.nivapay.com/merchant/hosted/nftCheckout/fiatQuote

Get the amount to be paid in fiat currency via the chosen payment method in order to fulfil the desired NFT Checkout order

Headers

Name
Type
Description

X-API-KEY*

string

Merchant API key

Request Body

Name
Type
Description

order_fiat_symbol*

string

Symbol of the fiat currency in which the user would like to make payment

merchant_id*

string

ID assigned to the merchant by Nivapay

fiat_payment_method*

string (enum)

The payment method through which the user will pay

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

Last updated