lineItems
property. This guide explains how to configure item selection for different asset types.
Supported Item Types
Crossmint supports purchasing various types of digital and physical assets:-
Digital Assets
- Non-Fungible Tokens (NFTs)
- Semi-Fungible Tokens (SFTs)
- Fungible Tokens (FTs) including USDC (onramp) and memecoins
-
Physical Products
- Amazon products
- Shopify products
- Flights: Closed alpha. Contact us if you are interested to try it out
- Coming Soon: Hotels, food delivery, and more
All items available for purchase must comply with Crossmint's terms of service and legal requirements. Non-Fungible
Collections and Fungible tokens must be reviewed and approved by Crossmint before being available in production.
Item Locator Formats
You'll use one of these locator formats in yourlineItems
:
collectionLocator - For minting new tokens:
crossmint:<_YOUR_COLLECTION_ID_>
- For collections created in Crossmint Console (e.g.crossmint:9c82ef99-617f-497d-9abb-fd355291681b
)crossmint:<_YOUR_COLLECTION_ID_>:<_TEMPLATE_ID_>
- For collections created in Crossmint Console where a specific NFT template is desired (e.g.crossmint:9c82ef99-617f-497d-9abb-fd355291681b:silver-pass
)<blockchain>:<contract-address>
- Using direct contract addresses for external collections registered in Crossmint Console (e.g. ethereum:0x71c7656ec7ab88b098defb751b7401b5f6d897).
Item Selection Examples
For external EVM contracts registered in Crossmint Console, ensure the attribute name in
callData
matches the
parameter name in your mint function. For example: If your mint function has the signature: mintTo(address _to, uint256 _amount)
then use _amount
instead of quantity
. See our Register External
Collection guide for details on registering your contract.The
buyerCreatorRoyaltyPercent
parameter controls how much of the creator royalty percentage the buyer pays when purchasing Solana NFTs through marketplaces.Marketplace Requirements:- Magic Eden: Required parameter
- Tensor: Optional (defaults to NFT's on-chain royalty percentage)
- Hadeswap: Optional (defaults to 100%)
- Range: Must be between 0 and 100 (inclusive)
- Impact: Always affects final price calculation by applying royalty fees
- Validation: Throws error if outside valid range
- Compressed NFTs: Detected when
getAssetProof()
returns valid proof data - Royalty-enforced NFTs: Detected when NFT has MIP1 or Cardinal Token Manager protection
Multiple Item Orders
You can enable users to purchase multiple items in a single transaction by providing an array of line items:Multiple Item Limitations:
- Maximum limit of 15 items per order
- collectionLocator: All items must be on the same blockchain, and collections registered on the same project
- tokenLocator: All items must be on the same blockchain
- productLocator: Multiple items only supported in Headless Checkout (not Hosted or Embedded Checkout)
- productLocator: All items must be from the same merchant (e.g., all Amazon or all Shopify, but not mixed)