Backend SDK (Payments)
The `getNftPurchaseData` callback function
// Common parameters for all settlement types
const nftCheckoutCommon = {
title: 'Tweed Demo NFT',
fiatCurrencyId: 'USD',
contractAddress: DEMO_NFT_CONTRACT_ADDRESS,
chain: 'polygonAmoy',
description: "Non-fungible token for demonstration of Tweed's capabilities",
tokenUri: 'https://paytweed-assets.s3.amazonaws.com/pinky.png' // A simple PNG for the NFT on Tweed's widget
}
const nftCheckoutVariants: Record<string, NftPurchaseBackendPayload> = {
'demo-freemint': {
...nftCheckoutCommon,
nftId: 'demo-freemint',
priceInCrypto: '0', // For free mint
tokenContractAddress: undefined, // For free mint
abi: DEMO_NFT_CONTRACT_ABI_FREE,
},
'demo-paidmint-native': {
...nftCheckoutCommon,
nftId: 'demo-paidmint-native',
priceInCrypto: String(1e16), // For native settlement -- set price to 0.01 MATIC
abi: DEMO_NFT_CONTRACT_ABI_PAID_NATIVE,
},
'demo-paidmint-erc20': {
...nftCheckoutCommon,
nftId: 'demo-paidmint-erc20',
priceInCrypto: String(100e18), // For ERC20 settlement -- 100 fake USDC token
tokenContractAddress: FAKE_USDC_CONTRACT_ADDRESS, // For ERC20 settlement -- fake USDC token address
abi: DEMO_NFT_CONTRACT_ABI_PAID_ERC20,
},
}Correctly specifiying your ABI:
Last updated