For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
RegisterLoginSandbox Login
GuidesRecipesAPI Reference
GuidesRecipesAPI Reference
  • Getting Started
    • Getting Started with Checkout
    • ACH Checkout
    • Card Checkout with Credits
    • Card Checkout
    • Direct USDC Settlement
    • Fiat/Crypto Pay-ins
    • Secure Marketplace Checkout
    • EVM Checkout
    • How to Enable Checkout with Credit Cards
    • Quick Start Marketplace Implementation
    • Payouts
    • Common FAQs
  • Checkout
    • Settlement Locations
    • Checkout Webhooks
  • Payouts
    • Payout Overview
    • What is a Payout
      • What is KYC
        • Coinflow Prebuilt KYC Solution
        • KYC Attestation
        • KYC via Sumsub Token Sharing
        • KYC via Persona Token Sharing
  • Subscriptions
    • Subscriptions Overview
  • Marketplaces
    • Marketplace Overview
    • How Marketplaces Work
    • How to Withdraw USDC
    • Countries Eligible for USDC Withdraw
    • Marketplaces Webhooks
    • Marketplaces Implementation
  • Developer Resources
    • Custom Branding
    • Checkout Implementation
    • Webhooks
  • Merchant Dashboard
    • Login & Account Access
    • Users and Roles
    • Rate Limits
    • Developer Contact
LogoLogo
RegisterLoginSandbox Login
On this page
  • Overview
  • Who Should Use This Method
  • How It Works
  • Setup Process
PayoutsKYC VerificationSupported KYC Methods

Persona Token Sharing with Coinflow

Was this page helpful?
Previous

Available Countries - Withdraw

Learn about which countries Coinflow can support with direct bank payouts.
Next
Built with

Overview

If you already use Persona for KYC verification, you can share that verified data directly with Coinflow. This eliminates duplicate verification for your users and provides a seamless payout experience.

This integration uses Persona’s Share Token feature, which allows you to securely share verified identity data with Coinflow.

Who Should Use This Method

Persona Token Sharing is ideal for merchants who:

  • Already have an active Persona account
  • Have users verified through Persona
  • Want to avoid requiring users to complete KYC again
  • Want to leverage existing KYC infrastructure

How It Works

When you call the Register User Via Share Token endpoint:

  1. Coinflow creates an inquiry to receive the shared data
  2. The Share Token is redeemed, transferring the verification data to Coinflow’s inquiry
  3. The user can now proceed with payouts without additional KYC

Setup Process

Merchants who want to share Persona data with Coinflow will need to set up a Persona Connect data sharing partnership with Coinflow. Reach out to a Coinflow integrations representative to get started with setting up a Persona connection.

Once the Persona connection has been established, follow these steps:

  1. Call Persona’s Create Share Token endpoint to generate a share token for the completed Inquiry.
Create Share Token
1curl -X POST https://api.withpersona.com/api/v1/connect/share-tokens \
2 -H "Authorization: Bearer <YOUR_PERSONA_API_KEY>" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "data": {
6 "attributes": {
7 "connection-id": "<COINFLOW_CONNECTION_ID>",
8 "source-id": "<INQUIRY_ID>"
9 }
10 }
11 }'
  1. Call our Register User Via Share Token endpoint to pass KYC data using the share token.
Request
1curl --request POST \
2--url https://api-sandbox.coinflow.cash/api/withdraw/kyc/share-token \
3--header 'Authorization: <YOUR_API_KEY>' \
4--header 'accept: application/json' \
5--header 'content-type: application/json' \
6--header 'x-coinflow-auth-user-id: user123' \
7--data '{
8 "vendor": "persona",
9 "shareToken": "cnst_ABC123",
10 "email": "testuser@test.com"
11}'
Response
1{
2 "withdrawer": {
3 "_id": "67449b17d654e5cdd2925f1c",
4 "currency": "USD",
5 "email": "testuser@test.com",
6 "verification": {
7 "status": "pending"
8 }
9 }
10}

Important for UI Integration: If you’re using Coinflow’s prebuilt UI components (e.g., CoinflowWithdraw), call the Register User Via Share Token endpoint before rendering the component to ensure the verification record exists.

When calling the Get Withdrawer endpoint after registration, Coinflow will automatically check the Share Token status to ensure the verification is complete before returning the withdrawer data. If there are missing fields that are required by Coinflow, the user will be prompted to fill in the remaining fields.