List cards
/public/v1/erp/cardsRetrieve the card inventory with its issuance state and which spend controls are active.
Returns a paginated list of cards, newest first, with the cardholder, the funding account, the cost-allocation segments, and a set of boolean flags showing which control families are switched on: purchase limits, transaction limits, country limits, merchant-category limits, ATM withdrawal and low-balance alerts. The flags tell you whether a control is active; call the single-card endpoint for the actual values.
Card numbers are always masked (**** **** **** 1234); the full PAN is never returned.
Query parameters
pageintegerPage number, 1-based. Default
1Example
1page_sizeintegerRecords per page. Default
20Example
20statusstringactive,inactive,suspended,terminated,draft,cancelledcard_typestringvirtualorphysicalaccount_typestringreloadable(one card per account) orpool(shared account)pool_account_idstringCards funded by this account
user_idstringCards held by this user profile
last4stringExactly four digits
issued_time_fromdateIssuance window,
YYYY-MM-DD. Either may be sent aloneissued_time_todateIssuance window,
YYYY-MM-DD. Either may be sent alonecreated_time_fromdateCreation window,
YYYY-MM-DD. Either may be sent alonecreated_time_todateCreation window,
YYYY-MM-DD. Either may be sent alone
Response
Array of cards, plus pagination.
| Field | Type | Description |
|---|---|---|
id | string | Card identifier (CA…) |
card_nickname | string | Card name |
status | string | Active, Inactive, Suspended, Terminated, Draft, Cancelled |
card_type | string | Virtual or Physical |
masked_card_number | string | **** **** **** 1234 |
cardholder | object | { name, email, employee_id } |
company_name | string | Company the card belongs to |
account_external_id | string | Funding account identifier |
account_type | string | reloadable or pool |
card_currency | string | Card currency (ISO 4217) |
allowed_max_balance | number | Maximum balance the card may hold |
topup_type | string | How the card is funded |
float_management_enabled | boolean | Whether float management applies |
card_replaced | boolean | Whether this card replaced an earlier one |
purchase_limits_active | boolean | A purchase spend limit is in force |
transaction_limits_active | boolean | A per-transaction count limit is in force |
country_limits_active | boolean | Country restrictions are in force |
category_limits_active | boolean | Merchant-category restrictions are in force |
atm_withdrawal_allowed | boolean | ATM withdrawals are permitted |
low_balance_notification_active | boolean | Low-balance alerting is on |
low_balance_notification_amount | number | Threshold that triggers the alert |
segments | array | Standard cost allocation: Location, Project, Division, Department |
custom_segments | array | Company-defined cost allocation |
issued_at, activated_at, terminated_at, created_at | string | ISO 8601 timestamps |
Response schema from the OpenAPI document
| Field | Type | Description |
|---|---|---|
status_code | integer | |
success | boolean | |
data | object[] | |
id | string | |
card_nickname | string | |
company_name | string | |
status | string | |
card_type | string | |
masked_card_number | string | |
account_external_id | string | |
account_type | string | |
card_currency | string | |
allowed_max_balance | string | |
float_management_enabled | boolean | |
topup_type | string | |
card_replaced | boolean | |
transaction_limits_active | boolean | |
purchase_limits_active | boolean | |
country_limits_active | boolean | |
category_limits_active | boolean | |
atm_withdrawal_allowed | boolean | |
low_balance_notification_active | boolean | |
low_balance_notification_amount | string | |
terminated_at | string | |
activated_at | string | |
issued_at | string | |
created_at | string | |
cardholder | object | |
name | string | |
email | string | |
employee_id | string | |
segments | object[] | |
id | string | |
name | string | |
label | string | |
code | string | |
erp_internal_id | string | |
erp_code | string | |
custom_segments | object[] | |
id | string | |
name | string | |
label | string | |
code | string | |
erp_internal_id | string | |
erp_code | string | |
meta | object | |
request_id | string | |
timestamp | string | |
pagination | object | |
page | integer | |
page_size | integer | |
total_pages | integer | |
total_records | integer | |
has_next | boolean | |
has_previous | boolean |
Errors
400 (unrecognised account_type, last4 not four digits, inverted date range), 401,
403, 404.
401Unauthorized - missing or invalid Bearer token
Every error carries an errors[] array and a meta.request_id. See Errors for the full envelope.