If you already verify users with an identity verification (IDV) provider like Sumsub or Persona, you can send that data to Crossmint before creating an onramp order. When the data is complete, users can skip in-checkout identity verification.If you prefer to have individual users provide their KYC data client-side, Crossmint supports that as well. See the React Quickstart for that approach.
Before sharing any user KYC data with Crossmint, the user must accept Crossmint’s Privacy Policy. Record their acceptance with the Accept Legal Document endpoint before registering KYC data:
Once the user is registered with their KYC data, you can create an onramp order. The order will use the registered KYC data for compliance checks.
Important: Crossmint links pre-registered KYC data to an order using the user’s email address. The payment.receiptEmail value must match the email used when registering the user’s KYC data with the Create User API.
The lineItems field accepts either a single object or an array. The examples above use an array for consistency, but you can also pass a single line item object directly.
When you create an order, Crossmint automatically looks up the user’s KYC data based on the email address provided in payment.receiptEmail. Here is the complete flow:
1
Accept the privacy policy
Record the user’s privacy-policy acceptance first (see the Accept Crossmint’s Privacy Policy section above). This is required before any KYC data is shared with Crossmint.
2
Register user with KYC data
First, register the user’s KYC information using the Create User API. Make sure to include the user’s email in the email field within kycData:
When full KYC data is present but Crossmint needs to run additional compliance checks, the order enters a processing state. This typically resolves within a few seconds as Crossmint runs the appropriate checks: