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

# USDC Support

> How to set up Crossmint if your collection is denominated in USDC

<Tip>
  By denominating your collection in USDC, you can eliminate price volatility, and offer a more accessible experience
  to users.
</Tip>

## Ensure you are using a supported USDC token

First of all, make sure your collection is denominated in one of the USDC token addresses supported by Crossmint.

<table className="table table-auto">
  <thead>
    <tr>
      <th>Chain</th>
      <th>Network</th>
      <th>USDC Token Address</th>
      <th>USDXM Token Address</th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td className="not-prose align-middle">
        <table>
          <tr>
            <td>
              <img src="https://mintcdn.com/crossmint-wallets-docs-2-5/Vxf2cg169y9rtRdg/images/logos/ethereum-black.svg?fit=max&auto=format&n=Vxf2cg169y9rtRdg&q=85&s=f42966a1ce319889456be61b7839cb75" alt="ethereum logo" width="24px" className="mr-3 block dark:hidden" data-path="images/logos/ethereum-black.svg" />

              <img src="https://mintcdn.com/crossmint-wallets-docs-2-5/Vxf2cg169y9rtRdg/images/logos/ethereum-white.svg?fit=max&auto=format&n=Vxf2cg169y9rtRdg&q=85&s=87628fb04f42d42cd61e9d9006e7df81" alt="ethereum logo" width="24px" className="mr-3 hidden dark:block" data-path="images/logos/ethereum-white.svg" />
            </td>

            <td className="px-4">Ethereum</td>
          </tr>
        </table>
      </td>

      <td>
        <p>Mainnet</p>
        <p>Sepolia</p>
      </td>

      <td>
        <p>
          <code>0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48</code>
        </p>

        <p>
          <code>0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238</code>
        </p>
      </td>

      <td>
        <p>-</p>

        <p>
          <code>0x14196F08a4Fa0B66B7331bC40dd6bCd8A1dEeA9F</code>
        </p>
      </td>
    </tr>

    <tr>
      <td className="not-prose align-middle">
        <table>
          <tr>
            <td>
              <img src="https://mintcdn.com/crossmint-wallets-docs-2-5/Vxf2cg169y9rtRdg/images/logos/polygon-black.svg?fit=max&auto=format&n=Vxf2cg169y9rtRdg&q=85&s=0cf564693485517c4f40ecec0eb62cac" alt="polygon logo" width="24px" className="mr-3 block dark:hidden" data-path="images/logos/polygon-black.svg" />

              <img src="https://mintcdn.com/crossmint-wallets-docs-2-5/Vxf2cg169y9rtRdg/images/logos/polygon-white.svg?fit=max&auto=format&n=Vxf2cg169y9rtRdg&q=85&s=27ea0a025490e4873c7633b283cf1744" alt="polygon logo" width="24px" className="mr-3 hidden dark:block" data-path="images/logos/polygon-white.svg" />
            </td>

            <td className="px-4">Polygon</td>
          </tr>
        </table>
      </td>

      <td>
        <p>Mainnet</p>

        <br />

        <p>Amoy</p>
      </td>

      <td>
        <p>
          <code>USDC 0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359</code>
        </p>

        <p>
          <code>~~USDC.e 0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174~~</code>\*
        </p>

        <p>
          <code>0x41e94eb019c0762f9bfcf9fb1e58725bfb0e7582</code>
        </p>
      </td>

      <td>
        <p>-</p>
        <p>-</p>

        <p>
          <code>0x14196F08a4Fa0B66B7331bC40dd6bCd8A1dEeA9F</code>
        </p>
      </td>
    </tr>

    <tr>
      <td className="not-prose align-middle">
        <table>
          <tr>
            <td>
              <img src="https://mintcdn.com/crossmint-wallets-docs-2-5/Vxf2cg169y9rtRdg/images/logos/base-black.svg?fit=max&auto=format&n=Vxf2cg169y9rtRdg&q=85&s=d62ffb065e8e4e2d9c42e6e45ab7637c" alt="base logo" width="24px" className="mr-3 block dark:hidden" data-path="images/logos/base-black.svg" />

              <img src="https://mintcdn.com/crossmint-wallets-docs-2-5/Vxf2cg169y9rtRdg/images/logos/base-white.svg?fit=max&auto=format&n=Vxf2cg169y9rtRdg&q=85&s=778dc52edd2fa6933a8178348bf362b6" alt="base logo" width="24px" className="mr-3 hidden dark:block" data-path="images/logos/base-white.svg" />
            </td>

            <td className="px-4">Base</td>
          </tr>
        </table>
      </td>

      <td>
        <p>Mainnet</p>
        <p>Base Sepolia</p>
      </td>

      <td>
        <p>
          <code>0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913</code>
        </p>

        <p>
          <code>0x036CbD53842c5426634e7929541eC2318f3dCF7e</code>
        </p>
      </td>

      <td>
        <p>-</p>

        <p>
          <code>0x14196F08a4Fa0B66B7331bC40dd6bCd8A1dEeA9F</code>
        </p>
      </td>
    </tr>

    <tr>
      <td className="not-prose align-middle">
        <table>
          <tr>
            <td>
              <img src="https://mintcdn.com/crossmint-wallets-docs-2-5/kUzbs9p82sNDIwVD/images/logos/arbitrum-black.svg?fit=max&auto=format&n=kUzbs9p82sNDIwVD&q=85&s=31c4214c196f18743a051835d5a746d2" alt="arbitrum logo" width="24px" className="mr-3 block dark:hidden" data-path="images/logos/arbitrum-black.svg" />

              <img src="https://mintcdn.com/crossmint-wallets-docs-2-5/kUzbs9p82sNDIwVD/images/logos/arbitrum-white.svg?fit=max&auto=format&n=kUzbs9p82sNDIwVD&q=85&s=a305781f6955d26df5c7db73522730ad" alt="arbitrum logo" width="24px" className="mr-3 hidden dark:block" data-path="images/logos/arbitrum-white.svg" />
            </td>

            <td className="px-4">Arbitrum</td>
          </tr>
        </table>
      </td>

      <td>
        <p>Mainnet</p>
        <p>Arbitrum Sepolia</p>
      </td>

      <td>
        <p>
          <code>0xaf88d065e77c8cC2239327C5EDb3A432268e5831</code>
        </p>

        <p>
          <code>0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d</code>
        </p>
      </td>

      <td>
        <p>-</p>

        <p>
          <code>0x14196F08a4Fa0B66B7331bC40dd6bCd8A1dEeA9F</code>
        </p>
      </td>
    </tr>

    <tr>
      <td className="not-prose align-middle">
        <table>
          <tr>
            <td>
              <img src="https://mintcdn.com/crossmint-wallets-docs-2-5/kUzbs9p82sNDIwVD/images/logos/arbitrumnova-black.svg?fit=max&auto=format&n=kUzbs9p82sNDIwVD&q=85&s=36cbe09e4be7227c3559c42f12f583a2" alt="arbitrum nova logo" width="24px" className="mr-3 block dark:hidden" data-path="images/logos/arbitrumnova-black.svg" />

              <img src="https://mintcdn.com/crossmint-wallets-docs-2-5/kUzbs9p82sNDIwVD/images/logos/arbitrumnova-white.svg?fit=max&auto=format&n=kUzbs9p82sNDIwVD&q=85&s=275dd2202ca9711e7c8fc44f1b145de4" alt="arbitrum nova logo" width="24px" className="mr-3 hidden dark:block" data-path="images/logos/arbitrumnova-white.svg" />
            </td>

            <td className="px-4">Arbitrum Nova</td>
          </tr>
        </table>
      </td>

      <td>
        <p>Mainnet</p>
        <p>Testnet</p>
      </td>

      <td>
        <code>0x750ba8b76187092B0D1E87E28daaf484d1b5273b</code>
      </td>

      <td>
        <p>-</p>

        <p>
          <code>0x14196F08a4Fa0B66B7331bC40dd6bCd8A1dEeA9F</code>
        </p>
      </td>
    </tr>

    <tr>
      <td className="not-prose align-middle">
        <table>
          <tr>
            <td>
              <img src="https://mintcdn.com/crossmint-wallets-docs-2-5/Vxf2cg169y9rtRdg/images/logos/sei-black.svg?fit=max&auto=format&n=Vxf2cg169y9rtRdg&q=85&s=21738d98bbc70887f2852e27cdb3cbfc" alt="Sei logo" width="24px" className="mr-3 block dark:hidden" data-path="images/logos/sei-black.svg" />

              <img src="https://mintcdn.com/crossmint-wallets-docs-2-5/Vxf2cg169y9rtRdg/images/logos/sei-white.svg?fit=max&auto=format&n=Vxf2cg169y9rtRdg&q=85&s=110648e033469256043139bc45b59b45" alt="Sei logo" width="24px" className="mr-3 hidden dark:block" data-path="images/logos/sei-white.svg" />
            </td>

            <td className="px-4">Sei</td>
          </tr>
        </table>
      </td>

      <td>
        <p>Mainnet</p>
        <p>Testnet</p>
      </td>

      <td>
        <p>
          <code>0x3894085Ef7Ff0f0aeDf52E2A2704928d1Ec074F1</code>
        </p>
      </td>

      <td>
        <p>-</p>

        <p>
          <code>0x14196F08a4Fa0B66B7331bC40dd6bCd8A1dEeA9F</code>
        </p>
      </td>
    </tr>
  </tbody>
</table>

<Note>
  USDC.e is only supported on previously registered integrations on Polygon mainnet. Please use the native USDC
  address for new projects.
</Note>

<Check>
  If you need some testnet USDC you can mint it freely from the contract or from this faucet app that uses the same
  testnet token contracts as the Checkout tools.

  [Crossmint Testnet USDXM Faucet](https://usdc-faucet.vercel.app/)
</Check>

## Validate your collection meets the requirements

<Tabs>
  <Tab title="EVM">
    In addition to the standard requirements, keep in mind:

    1. **The mint function should be `nonpayable`.**
    2. **The USDC token has 6 decimals** instead of 18 like ETH, Matic, and most other tokens.
    3. **The `totalPrice` attribute in the `mintConfig` of your button should be in units of USDC**. If your intended price is 100 USD, then you will set `totalPrice` to `100` e.g. `totalPrice="100"`.
    4. **Your ERC-20 transfer call must request the funds from `msg.sender`** instead of the address parameter. This allows Crossmint to pay from our fleet of treasury wallets and deliver the NFTs directly to the user's wallet. See an example mint function below.

    ```solidity Solidity theme={null}
    function mintUSDC(address _to) public {
      // pre payment logic here

      // note that you need to transfer from msg.sender, NOT the _to address
      tokenInstance.transferFrom(msg.sender, address(this), priceUSDC );

      // actual minting logic here
    }
    ```

    <Accordion title="Using a thirdweb contract?">
      Add a claim phase with currency type `USDC`. In staging. you must use `Custom ERC-20` and specify one of the token address listed above. In mainnet, you should select the default USDC option.
    </Accordion>
  </Tab>

  <Tab title="Solana">
    Denominate your candy machine on USDC and Crossmint will automatically detect it. You can learn how on this [guide](https://medium.com/crossmint-tech/how-to-create-a-fixed-price-usdc-nft-drop-on-solana-2ab251e61384).
  </Tab>
</Tabs>
