kycRequirements before calling Submit Applicant - it lists the requirement codes the productapplicableFor for whether the product is available to individuals,data)| Field | Type | Description |
|---|---|---|
productId | string (uuid) | Product identifier - use it on the applicant, onboarding, and status calls |
name | string | Display name |
code | string | Internal product code |
organization | string, nullable | Scheme / association (e.g. Visa, SEPA) |
type | string, nullable | Form factor / instrument type (e.g. Physical, Virtual) |
country | string, nullable | Issuing country |
bin | string, nullable | Card BIN - card products only |
currency | string, nullable | Primary currency |
status | string | Product status - Active |
allowMultipleCards | boolean | Whether a customer may hold more than one |
needProductCardHolder | boolean | Indicates whether a cardholder is required. If true, the Cardholder Create API must be called. |
kycRequired | boolean | Whether KYC is required before issuing |
applicableFor | string, nullable | Customer types this product can be issued to - individual, business, or individual,business |
category | string, nullable | Consumption/usage category |
description | string, nullable | Product description |
fundingSource | string, nullable | How the product is funded |
managedType | string, nullable | Management model |
reviewTime | string, nullable | Expected review turnaround |
envelopeRequired | boolean | Whether an envelope number is required |
fees | object, nullable | issuingFee, maintenanceFee, freightFee, rechargeMinFee, rechargeMaxFee, atmWithdrawalFee, atmBalanceInquiryFee, cardCancellationFee, transactionFee, nonEeaConsumptionFee, firstRechargeAmount |
limits | object, nullable | minLimit, maxLimit, accountBalanceLimit, dailyRechargeLimit, monthlyRechargeLimit, dailyPaymentLimit, atmDailyWithdrawalLimit, spendingLimit |
recharge | object, nullable | currency, minAmount, maxAmount, minFee, maxFee |
deposit | object, nullable | requiredForActivation, minAmount, maxAmount, balanceRetention |
operations | array/object, nullable | Operation flags for the product ({ Name, IsEnabled } entries) |
supportedPlatforms | array of string, nullable | Platforms the product is offered on |
kycRequirements | array, nullable | [{ accountType, requirements[] }] - requirement codes per customer type |
metadata | object, nullable | Additional product metadata |
appName | string | Product type - Cards, Banks, Wallets, Exchange, Payments |
fiatCurrencies | string, nullable | Comma-separated fiat currencies the product supports |
fees, limits, recharge, and deposit are null when the product has no fee schedule configured.curl --location '/api/v1/products/b1f3c7a2-6c4e-4d91-9f2a-123456789abc' \
--header 'X-API-Key;' \
--header 'X-Signature;' \
--header 'X-Timestamp;' \
--header 'X-Nonce;' \
--header 'X-Body-Hash;' \
--header 'X-Idempotency-Key;'{
"data": {
"productId": "b1f3c7a2-6c4e-4d91-9f2a-123456789abc",
"name": "Visa Platinum Prepaid",
"code": "VISA_PLAT_PP",
"organization": "Visa",
"type": "Physical",
"country": "GB",
"bin": "489537",
"currency": "GBP",
"status": "Active",
"allowMultipleCards": true,
"needProductCardHolder": false,
"kycRequired": true,
"applicableFor": "individual,business",
"category": "Consumption",
"description": "Physical Visa prepaid card with ATM access and worldwide acceptance.",
"fundingSource": "Prepaid",
"managedType": "Managed",
"reviewTime": "1-2 business days",
"envelopeRequired": true,
"fees": {
"issuingFee": 15,
"maintenanceFee": 2.5,
"freightFee": 8,
"rechargeMinFee": 1,
"rechargeMaxFee": 25,
"atmWithdrawalFee": 2.5,
"atmBalanceInquiryFee": 0.5,
"cardCancellationFee": 10,
"transactionFee": 0.35,
"nonEeaConsumptionFee": 1.75,
"firstRechargeAmount": 50
},
"limits": {
"minLimit": 10,
"maxLimit": 10000,
"accountBalanceLimit": 25000,
"dailyRechargeLimit": 5000,
"monthlyRechargeLimit": 30000,
"dailyPaymentLimit": 3000,
"atmDailyWithdrawalLimit": 500,
"spendingLimit": 10000
},
"recharge": {
"currency": "GBP",
"minAmount": 10,
"maxAmount": 5000,
"minFee": 1,
"maxFee": 25
},
"deposit": {
"requiredForActivation": true,
"minAmount": 50,
"maxAmount": 25000,
"balanceRetention": 0
},
"operations": [
{
"Name": "NeedPhotoForActiveCard",
"IsEnabled": true
},
{
"Name": "AllowPinChange",
"IsEnabled": true
}
],
"supportedPlatforms": [
"Web",
"iOS",
"Android"
],
"kycRequirements": [
{
"accountType": "individual",
"requirements": [
"FullName",
"Comms",
"FullAddress",
"IdDocument",
"Selfie"
]
},
{
"accountType": "business",
"requirements": [
"CompanyDetails",
"CompanyAddress",
"Directors",
"UBOs",
"IncorporationCertificate"
]
}
],
"metadata": {
"provider": "Cardholder",
"programId": "PRG-1024"
},
"appName": "Cards",
"fiatCurrencies": "AED,EUR,GBP,USD"
},
"requestId": "9f2c4b6e8a1d4f0cb7e35a91d2c46f80",
"timestamp": "2026-08-22T10:30:00.123Z"
}