Skip to main content

Cardholder

You can create cardholders, which are authorized representatives of your business that can be issued cards.

Create Cardholderโ€‹

POST {{baseUrl}}/zoqq/api/v1/card/cardholder

Description

Cardholders are authorized representatives of your business. Depending on the program, one or both of the following cardholder types are permitted: INDIVIDUAL and DELEGATE.

INDIVIDUAL : A cardholder who is associated with a named individual that is a representative of your business. Can be associated with a personalized or non-personalized card.
DELEGATE : A cardholder assigned only to non-personalized cards. They act as authorized users on behalf of your business. Cards issued to delegate cardholders will be associated with the name of your business.

Creating a cardholder requires passing a name screening process, which involves submitting basic information about the cardholder.

๐Ÿ“ฉ Request Headers

x-api-key string required

Shared X-API key by Zoqq

x-product-id string required

Shared Product ID by Zoqq

x-request-id string required

Idempotency key for request tracking

x-user-id string required

User identification key

agent-code string

Shared Agent Code

subagent-code string

Shared Sub Agent Code

Content-Type string required

Must be application/json

Authorization string required

Bearer access token

๐Ÿ“ฆ Request Body Parameters

email string required

Email address of the cardholder

mobile_number string required

Cardholder's mobile number

country_code string

Individual's nationality. (2-letter ISO 3166-2 country code)

individual object conditional

Details about the cardholder. Only relevant for individual cardholder type.

date_of_birth string required

Date of birth ((ISO 8601 date format: YYYY-MM-DD))

name object required

Full name of the Individual. Only characters in English are supported

title string

Optional title of cardholder

first_name string required

First name of cardholder

middle_name string

Middle name of cardholder

last_name string required

Last name of cardholder

address object required

Physical address of cardholder

city string required

City of address

country string required

Country code (2-letter ISO 3166-2) of address

line1 string required

Address line 1

state string required

Address state

postcode string required

Address postal code

employers array

Information of the individual's employers

business_identifiers array

Local business registration number i.e. an official signal of identification for the business

country_code string

Country code (2-letter ISO 3166-2 code).

number string

Local business registration number

type string

Type of business registration number

business_name string

Name of the employer

postal_address object conditional

Optional postal address of the cardholder. Only required if different to address and physical cards are to be issued.

city string required

City of address

country string required

Country code (2-letter ISO 3166-2) of address

line1 string required

Address line 1

state string required

Address state

postcode string required

Address postal code

type string required

Type of cardholder. Allowed value: INDIVIDUAL, DELEGATE

created_by string required

Creator identifier

Request Example

curl --location --request POST \
--url '{{baseUrl}}/zoqq/api/v1/card/cardholder' \
--header 'x-api-key: {{Shared X-API key By Zoqq}}' \
--header 'x-product-id: {{Shared ProductID By Zoqq}}' \
--header 'x-request-id: {{IdempotencyKey}}' \
--header 'x-user-id: {{UserID}}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{AccessToken}}'
--data-raw '{
"email": "testapiair78@yopmail.com",
"mobile_number": "86689006",
"individual": {
"date_of_birth": "1990-01-01",
"name": {
"title": "Mr",
"first_name": "John",
"middle_name":"P",
"last_name": "Doe"
},
"address": {
"city": "New York",
"country": "SG",
"line1": "123 5th Avenue",
"state": "NY",
"postcode": "10001"
}
},
"postal_address": {
"city": "New York",
"country": "SG",
"line1": "123 5th Avenue",
"state": "NY",
"postcode": "10001"
},
"type": "INDIVIDUAL",
"created_by": "test"
}'

Response Example

{
"status": "success",
"message": "Cardholder created successfully.",
"code": 200,
"data": [
{
"id": "cardholder-id"
}
]
}

Get All Cardholdersโ€‹

GET {{baseUrl}}/zoqq/api/v1/card/cardholder

Description

This API returns a list of all cardholders, allowing you to view and manage cardholder details easily.

๐Ÿ“ฉ Request Headers

x-api-key string required

Shared X-API key by Zoqq

x-product-id string required

Shared Product ID by Zoqq

x-request-id string required

Idempotency key for request tracking

x-user-id string required

User identification key

Content-Type string required

Must be application/json

Authorization string required

Bearer access token

๐Ÿ” Query Parameters

status string

Cardholder status filter. Allowed values: PENDING, READY

page_num integer

Page number for pagination

page_size integer

Number of items per page

Request Example

curl --location --request GET \
--url '{{baseUrl}}/zoqq/api/v1/card/cardholder' \
--header 'x-api-key: {{Shared X-API key By Zoqq}}' \
--header 'x-product-id: {{Shared ProductID By Zoqq}}' \
--header 'x-request-id: {{IdempotencyKey}}' \
--header 'x-user-id: {{UserID}}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{AccessToken}}'

Response Example

{
"status": "success",
"message": "Cardholder fetched successfully",
"code": 200,
"data": [
{
"id": "cardholder-id",
"email": "demo@yopmail.com",
"status": "READY",
"individual": null,
"mobile_number": "91-95053039",
"postal_address": null,
"type": "DELEGATE",
"created_by": "test",
"created_at": "2025-07-10T05:42:45"
},
{
"id": "cardholder-id",
"email": "testapiair99@yopmail.com",
"status": "PENDING",
"individual": {
"date_of_birth": "1990-01-01",
"identification": {
"country": "US",
"expiry_date": "2030-12-31",
"number": "ID123456789",
"type": "PASSPORT"
},
"name": {
"title": "miss",
"first_name": "John",
"middle_name": "singh",
"last_name": "Doe"
},
"address": {
"city": "New York",
"country": "SG",
"line1": "123 5th Avenue",
"state": "NY",
"postcode": "10001"
}
},
"mobile_number": "1234567890",
"postal_address": {
"city": "New York",
"country": "SG",
"line1": "123 5th Avenue",
"state": "NY",
"postcode": "10001"
},
"type": "INDIVIDUAL",
"created_by": "test",
"created_at": "2025-08-08T06:03:12"
}
]
}

Get Cardholder Detailsโ€‹

GET {{baseUrl}}/zoqq/api/v1/card/cardholder

Description

This API is used to retrieve the details of a specific cardholder. You must provide the Cardholder ID as a query parameter to identify the cardholder.

๐Ÿ“ฉ Request Headers

x-api-key string required

Shared X-API key by Zoqq

x-product-id string required

Shared Product ID by Zoqq

x-request-id string required

Idempotency key for request tracking

x-user-id string required

User identification key

Content-Type string required

Must be application/json

Authorization string required

Bearer access token

๐Ÿ” Query Parameters

id string required

Unique identifier for cardholder

Request Example

curl --location --request GET \
--url '{{baseUrl}}/zoqq/api/v1/card/cardholder?id={{CardholderID}}' \
--header 'x-api-key: {{Shared X-API key By Zoqq}}' \
--header 'x-product-id: {{Shared ProductID By Zoqq}}' \
--header 'x-request-id: {{IdempotencyKey}}' \
--header 'x-user-id: {{UserID}}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{AccessToken}}'

Response Example

{
"status": "success",
"message": "Cardholder fetched successfully",
"code": 200,
"data": [
{
"id": "cardholder-id",
"email": "demo@yopmail.com",
"status": "READY",
"individual": null,
"mobile_number": "91-95053039",
"postal_address": null,
"type": "DELEGATE",
"created_by": "test",
"created_at": "2025-07-10T05:42:45"
}
]
}

Update Cardholderโ€‹

PATCH {{baseUrl}}/zoqq/api/v1/card/cardholder

Description

This endpoint updates card holder information including physical address, postal address, and contact details.Update a cardholder with selected information. All fields are optional, and only those provided will be updated. If a composite object, e.g. name is provided, then all of its child fields must be provided and valid. Updating the cardholder may re-trigger the name screening process.

๐Ÿ“ฉ Request Headers

x-api-key string required

Shared X-API key by Zoqq

x-product-id string required

Shared Product ID by Zoqq

x-request-id string required

Idempotency key for request tracking

x-user-id string required

User identification key

Content-Type string required

Must be application/json

Authorization string required

Bearer access token

๐Ÿ“ฆ Request Body Parameters

mobile_number string

Cardholder's mobile number

country_code string

Individual's nationality. (2-letter ISO 3166-2 country code)

individual object conditional

Details about the cardholder. Only relevant for individual cardholder type.

address object required

Physical address of cardholder

city string required

City of address

country string required

Country code (2-letter ISO 3166-2 ) of address

line1 string required

Address line 1

state string required

Address state

postcode string required

Address postal code

postal_address object conditional

Optional postal address of the cardholder. Only required if different to address and physical cards are to be issued.

city string required

City of address

country string required

Country code (2-letter ISO 3166-2 ) of address

line1 string required

Address line 1

state string required

Address state

postcode string required

Address postal code

updated_by string required

User updating the details

๐Ÿ” Query Parameters

id string required

Unique identifier for cardholder

Request Example

curl --location --request PATCH \
--url '{{baseUrl}}/zoqq/api/v1/card/cardholder?id={{CardholderID}}' \
--header 'x-api-key: {{Shared X-API key By Zoqq}}' \
--header 'x-product-id: {{Shared ProductID By Zoqq}}' \
--header 'x-request-id: {{IdempotencyKey}}' \
--header 'x-user-id: {{UserID}}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{AccessToken}}'
--data '{
"individual": {
"address": {
"city": "Austin",
"country": "US",
"line1": "1234 Elm Street",
"state": "TX",
"postcode": "94932"
}
},
"postal_address": {
"city": "Los Angeles",
"country": "US",
"line1": "5678 Oak Avenue",
"state": "CA",
"postcode": "94932"
},
"updated_by": "user"
}'

Response Example

{
"status": "success",
"message": "Cardholder updated successfully.",
"code": 200
}

Delete Cardholderโ€‹

DELETE {{baseUrl}}/zoqq/api/v1/card/cardholder

Description

Permanently deletes a specified cardholder from the system. This action is irreversible.

๐Ÿ“ฉ Request Headers

x-api-key string required

Shared X-API key by Zoqq

x-product-id string required

Shared Product ID by Zoqq

x-request-id string required

Idempotency key for request tracking

x-user-id string required

User identification key

Content-Type string required

Must be application/json

Authorization string required

Bearer access token

๐Ÿ” Query Parameters

id string required

Unique Identifier for cardholder

Request Example

curl --location --request DELETE \
--url '{{baseUrl}}/zoqq/api/v1/card/cardholder?id={{CardholderID}}' \
--header 'x-api-key: {{Shared X-API key By Zoqq}}' \
--header 'x-product-id: {{Shared ProductID By Zoqq}}' \
--header 'x-request-id: {{IdempotencyKey}}' \
--header 'x-user-id: {{UserID}}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{AccessToken}}'

Response Example

{
"status": "success",
"message": "Cardholder deleted successfully.",
"code": 200
}