Skip to main content
interface KYCStatus {
  status: "not_started" | "pending" | "approved" | "rejected";
  message?: string;
}

Overview

Before you can create or use Yativo Cards, every user must complete a four-step onboarding process. This flow verifies identity, establishes acceptance of terms, and initializes the card wallet.
1

Register Card Account

Submit name and email to create your card account profile.
2

Complete KYC

Identity verification is required by regulation before card issuance.
3

Accept Terms

Acknowledge the cardholder terms and conditions.
4

Initialize Card Wallet

Initialize your card wallet for funding and transactions.

Step 1 — Register Card Account

email
string
required
The user’s email address. Used for communication and account identification.
first_name
string
required
User’s legal first name, as it should appear on the card.
last_name
string
required
User’s legal last name.
curl -X POST 'https://crypto-api.yativo.com/api/yativo-card/onboard' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
    "email": "user@example.com",
    "first_name": "Jane",
    "last_name": "Doe"
  }'
{
  "status": "success",
  "data": {
    "yativo_card_id": "yc_01HX9KZMB3F7VNQP8R2WDGT4E5",
    "email": "user@example.com",
    "first_name": "Jane",
    "last_name": "Doe",
    "kyc_status": "pending",
    "created_at": "2026-03-25T10:00:00Z"
  }
}
Save the yativo_card_id from this response. It is required for all subsequent card operations.

Step 2 — Check KYC Status

After registration, KYC verification is initiated. Poll this endpoint to track progress.
curl -X GET 'https://crypto-api.yativo.com/api/yativo-card/kyc-status' \
  -H 'Authorization: Bearer YOUR_API_KEY'
{
  "status": "success",
  "data": {
    "kyc_status": "approved",
    "kyc_verified_at": "2026-03-25T10:15:00Z",
    "rejection_reason": null
  }
}

KYC Status Values

StatusDescription
pendingKYC review is in progress. Poll again in a few minutes.
approvedIdentity verified. Proceed to Step 3.
rejectedVerification failed. See rejection_reason for details.
requires_actionAdditional documents or information needed from the user.
You cannot proceed past this step until the KYC status is approved. If the status is rejected, contact support to understand next steps.

Step 3 — Accept Terms and Conditions

Once KYC is approved, the user must explicitly accept the cardholder terms before a card can be issued.
curl -X POST 'https://crypto-api.yativo.com/api/yativo-card/accept-terms' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{}'
{
  "status": "success",
  "data": {
    "terms_accepted": true,
    "accepted_at": "2026-03-25T10:20:00Z",
    "terms_version": "2026-01"
  }
}
If you are building on behalf of users in the B2B Issuer Program, ensure your terms of service incorporate the required cardholder agreement language before calling this endpoint on behalf of your customers.

Step 4 — Initialize Card Wallet

The final step initializes your card wallet for funding and transactions.
curl -X POST 'https://crypto-api.yativo.com/api/yativo-card/deploy-safe' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{}'
{
  "status": "success",
  "data": {
    "status": "deployed",
    "initialized_at": "2026-03-25T10:22:00Z"
  }
}
Card wallet initialization is a one-time operation per user. Once initialized, your wallet is ready to receive deposits and fund card transactions.

Complete Onboarding Flow (Code Example)

The following example shows the full onboarding sequence as a series of API calls:
curl -X POST 'https://crypto-api.yativo.com/api/yativo-card/onboard' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
    "email": "user@example.com",
    "first_name": "Jane",
    "last_name": "Doe"
  }'
# Save yativo_card_id from response

What Happens Next?

After successful wallet initialization, you are ready to:

Create a Virtual Card

Issue a virtual card instantly for online spending.

Fund Your Wallet

Send USDC on Solana to your card wallet funding address.