For Marketplaces with Custom Contracts
Note: All the query parameters marked with *(asterisk) are mandatory to send to successfully load the widget and complete the transaction.
Query Parameter | Example | Type | Default value | Description |
---|---|---|---|---|
apiKey * | 4fcd6904-706b-4aff-bd9d-77422813bbb7 | string | Your API key for authentication. | |
calldata * | Example | string | The calldata/hex that needs to be passed to your smart contract in order to execute the required function successfully. The calldata should contain the method ID of the function to be executed and the values of all the parameters in that function. How to generate calldata code example Note: If the function to be executed accepts user's wallet address as a parameter, while generating calldata you need enter the address of Transak's smart contract on that chain as the user's wallet address. List of Transak Smart Contract addresses | |
contractId* | 65eaccc7bc21f2780bcc442a | string | contractId is the unique identifier for a combination of your smart contract address and network. You can generate your contractId through dashboard.transak.com. For staging, your contract will be whitelisted immediately. But for production, we need to review the smart contract audit and then whitelist the smart contract on production. | |
cryptoCurrencyCode * | ETH | string | The code of the cryptocurrency that your smart contract accepts in order to execute the function. You can find the list of supported cryptocurrencies here. | |
estimatedGasLimit * | 54589 | number | Gas limit that needs to be filled while executing the transaction on your smart contract. You need to estimate the gas limit it will cost to execute the particular function on your smart contract. Please refer to Ethereum Gas Docs here for more info on this for EVM compatible chains. Note: This cannot be 0 | |
nftData * | Example | array | NFT data is an array that consists of only a single element. It contains: • imageURL (optional) • nftName (optional) • collectionAddress - address of NFT collection • tokenID - array of all token IDs • price - Price of NFT needs to be in crypto here • quantity - Total quantity of NFTs in order • nftType - ERC721 or ERC1155 Refer to example for code structure. Note: We will consider quantity as the reference to determine the number of NFTs to be purchased. If quantity is sent as 1 and there are 4 token IDs, we’ll only consider the first token ID and price. And the length of price and tokenID array should be same and equal to the quantity. And default value of nftType is ERC721. | |
isNFT * | true | boolean | Pass this as “true”. Note: If this is passed all these query parameters should be passed compulsorily - “callData”, "contractId", “cryptoCurrencyCode”, “estimatedGasLimit”, “nftData” | |
walletAddress | 0x86349020e9394b2BE1b1262531B 0C3335fc32F20 | string | The blockchain address of the user's wallet that the purchased NFT will be sent to. Users will be able to edit the wallet address. The wallet address needs to be valid for the NFT and blockchain network so to make sure this works you should pass cryptoCurrencyCode or network. | |
environment | STAGING | string | PRODUCTION | To differentiate between STAGING environment and PRODUCTION environment. Note: This param will only work with our SDK integration method. |
fiatCurrency | GBP | string | The code of the fiat currency you want the customer to buy NFT in. If the fiat currency is not supported by a specific product type then the default widget will load with all the supported fiat currencies for that product type. You can find all the supported fiat currencies here. | |
defaultFiatCurrency | GBP | string | The three letter code of the fiat currency your user will send/receive while buying/selling cryptocurrency. Users can change the fiat currency if this is passed. If the fiat currency is not supported by a specific product type then the default widget will load with all the supported fiat currencies for that product type. This parameter will be skipped if fiatCurrency or countryCode is passed. | |
countryCode | IN | string | The country's https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2. The fiat currency will be displayed as per the country code. If the country code is not supported by a specific product type then the default widget will load with all the supported countries for that product type. This parameter will be skipped if fiatCurrency is passed. | |
defaultPaymentMethod | credit_debit_card | string | The default payment method you would prefer the customer to buy/sell with. If you pass this param, the payment method will be selected by default and the customer can also select another payment method. This parameter will be skipped if paymentMethod is passed. Refer here to the list of supported params for the payment method. | |
paymentMethod | credit_debit_card | string | The payment method you want to show to the customer while buying/selling. If you pass this param, then the payment method will be selected by default and the customer won't be able to select another payment method. Refer here to the list of supported params for the payment method. | |
disablePaymentMethods | credit_debit_card | string | A comma-separated list of payment methods you want to disable and hide from the customers. | |
[email protected] | string | The email that will be used to identify your customer and their order (usually the email that they registered with your app). Note: Please encode the email if it contains any special characters before passing it to query parameters. Otherwise, it will not be considered. Eg: [email protected] ==> Works [email protected] ==> will not work. | ||
userData | Example | object | Here you can pass your user's data like their name, address, date of birth in the object format. If you will pass all the basic user's data, the customer won't be prompted to enter it. | |
partnerOrderId | 5e2f559511a9de | string | An order ID that will be used to identify the transaction once a webhook is called back to your app. This can be your identifier to track your customers. | |
partnerCustomerId | 23487492 | string | A customer ID that will be used to identify the customer that made the transaction once a webhook is called back to your app. | |
disableWalletAddressForm | true | boolean | false | When true, the customer will not be able to change the destination address of where the cryptocurrency is sent to. Note: When this is used, walletAddress query param should be passed. |
themeColor | 000000 | string | The theme color code for the widget main color. It is used for buttons, links and highlighted text. Only hexadecimal codes are accepted. | |
widgetHeight | 100% | string | 100% | Height of the widget iFrame. |
widgetWidth | 100% | string | 100% | Widget of the widget iFrame. |
hideMenu | true | boolean | false | When true, then the customer will not see the menu options. This will hide the menu completely. |
isFeeCalculationHidden | true | boolean | false | When true, then the customer will not see our fee breakdown. The customer will only see the total fee. This parameter will be ignored if your fee (on top of us) is more than 1%. |
exchangeScreenTitle | Buy NFT | string | To change the exchange screen title. |
Updated 2 months ago