> ## Documentation Index
> Fetch the complete documentation index at: https://docs.crossmint.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Choose Your Integration

> The key decisions that shape a Crossmint Checkout integration

Crossmint Checkout supports multiple asset types and integration modalities. This page explains the key decisions for your integration.

## Select the Asset Type You Are Selling

> [card] Memecoins

> [card] Closed-loop tokens

> [card] NFTs

Learn more about the types of assets that can be supported [here](https://help.crossmint.com/articles/8719615099-which-tokens-are-supported-with-crossmint-checkout#supported-assets).

## Choose an Integration Modality

Crossmint Checkout can be integrated into your application in three different ways, ranging from a bare-metal headless API with maximum UI flexibility, to a low-code hosted solution.

| Modality | Description | Integration Complexity | Supported Platforms | Recommended For |
| :- | :- | :- | :- | :- |
| [Embedded](https://docs.crossmint.com/payments/embedded/overview.md) | Embed a checkout natively within your app. Crossmint handles PSP orchestration and errors. | \~100 lines of code | React, React Native, Flutter, Swift, Kotlin, WebView | E-commerce sites, token marketplaces, embedded finance |
| [Headless](https://docs.crossmint.com/payments/headless/overview.md) | Buy or sell using a REST API. Puts additional work on your side. | \~500 lines of code | Everywhere | Best suited for backend flows and platforms not natively supported by other modalities |
| [Hosted](https://docs.crossmint.com/payments/pay-button/overview.md) | Add a button to your app that opens a checkout in a separate tab or window. | \~10 lines of code | Web | One-off integrations for an event, quick prototypes |

> [!NOTE]
>
> If you are not sure which modality to use, start with Embedded Checkout. It runs inside your app, and Crossmint
> handles PSP orchestration and error management.

## Choose Payment Methods

You can include multiple payment methods. Consider the following as you decide:

* Is your audience crypto-native or mainstream consumers familiar with card payments?
* What level of optionality do you want to enable? Adding many methods may add complexity during a user's checkout flow.

| Payment Method | Description | Best For |
| :- | :- | :- |
| **Debit & Credit Cards** | All major credit cards supported - Visa, Mastercard, American Express, and more. | Mainstream consumers, global accessibility |
| **Apple & Google Pay** | Check out in under 30 seconds with faster payment methods. | Mobile-first users, quick transactions |
| **Stablecoins** | Pay with USDC, USDT, and other stablecoins for lower transaction fees. | Crypto-native users, lower fees |
| **Cross-Chain Crypto** | Pay with any token, on any chain. | Multi-chain users, existing crypto holders |

> [!NOTE]
>
> Stablecoins and cross-chain crypto are not supported for memecoin checkout.

See [Payment Methods](https://docs.crossmint.com/payments/concepts/payment-methods.md) for details on each method and how to enable it.

## (For NFTs Only) Create or Import a Collection

Decide whether you want to create a new NFT collection or import an existing one:

> [card] [Create New](https://docs.crossmint.com/payments/guides/create-collection.md)
>
> Use Crossmint templates in the Console

> [card] [Import Existing](https://docs.crossmint.com/payments/guides/register-collection.md)
>
> Connect your deployed smart contract

Once you have a collection created or imported, you will have a `collectionId`, which is necessary to create orders.

## Decide Between Staging and Production

In most cases, it makes sense to start the integration in the staging environment, where all features are available and free to try. See [Staging vs Production](https://docs.crossmint.com/introduction/platform/staging-vs-production.md) for the differences.

> [!NOTE]
>
> Headless checkout requires enablement by the Customer Success Engineering team in production. [Contact
> the Crossmint team](https://www.crossmint.com/contact/sales) if you do not already have a CSE assigned.

## Choose an API Key Type

Embedded and Hosted Checkout use a client-side API key. Headless integrations support both server-side and client-side API keys. See [Environments & API Keys](https://docs.crossmint.com/payments/concepts/environments-and-api-keys.md) to pick the right key for your architecture.

## See Also

<Snippet file="production-access-requirements.mdx" />

> [card] [Embedded Checkout](https://docs.crossmint.com/payments/embedded/overview.md)
>
> Import Crossmint checkout components in your application

> [card] [Headless](https://docs.crossmint.com/payments/headless/overview.md)
>
> Buy or sell via an API, best suited for agents or deep UI customization

> [card] [Hosted Checkout](https://docs.crossmint.com/payments/pay-button/overview.md)
>
> Launch a Crossmint-hosted checkout page in a pop-up
