Skip to main content
Use a draft quote to show users what to expect before they buy stablecoins with a card. For example, enter 100 USD to see roughly how much USDC the user receives after fees. Crossmint does not store a draft, and a draft cannot be paid or turned into an order. A draft also starts no identity verification. Display the quote, then discard the response. When the user proceeds, create a new order.

Request a Quote

Call Create Order with state: "draft". The rest of the body is the same as a real order. The code sample buys USDC on Base Sepolia with exactly 100 USD.
cURL

Read the Quote

The user is charged 100 USD in total and receives between 96.50 and 97.50 USDC (quantityRange). Part of the fee depends on the card the user pays with, so a draft returns a range rather than an exact amount and does not break fees down. The amounts are illustrative.
Draft response (excerpt)

Display the Quote

Use these fields to build the quote summary: gas and networkFee only appear when they are not zero. Once the user enters card details on the real order, the quote resolves to an exact amount: quantityRange collapses to a single value and charges.crossmintFees lists the Crossmint fee included in the total.

Place the Order

Once the user is ready to continue, discard the draft and send the request again without state: "draft". The draft was only a preview and cannot be reused. The new order includes a fresh quote and a clientSecret for the embedded checkout. If the amounts have changed, show the updated quote to the user before continuing.

Next Steps

React Quickstart

Create the order and render the checkout

Create Order API

Every request and response field