Documentation Index Fetch the complete documentation index at: https://docs.fyatu.com/llms.txt
Use this file to discover all available pages before exploring further.
Quick Start Guide
This guide walks you through your first V3.20 API call. By the end you’ll have:
Authenticated with your API credentials
Listed your card programs and products
Created a cardholder
Issued a virtual card using a product ID
Prerequisites
Verify Your Identity (KYC)
Submit identity documents to verify your account
Upgrade to Business
Upgrade your account to Business from the dashboard
Set Up a Card Program
Create a Card Program in your Business Dashboard. Add at least one Card Product with your desired settings (brand, currency, limits, 3DS).
Fund Your Wallet
Deposit USDT to your business wallet (minimum $10 to get started)
Step 1: Get Your API Credentials
Log into your Business Dashboard , then go to Developer → API Credentials .
Credential Description Example Business ID Your business’s unique identifier N1S0W3Q8P0V1E5M6Q4R3D8Z9Secret Key Your business API secret (shown once) sk_biz_a1b2c3d4e5f6...
Your secretKey is shown only once when generated. Store it securely. If lost, generate a new one — the old key is immediately revoked.
Step 2: Get an Access Token
Exchange your API credentials for a JWT token. Request the scopes your integration needs.
curl -X POST "https://api.fyatu.com/api/v3.20/auth/token" \
-H "Content-Type: application/json" \
-d '{
"businessId": "N1S0W3Q8P0V1E5M6Q4R3D8Z9",
"secretKey": "sk_biz_your_secret_key",
"grantType": "client_credentials",
"scopes": ["cards:read", "cards:write", "cardholders:read", "cardholders:write", "programs:read"]
}'
{
"success" : true ,
"status" : 200 ,
"data" : {
"accessToken" : "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9..." ,
"tokenType" : "Bearer" ,
"expiresIn" : 86400 ,
"expiresAt" : "2026-05-01T10:30:00+00:00" ,
"scopes" : [ "cards:read" , "cards:write" , "cardholders:read" , "cardholders:write" , "programs:read" ]
}
}
Your token is valid for 24 hours . Use it in Authorization: Bearer {token} headers.
Step 3: Browse Your Card Programs & Products
Discover which programs and products are available to your business:
curl -X GET "https://api.fyatu.com/api/v3.20/programs" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"
{
"success" : true ,
"data" : {
"programs" : [
{
"programId" : "PGM1A2B3C4D5E6" ,
"name" : "Global Issuing Program" ,
"status" : "ACTIVE" ,
"productCount" : 2
}
]
}
}
Get the products for your program:
curl -X GET "https://api.fyatu.com/api/v3.20/programs/PGM1A2B3C4D5E6/products" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"
{
"success" : true ,
"data" : {
"products" : [
{
"productId" : "PRDX1Y2Z3A4B5C" ,
"name" : "Visa USD Standard" ,
"scheme" : "VISA" ,
"currency" : "USD" ,
"type" : "VIRTUAL" ,
"is3DSEnabled" : true ,
"isTokenizationEnabled" : true ,
"status" : "ACTIVE"
},
{
"productId" : "PRDM9N8O7P6Q5R" ,
"name" : "Mastercard EUR Premium" ,
"scheme" : "MASTERCARD" ,
"currency" : "EUR" ,
"type" : "VIRTUAL" ,
"is3DSEnabled" : true ,
"isTokenizationEnabled" : true ,
"status" : "ACTIVE"
}
]
}
}
Note the productId values — you’ll need them for card issuance.
Step 4: Create a Cardholder
Cardholders are your end users who will hold cards. KYC is not required to create a cardholder, but is required before issuing a card.
curl -X POST "https://api.fyatu.com/api/v3.20/cardholders" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"externalId": "USR-12345",
"firstName": "John",
"lastName": "Smith",
"email": "johnsmith@example.com",
"phone": "+12025551234",
"dateOfBirth": "1990-05-15",
"gender": "MALE",
"address": "123 Main Street, Apt 4B",
"city": "Newark",
"state": "Delaware",
"country": "US",
"zipCode": "000000"
}'
{
"success" : true ,
"status" : 201 ,
"message" : "Cardholder created successfully" ,
"data" : {
"id" : "CH-ABC123DEF456" ,
"externalId" : "USR-12345" ,
"firstName" : "John" ,
"lastName" : "Smith" ,
"status" : "ACTIVE" ,
"kycStatus" : "UNSUBMITTED" ,
"createdAt" : "2026-04-30T10:30:00+00:00"
}
}
Step 5: Issue a Virtual Card
Use the productId from Step 3 to issue a card. All settings (scheme, currency, limits, 3DS) are resolved from the product automatically.
curl -X POST "https://api.fyatu.com/api/v3.20/cards" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"cardholderId": "CH-ABC123DEF456",
"nameOnCard": "JOHN SMITH",
"amount": 100.00,
"productId": "PRDX1Y2Z3A4B5C"
}'
{
"success" : true ,
"status" : 201 ,
"message" : "Card created successfully" ,
"data" : {
"id" : "crd_9x8y7z6w5v4u3t2s" ,
"cardholderId" : "CH-ABC123DEF456" ,
"productId" : "PRDX1Y2Z3A4B5C" ,
"programId" : "PGM1A2B3C4D5E6" ,
"nameOnCard" : "JOHN SMITH" ,
"last4" : "4829" ,
"maskedNumber" : "****4829" ,
"expiryDate" : "04/2031" ,
"scheme" : "VISA" ,
"currency" : "USD" ,
"status" : "ACTIVE" ,
"initialBalance" : 100.00 ,
"createdAt" : "2026-04-30T10:35:00+00:00"
}
}
Card details (full number, CVV) are returned only on the GET /cards/{cardId} endpoint. Handle them securely and never log or expose them.
What’s Next?
Authentication Deep Dive Scopes, token refresh, and best practices
Card Programs Browse your card programs and products
Error Handling Handle API errors gracefully
Webhooks Receive real-time card and cardholder events