Skip to main content
GET
/
cardholders
/
{id}
Get a cardholder
curl --request GET \
  --url https://api.fyatu.com/api/v3.20/cardholders/{id} \
  --header 'Authorization: Bearer <token>'
{
  "success": true,
  "status": 200,
  "message": "Cardholder retrieved",
  "data": {
    "cardholderId": "chl_01HXYZ1234ABCDEF5678",
    "firstName": "John",
    "lastName": "Smith",
    "email": "john.smith@example.com",
    "phone": "+12025551234",
    "dateOfBirth": "1990-05-15",
    "nationality": "US",
    "address": {
      "address": "123 Main Street, Apt 4B",
      "city": "Newark",
      "country": "US",
      "state": "Delaware",
      "postalCode": "19701"
    },
    "kycDocument": {
      "documentType": "PASSPORT",
      "documentNumber": "AB123456",
      "issuingCountry": "US",
      "frontUrl": "https://storage.example.com/doc-front.jpg",
      "backUrl": null,
      "selfieUrl": "https://storage.example.com/selfie.jpg"
    },
    "externalId": "usr_123456",
    "metadata": {
      "plan": "premium"
    },
    "status": "ACTIVE",
    "kycStatus": "APPROVED",
    "kycVerifiedAt": "2026-05-10T14:23:00Z",
    "kycRejectionReason": null,
    "totalCards": 2,
    "suspendedAt": null,
    "terminatedAt": null,
    "createdAt": "2026-05-01T09:00:00Z",
    "updatedAt": "2026-05-10T14:23:00Z"
  },
  "meta": {
    "requestId": "req_a1b2c3d4e5f6a7b8c9d0e1f2",
    "platform": "Fyatu CaaS",
    "timestamp": "2026-05-22T15:00:00Z"
  }
}

Overview

Returns the full profile of a single cardholder, including address, KYC status, and spend statistics. The kycRejectionReason field is only present when kycStatus is REJECTED. The terminatedAt field is only present when status is TERMINATED. Both APPROVED and WAIVED cardholders can be issued cards.

Path Parameters

ParameterTypeDescription
idstringThe cardholder ID (prefix chl_)

Example

curl https://api.fyatu.com/api/v3.20/cardholders/chl_01HXYZ1234ABCDEF5678 \
  -H "Authorization: Bearer $FYATU_API_KEY"

Success Response (200)

{
  "success": true,
  "status": 200,
  "message": "Cardholder retrieved",
  "data": {
    "cardholderId":  "chl_01HXYZ1234ABCDEF5678",
    "programId":     "prg_01HXYZ9876ABCDEF0000",
    "firstName":     "John",
    "lastName":      "Smith",
    "email":         "john.smith@example.com",
    "phone":         "+12025551234",
    "dateOfBirth":   "1990-05-15",
    "nationality":   "US",
    "address": {
      "line1":      "123 Main Street",
      "line2":      "Apt 4B",
      "city":       "Newark",
      "state":      "Delaware",
      "postalCode": "19701",
      "country":    "US"
    },
    "externalId":    "usr_123456",
    "metadata":      { "plan": "premium" },
    "status":        "ACTIVE",
    "kycStatus":     "APPROVED",
    "kycVerifiedAt": "2026-05-01T09:05:00Z",
    "totalCards":    2,
    "totalSpendCents": 125000,
    "suspendedAt":   null,
    "createdAt":     "2026-05-01T09:00:00Z",
    "updatedAt":     "2026-05-01T09:05:00Z"
  },
  "meta": {
    "requestId": "req_01HXY123456ABCDEF",
    "platform": "Fyatu CaaS",
    "timestamp": "2026-05-22T10:00:00Z"
  }
}

Conditional Fields

FieldPresent when
kycRejectionReasonkycStatus is REJECTED
kycVerifiedAtkycStatus is APPROVED; null for PENDING, WAIVED, and REJECTED
terminatedAtstatus is TERMINATED

KYC Waived Example

On MINIMAL programs, kycStatus is WAIVED immediately after creation — the cardholder has not been identity-verified but is allowed to hold cards. No kycVerifiedAt is set.
{
  "success": true,
  "status": 200,
  "message": "Cardholder retrieved",
  "data": {
    "cardholderId":  "chl_01HXYZ1234ABCDEF5678",
    "kycStatus":     "WAIVED",
    "kycVerifiedAt": null
  },
  "meta": { "requestId": "req_01HXY123456ABCDEF", "platform": "Fyatu CaaS", "timestamp": "2026-05-25T10:00:00Z" }
}

KYC Rejected Example

{
  "success": true,
  "status": 200,
  "message": "Cardholder retrieved",
  "data": {
    "cardholderId":      "chl_01HXYZ1234ABCDEF5678",
    "kycStatus":         "REJECTED",
    "kycRejectionReason": "Document expired or unreadable",
    "kycVerifiedAt":     "2026-05-01T09:05:00Z"
  },
  "meta": { "requestId": "req_01HXY123456ABCDEF", "platform": "Fyatu CaaS", "timestamp": "2026-05-22T10:00:00Z" }
}

Error Codes

CodeHTTPCause
CARDHOLDER_NOT_FOUND404Cardholder does not exist or belongs to another business
INSUFFICIENT_SCOPE403Key lacks cardholders:read scope

Authorizations

Authorization
string
header
required

API key from the FYATU CaaS portal. Pass as Authorization: Bearer <key>.

Path Parameters

id
string
required

Response

Cardholder retrieved

success
boolean
Example:

true

status
integer
Example:

200

message
string
Example:

"Cardholder retrieved"

data
object
meta
object