Partner Driven
MoonPay NFT Checkout: Partner Driven Flow
The Partner Driven flow is designed to allow your users to purchase NFTs using fiat currency, while you maintain control over the way your smart contract is called. This flow requires you to provide us with callData, which we will use to execute an on-chain transaction and call your smart contract.
Step 1: Ensure you meet our product pre-requisites
Before setting up NFT Checkout, you'll need to check you meet all the requirements to use our product.
- You're looking to complete a sale on Ethereum or Polygon (more chains coming soon) and the NFTs are priced in their native network currency (i.e. MATIC or ETH)
- The NFTs have a USD value of between $3 & $15,000.
NFT Smart Contract Requirements
Basic NFT Smart Contract requirements are described here
Allow lists:
If your smart contract incorporates an Allow List, it's vital to undertake the following steps to ensure a smooth and secure minting process:
- Buyer Wallet Address Verification: We will pass you buyer wallet address in call to
calldata
endpoint so you can incorporate that in your verification flow. - MoonPay Address Access: Grant the MoonPay address permissions to buy an unlimited number of NFTs at any time. The ability to buy without restrictions is crucial for MoonPay to operate effectively.
MoonPay addresses
List of all addresses available here
Step 1: Set Base URL
- Log in to your MoonPay account.
- Navigate to the NFT settings in the dashboard.
- Set the base URL for your NFTs.
Step 2: Implement Asset Info Endpoint
The asset info endpoint is a crucial part of the Partner Driven flow. It allows MoonPay to retrieve information about the NFTs available for purchase.
- Implement the asset info endpoint on your server. https://dev.moonpay.com/reference/get_asset-info-contractaddress-tokenid
- Ensure that the
subFlow
value is set toPartnerDrivenDirect
. This indicates that the Partner Driven flow is being used.
Step 3: Implement CallData Endpoint
The callData endpoint is used to provide MoonPay with the data needed to execute an on-chain transaction and call your smart.
Specification link - https://dev.moonpay.com/reference/post_calldata
Updated about 1 year ago