Virtual Cards

Bitnob’s Virtual Cards API allows you to programmatically issue and manage USD-denominated virtual debit cards for users. These cards can be used for online purchases, subscriptions, and other payments just like physical debit cards.

Virtual Card API Endpoints

Register Card User

You need to onboard a card user before issuing cards for them.

Register Card User

Register Card User Parameters
1
customerReferencestring

A unique identifier for a previously registered user in your system. It could be an email address or user id.

2
idNumberstringRequired

The government-issued ID number (e.g., National ID, Passport number) provided by the customer for KYC verification.

3
idTypestringRequired

Type of identification document, such as BVN, NIN, or PASSPORT, indicating which scheme issued the ID number.

4
firstNamestringRequired

Customer’s given name, used for personalization and identity matching.

5
lastNamestringRequired

Customer’s family name or surname, used alongside firstName for full legal name.

6
countrystringRequired

Name of the customer’s country of residence, used to determine regional compliance rules.

7
phoneNumberstringRequired

Customer’s mobile or landline phone number for two-factor authentication and notifications.

8
citystringRequired

City of the customer’s primary address, used for geographic profiling and correspondence.

9
statestringRequired

State or region of the customer’s address, used for location validation and regulatory compliance.

10
zipCodestringRequired

Postal code of the customer’s address, used for mailing and region-specific services.

11
line1stringRequired

First line of the customer’s street address (e.g., house number and street name).

12
houseNamestringRequired

The name or number of the building or residence, if applicable (e.g., apartment name).

13
bvnstringRequired

Bank Verification Number; required when the customer is a Nigerian citizen for additional verification.

14
userPhotostringRequired

URL or base64-encoded image of the customer’s face (selfie), used for photo-ID matching.

15
dateOfBirthdateConditional (Required if Ghanaian)

Customer’s date of birth in YYYY-MM-DD format; required specifically for Ghanaian customers to meet local KYC standards.

16
idImagestringRequired

URL or base64-encoded scan/photo of the customer’s ID document (e.g., passport, NIN card).

Body Parameters

Register Card User Request
1
urlstring

The full API endpoint to which the request should be sent.

2
acceptheader

Specifies the expected response format. Usually set to 'application/json'.

3
content-typeheader

Indicates the format of the request body. Should be 'application/json' for this endpoint.

Register Card User

Update Card User

You can update card user information

Register Card User

Update Card User Body Parameters
1
customerReferencestring

A unique identifier for a previously registered user in your system. It could be an email address or user id.

2
idNumberstringRequired

The government-issued ID number (e.g., National ID, Passport number) provided by the customer for KYC verification.

3
idTypestringRequired

Type of identification document, such as BVN, NIN, or PASSPORT, indicating which scheme issued the ID number.

4
firstNamestringRequired

Customer’s given name, used for personalization and identity matching.

5
lastNamestringRequired

Customer’s family name or surname, used alongside firstName for full legal name.

6
countrystringRequired

Name of the customer’s country of residence, used to determine regional compliance rules.

7
phoneNumberstringRequired

Customer’s mobile or landline phone number for two-factor authentication and notifications.

8
citystringRequired

City of the customer’s primary address, used for geographic profiling and correspondence.

9
statestringRequired

State or region of the customer’s address, used for location validation and regulatory compliance.

10
zipCodestringRequired

Postal code of the customer’s address, used for mailing and region-specific services.

11
line1stringRequired

First line of the customer’s street address (e.g., house number and street name).

12
houseNamestringRequired

The name or number of the building or residence, if applicable (e.g., apartment name).

13
bvnstringRequired

Bank Verification Number; required when the customer is a Nigerian citizen for additional verification.

14
userPhotostringRequired

URL or base64-encoded image of the customer’s face (selfie), used for photo-ID matching.

15
dateOfBirthdateConditional (Required if Ghanaian)

Customer’s date of birth in YYYY-MM-DD format; required specifically for Ghanaian customers to meet local KYC standards.

16
idImagestringRequired

URL or base64-encoded scan/photo of the customer’s ID document (e.g., passport, NIN card).

Body Parameters

Update Card User Request
1
urlstring

The full API endpoint to which the request should be sent.

2
acceptheader

Specifies the expected response format. Usually set to 'application/json'.

3
content-typeheader

Indicates the format of the request body. Should be 'application/json' for this endpoint.

4
card_user_idstring (UUID)Required

A unique identifier for the card user. Required when updating or retrieving user-specific virtual card details.

Update Card User

Create Card

create a new card for a customer

Create Card

Create Card Body Parameters

The following fields are used when creating a virtual card. Some fields are only required in sandbox mode or under certain conditions.

1
customerReferencestringRequired

A unique identifier for a previously registered user in your system. It could be an email address or user id.

2
cardBrandstringRequired (Visa only)

The brand of the card to be issued. Required only if you're creating a Visa card (e.g., 'VISA').

3
cardTypestringRequired

The type of virtual card to issue. Defaults to 'visa' if not specified.

4
referencestringRequired

A unique transaction reference for tracking and idempotency. Helps avoid duplicate card creation.

5
amountstringRequired

The initial funding amount for the virtual card in fiat currency (e.g., '100' for $100).

6
firstNamestringOptional (Sandbox only)

Customer’s first name. This is required only for sandbox environments to simulate a real user.

7
lastNamestringOptional (Sandbox only)

Customer’s last name. This is also only needed when using the sandbox environment.

Create Virtual Card

Create Card Request
1
urlstring

The full API endpoint to initiate the virtual card creation request.

2
acceptheader

Specifies the expected response format, usually set to 'application/json'.

3
content-typeheader

Indicates the format of the request body, should be 'application/json'.

Update Card User

Create Card Response
1
statusBoolean

Indicates if the card creation request was successfully initiated.

2
messageString

A description of the response, useful for confirming the result of the request.

3
idString (UUID)

The unique identifier for the newly created virtual card.

4
createdAtString (ISO 8601 Date)

The timestamp indicating when the card creation was initiated.

5
updatedAtString (ISO 8601 Date)

The timestamp of the most recent update to the card creation record.

6
cardTypeString

The type of card issued, such as 'virtual'.

7
cardBrandString

The brand of the card, e.g., 'visa' or 'mastercard'.

8
cardUserIdString (UUID)

Unique ID of the user to whom the card belongs.

9
referenceString

The reference string used during card creation to track this request.

10
createdStatusString

Current status of the card creation process. For example: 'pending', 'successful', or 'failed'.

11
customerIdString or null

Represents the customer's ID in the system. May be null if not yet assigned.

Create Virtual Card Response

Top Up Card

Add funds to virtual card

Create Card

Top Up Card Body Parameters
1
cardBrandstringRequired

The amount (in cents) to add to the card. For example, 1000 represents $10.00.

2
cardIdstringRequired

The unique identifier of the virtual card to be topped up.

3
referencestringRequired

A unique reference string for tracking and idempotency of the transaction.

Top Up Virtual Card Request Body

Top Up Card Request
1
requestPOST

The HTTP method used to initiate the request to the API endpoint.

2
urlstring

The full API endpoint to initiate the virtual card creation request.

3
acceptheader

Specifies the expected response format, usually set to 'application/json'.

4
content-typeheader

Indicates the format of the request body, should be 'application/json'.

Update Card User

Top Up Card Responses
1
statusbooleanRequired

Indicates whether the top-up request was successfully acknowledged by the API. A value of `true` means the request was valid and is being processed.

2
messagestringRequired

Provides a human-readable description of the top-up response. This may include status updates such as 'top-up in progress' or error messages if the request failed.

3
idstring (UUID)Required

A unique identifier assigned to the top-up transaction. This ID can be used to track or query the status of the transaction in future API calls.

4
createdAtstring (ISO 8601)Required

The timestamp (in ISO 8601 format) when the top-up request was created. Useful for audit trails and chronological sorting.

5
updatedAtstring (ISO 8601)Required

The timestamp (in ISO 8601 format) representing the most recent update to the top-up transaction status, such as when it changed from 'pending' to 'success'.

6
amountnumberRequired

The value of the top-up in whole currency units (e.g., 10 for $10). Represents the user-visible amount being added to the card.

7
centAmountnumberRequired

The exact amount added to the card in the smallest currency unit (e.g., cents). Used to ensure financial precision, especially in calculations.

8
typestringRequired

Indicates the type of transaction. Typically this will be 'credit' for top-ups, meaning funds are being added to the card.

9
methodstringRequired

Specifies the method used for the transaction. In this context, 'topup' signifies that the card was funded via the top-up endpoint.

10
statusstringRequired

Represents the current lifecycle state of the transaction, such as 'pending', 'success', or 'failed'. Can be used to track progress in asynchronous flows.

11
currencystringRequired

The currency code (e.g., 'usd') in which the top-up was made. Ensures compatibility with cards that may support multiple currencies.

12
referencestringRequired

A custom identifier or metadata field passed during the top-up request. Useful for reconciling transactions in internal systems.

13
cardIdstring (UUID)Required

The unique identifier of the virtual card that received the top-up. Use this ID to look up card details or perform additional operations on the card.

Top Up Virtual Card - Response

List Cards

Get all virtual cards under your business

List Cards

List Cards Query Params
1
orderstring

Determines the sort direction of the returned results. Accepted values are typically (ascending) to show oldest entries first, or 'desc' (descending) to show the most recent entries first. Useful when sorting by timestamps or IDs.

2
pagestring

Specifies which page of results to retrieve from the paginated response. Use in combination with 'take' to navigate through large datasets. Page numbering typically starts at 1.

3
takestring

Defines the number of items to return per page. This helps limit the response size and improve performance. Common values include 10, 20, or 50 depending on the endpoint.

Query Parameters

List Cards Responses
1
statusboolean

Indicates whether the API request was successful. A value of true means the request was processed without error.

2
messagestring

A human-readable message summarizing the outcome of the API request, useful for debugging and user feedback.

3
idstring (UUID)

A unique identifier assigned to the virtual card. This ID is used for referencing the card in future API operations.

4
createdAtstring (ISO 8601)

The exact date and time when the virtual card was created, in ISO 8601 format (e.g., 2023-03-02T15:58:17.775Z).

5
updatedAtstring (ISO 8601)

The most recent date and time the virtual card was updated. This can reflect changes like status or metadata updates.

6
last4string

The last four digits of the virtual card number, typically used for card identification and verification.

7
cardNamestring

The name associated with the virtual card, often reflecting the user or purpose of the card.

8
cardTypestring

Indicates the type of card issued. For virtual cards, this will usually be 'virtual'.

9
cardBrandstring

The card network brand such as 'VISA' or 'MasterCard'. This determines where the card can be accepted.

10
expirystring (ISO 8601)

The full expiration timestamp of the card, including the date and time it will no longer be valid.

11
validstring

A formatted string showing the expiration month and year of the card (e.g., 12/2026).

12
statusstring

The operational state of the card such as 'active', 'frozen', or 'terminated'. Determines if the card can be used.

13
referencestring

A custom identifier or metadata string provided during card creation to help with internal tracking or reconciliation.

14
createdStatusstring

Shows the result of the card creation process. A value like 'success' or 'pending' reflects its state after issuance.

15
customerIdstring (UUID)

The UUID of the customer associated with the card. Useful for grouping cards under a single user identity.

16
pagenumber

The current page number in the paginated response. Useful when navigating large sets of cards.

17
takenumber

The number of items (cards) requested per page in a paginated API call.

18
itemCountnumber

The total number of card items returned on the current page.

19
pageCountnumber

The total number of pages available for the query, based on the take and itemCount values.

20
hasPreviousPageboolean

Boolean value indicating if there is a page before the current one. Useful for paginated navigation.

21
hasNextPageboolean

Boolean value indicating if there is another page of data after the current one.

Fetch All Virtual Cards - Response

List Card Users

Fetch all users who have been issued cards

List Cards

List Card Users Query Params
1
orderstringOptional

Defines the sorting order of the returned results. Accepts either 'asc' for ascending or 'desc' for descending. Defaults to 'asc'.

2
pagenumber (int32)Optional

Specifies the page number of the paginated results to return. Used for navigating through large datasets.

3
takestringOptional

The number of items to return per page. Useful for controlling pagination and reducing payload size.

Query Params Example

List Card Users Request
1
urlstringRequired

The full API endpoint to retrieve virtual card users.

2
acceptheaderRequired

Indicates the expected response format. Typically set to 'application/json'.

List Virtual Card Users

List Card Users Responses
1
statusboolean

Indicates whether the API call was successful. A value of 'true' means the request completed without errors.

2
messagestring

A descriptive message returned by the server that provides context about the result of the API call.

3
idstring (UUID)

A globally unique identifier assigned to each card user. Used for referencing the user in future requests.

4
createdAtstring (ISO 8601)

The exact date and time when the card user was registered in the system, in ISO 8601 format.

5
updatedAtstring (ISO 8601)

The most recent timestamp when any part of the card user’s information was modified.

6
customerReferencestring

A unique identifier for a previously registered user in your system. It could be an email address or user id.

7
firstNamestring

The user's given name used during registration or KYC verification.

8
lastNamestring

The user's surname or family name used in registration.

9
idNumberstring

The identification number from the submitted government-issued ID (e.g., passport or national ID).

10
idTypestring

The type of identification provided, such as PASSPORT, NIN, or BVN. Used for KYC compliance.

11
phoneNumberstring

The user’s mobile number, used for contact and sometimes for additional verification steps.

12
userPhotostring | null

URL pointing to the uploaded photo of the user. If not provided, it may be null.

13
customerIdstring (UUID)

The internal identifier linking the card user to their main customer profile in the system.

14
line1string

Primary line of the card user's residential address.

15
citystring

City where the card user lives. Used for location-based KYC checks and address verification.

16
statestring

State or region of residence, particularly relevant for countries with subdivisions like Nigeria or the US.

17
zipCodestring

Postal or ZIP code that corresponds to the card user’s residential area.

18
countrystring

The name of the country where the card user resides (e.g., Nigeria, Ghana).

19
bvnstring

Bank Verification Number — required for Nigerian users to validate their financial identity.

20
houseNumberstring

Descriptive part of the user’s address, such as house number, apartment name, or unit identifier.

21
idImagestring

URL linking to the image of the ID document provided during registration.

22
kycPassedboolean | null

Indicates whether the user has passed Know Your Customer (KYC) verification. If verification hasn’t occurred, this may be null.

23
pagenumber

The current page in the paginated list of results. Useful for navigating large datasets.

24
takenumber

The number of results returned per page. Controls the size of the dataset in paginated responses.

25
itemCountnumber

Total number of individual card users returned by the current query.

26
pageCountnumber

Total number of pages available based on the current pagination settings.

27
hasPreviousPageboolean

True if a page exists before the current one in the result set. Helpful for pagination navigation.

28
hasNextPageboolean

True if there are more pages available after the current page.

Virtual Card Users - Response

Fetch Card User

Fetch a card users

Get Virtual Card User by ID

Fetch Card User Path Params
1
card_user_idstringRequired

A unique identifier assigned to a registered card user during the virtual card onboarding process. This ID is required in the URL path to retrieve, update, or perform actions specific to that card user.

Get Virtual Card User by ID

Fetch Card User Request
1
urlstringRequired

The full API endpoint for the request, including the path parameter.

2
acceptheaderRequired

Specifies the expected response format. Usually set to 'application/json'.

Get Virtual Card User by ID

Fetch Card User Responses
1
statusboolean

Indicates whether the API request was processed successfully. A value of `true` confirms success, while `false` indicates a failure or error in the request.

2
messagestring

A human-readable message returned by the server describing the result of the operation, useful for debugging or displaying information to the end user.

3
idstring (UUID)

A universally unique identifier automatically generated for the virtual card user. This ID can be used to perform future operations on this user.

4
createdAtstring (ISO 8601)

The exact timestamp (in ISO 8601 format) when the card user was initially created in the system.

5
updatedAtstring (ISO 8601)

The latest timestamp indicating when any data related to this card user was last modified.

6
customerReferencestring

A unique identifier for a previously registered user in your system. It could be an email address or user id.

7
firstNamestring

The user's first name as provided during onboarding or card registration. Helps personalize interactions or identify users.

8
lastNamestring

The last name or surname of the card user. Combined with first name for full identification.

9
idNumberstring

The identification number associated with the user's KYC document (e.g., passport number, NIN). Used for verification and regulatory compliance.

10
idTypestring

Specifies the type of ID provided by the user (e.g., PASSPORT, NIN, BVN). Ensures proper parsing and validation during KYC checks.

11
phoneNumberstring

The mobile or contact phone number provided by the card user. May be used for OTPs or transaction alerts.

12
userPhotostring | null

A URL pointing to the user’s photo or selfie, often required as part of KYC validation. May be null if not provided.

13
customerIdstring (UUID)

An internal ID that uniquely represents the customer entity associated with this card user. Useful for linking multiple resources under one profile.

14
line1string

The primary line of the user’s residential or business address. Commonly contains house/flat number and street name.

15
citystring

The city portion of the user’s address. Helps in identifying the geographical location of the user.

16
statestring

The state, region, or province in which the user resides. Important for regional compliance and reporting.

17
zipCodestring

A postal or ZIP code that corresponds to the user's address. Used for geolocation and address validation.

18
countrystring

The country of residence of the card user. This affects regulatory rules, KYC requirements, and currency usage.

19
bvnstring

Bank Verification Number (specific to Nigerian users). Used for advanced identity verification through central banking systems.

20
houseNumberstring

Optional field representing the specific house name or number. Useful for granular delivery or location accuracy.

21
idImagestring

A URL pointing to the scanned or uploaded image of the user’s ID document. Required for document-based identity verification.

22
kycPassedboolean | null

Indicates whether the user has successfully passed the Know Your Customer (KYC) process. true means verified, false or null means not verified or still in review.

Get Virtual Card User by ID - Response

Fetch Card

Get details of a particular card

Get Virtual Card User by ID

Path Params
1
cardIdstring (UUID)Required

Path parameter representing the unique identifier of the virtual card you want to fetch details for.

Get Card Details by ID

Fetch Card User Request
1
requestGET

The HTTP method used for the request. In this case, 'GET'.

2
curlstring

A cURL command example to execute the API request from the terminal.

3
acceptstring

Specifies the expected response format. Typically set to 'application/json'.

Get Card Details by ID

Fetch Card User Response
1
statusboolean

Indicates whether the API call was successful. A value of true confirms successful retrieval, while false indicates an error or failure in the process.

2
messagestring

Human-readable summary of the API response, typically used for logging, debugging, or user display.

3
idstring (UUID)

A universally unique identifier representing the virtual card. Useful for referencing or fetching this specific card in future operations.

4
createdAtstring (ISO 8601)

Timestamp when the virtual card was initially created. Useful for tracking and auditing purposes.

5
updatedAtstring (ISO 8601)

Timestamp of the most recent update to the card's information or status.

6
balancenumber

The current monetary balance available on the virtual card. Expressed in the card's currency.

7
cardNumberstring

The full 16-digit number of the virtual card. Typically only visible in sandbox or secure environments due to PCI compliance.

8
last4string

The last four digits of the card number. Safe to display and commonly used for identifying cards without exposing full details.

9
cardNamestring

Name printed or associated with the card, often representing the cardholder or intended usage.

10
cardTypestring

Specifies the nature of the card. Expected value is 'virtual' to indicate it’s not a physical card.

11
cardBrandstring

Brand of the card provider such as 'Visa', 'Mastercard', etc. Determines network rules and acceptance.

12
cvv2string

3-digit security code located on the back of the card. Used for verification during online transactions. Only exposed in secure environments.

13
expirystring (ISO 8601)

Exact expiration date and time of the virtual card in ISO format. After this timestamp, the card becomes invalid.

14
statusstring

Indicates the current state of the card such as 'active', 'frozen', or 'terminated'. Determines usability.

15
cardUserIdstring (UUID)

The unique ID of the user who owns or was issued this virtual card. Used to reference user details.

16
validstring

Formatted expiration date in MM/YYYY. Useful for display in user interfaces and card validation forms.

17
referencestring

Client-provided unique identifier used to track or reference the card in internal systems or reconciliation processes.

18
createdStatusstring

Result of the card creation attempt. A value such as 'success' confirms it was issued correctly.

19
customerIdstring (UUID) | null

If available, this is the system-generated ID linking the card to a registered customer. May be null for test data or incomplete records.

20
customerReferencestring

Email address of the individual or entity the card is associated with. Helps in user identification and notification delivery.

21
citystring

City provided in the billing address. Often required for verification during transactions or card issuance.

22
streetstring

Full street portion of the billing address, including house number and street name.

23
countrystring

Full country name where the billing address is located. Used for regional compliance checks.

24
zipCodestring

Postal or ZIP code in the billing address. Used in verification and matching processes.

25
countryCodestring

Two-letter ISO country code (e.g., 'US' for United States). Useful for internationalization and compliance checks.

Get Card Details by ID - Response

List Transactions on Card

List all the transactions for a given card

Get Virtual Card User by ID

List Transactions on Card Path Params
1
card_idstringRequired

A path parameter representing the unique identifier of the virtual card. This ID is used to fetch detailed information about a specific virtual card.

Get Card by ID - Request

List Transactions on Card Query Params
1
orderstring

Specifies the sort order for the results. Accepted values are 'ASC' (ascending) or 'DESC' (descending). Defaults to 'ASC' if not provided.

2
pageint32

Specifies the current page of results for paginated responses. Used in combination with 'take' to navigate through result sets.

3
takestring

Defines the number of records to return per page. Helps control response size in paginated endpoints.

List Virtual Card Users with Query Params

List Transactions on Card Request
1
urlstring

The full API endpoint for the request, including the path parameter.

2
acceptstring

Specifies the expected response format. Must be set to 'application/json' to receive a JSON response.

Get Card Transactions by Card ID

List Transactions on Card Responses
1
statusboolean

Indicates whether the API request was successful.

2
messagestring

Describes the outcome of the transaction fetch operation.

3
idstring (UUID)

Unique identifier of the card transaction.

4
createdAtstring (ISO 8601)

Timestamp when the transaction was created.

5
updatedAtstring (ISO 8601)

Timestamp when the transaction was last updated.

6
amountstring

The amount involved in the transaction (in major currency unit).

7
centAmountstring

The amount in cents, used for precision in financial calculations.

8
typestring

Transaction type such as 'credit' or 'debit'.

9
methodstring

Describes how the transaction was made (e.g., 'topup', 'withdrawal').

10
narrativestring | null

Additional information or description about the transaction if provided.

11
statusstring

Current status of the transaction (e.g., 'success', 'failed').

12
currencystring

Currency in which the transaction was made (e.g., 'usd').

13
referencestring

A unique reference to identify the transaction.

14
cardIdstring (UUID)

The ID of the virtual card associated with this transaction.

15
pagenumber

Current page of the paginated response.

16
takenumber

Number of items returned per page.

17
itemCountnumber

Total number of transactions returned.

18
pageCountnumber

Total number of pages available.

19
hasPreviousPageboolean

Indicates if there is a previous page of results.

20
hasNextPageboolean

Indicates if there is a next page of results.

Get Card Transactions by Card ID - Response

List Card Transactions

List all card transactions under your business

Get Virtual Card User by ID

List Card Transactions Query Params

1
orderstring

The sort direction of results. Accepts 'ASC' (ascending) or 'DESC' (descending). Defaults to 'ASC'.

2
pagenumber (int32)

Specifies the current page number of paginated results. Starts at 1.

3
takestring

The number of transactions to return per page. Controls pagination limit.

Get Card Transactions - Query Parameters Example

List Transactions On Card Request
1
urlstring

The full API endpoint for the request, including the path parameter.

2
acceptstring

Specifies the expected response format. Must be set to 'application/json' to receive a JSON response.

List Transactions on Card Response

List Transactions On Card Response
1
statusboolean

Indicates whether the API request was successfully processed. If true, the data field contains the expected response; otherwise, check the message for details.

2
messagestring

A short human-readable summary of the request's result. This can be used for logs or UI messages.

3
idstring (UUID)

The unique identifier for the card transaction. Useful for tracking or referencing a specific transaction.

4
createdAtstring (ISO 8601)

The timestamp when the transaction was created. Use this to display transaction history chronologically.

5
updatedAtstring (ISO 8601)

The timestamp when the transaction record was last updated. Helpful when checking if the status has changed.

6
amountstring

The total amount of the transaction in standard units (e.g., '500' for 500 USD).

7
centAmountstring

Amount expressed in the smallest currency unit (e.g., '500' cents = $5.00 USD). Often used for precision in financial calculations.

8
typestring

Type of transaction. Typically 'credit' for funds added to the card, or 'debit' for withdrawals or payments.

9
methodstring

The method or source of the transaction, such as 'topup' for adding funds or 'withdrawal' for usage.

10
narrativestring | null

Optional description or notes attached to the transaction. May be null if not provided.

11
statusstring

The current status of the transaction. Common values include 'success', 'pending', or 'failed'.

12
currencystring

Currency code (e.g., 'usd') indicating the currency in which the transaction was made.

13
referencestring

Unique string identifier that can be used to trace or reconcile the transaction across systems.

14
cardIdstring (UUID)

The ID of the card this transaction was performed on. Useful when filtering transactions per card.

15
pagenumber

The current page of the paginated response. Used in combination with 'take' to navigate results.

16
takenumber

Number of records returned per page. Set this when requesting paginated data to limit or expand the batch size.

17
itemCountnumber

Total number of transaction records returned by the current query.

18
pageCountnumber

The total number of pages available for the given query, based on 'take' and total items.

19
hasPreviousPageboolean

If true, it means there is a previous page of results before the current one.

20
hasNextPageboolean

If true, it indicates more data is available and another page can be fetched.

List Transactions On Card Response

Card Withdrawal

Withdraw funds from a card

Card Withdrawal

Card Withdrawal Request
1
amountint32Required

The amount to be charged to the virtual card in the smallest currency unit (e.g., cents). For example, 1000 = $10.00.

2
cardIdstringRequired

The unique ID of the virtual card to be charged. It must be a valid UUID representing an existing card.

3
referencestringRequired

A unique identifier for the transaction to ensure idempotency and easy tracking across systems.

Card Withdrawal Request

Card Withdrawal Responses
1
statusboolean

Indicates whether the API request was successfully received and processed. A value of true means the request was accepted.

2
messagestring

Human-readable response indicating the current state of the request. In this case, it confirms that the withdrawal is in progress.

3
idstring (UUID)

The unique identifier of the transaction record. Useful for tracking or querying the specific charge attempt.

4
createdAtstring (ISO 8601)

The timestamp indicating when the transaction was created. Follows the ISO 8601 date-time format.

5
updatedAtstring (ISO 8601)

The timestamp of the last update to the transaction. Will change if the transaction status is updated.

6
amountnumber

The monetary amount involved in the transaction, expressed in the main currency unit (e.g., 5 for $5).

7
centAmountnumber

The transaction amount in the smallest currency unit (e.g., cents). For example, 500 cents equals $5.00.

8
typestring

credit or debit. In this case, credit indicates the card is being credited (e.g., via a withdrawal request).

9
methodstring

The nature of the transaction. withdrawal signifies funds are being removed from the card.

10
statusstring

The current state of the transaction. Possible values include pending, success, or failed.

11
currencystring

The currency code for the transaction, using ISO 4217 (e.g., usd for U.S. dollars).

12
referencestring

A unique reference string associated with the transaction. Useful for reconciliation and tracking across systems.

13
cardIdstring (UUID)

The ID of the virtual card involved in this transaction. Can be used to query further details about the card.

Card Withdrawal Responses

Freeze Card

Block a card

Freeze Card

Freeze Card Request
1
acceptstring

Specifies the response format expected by the client. Should be set to application/json.

2
content-typestring

Specifies the media type of the request payload. Must be application/json.

3
cardIdstringRequired

The unique identifier of the virtual card to be frozen. This ID is required to target the correct card.

Freeze Virtual Card

Freeze Card Request
1
statusboolean

Indicates whether the request to freeze the card was successful. Typically `true` if the operation succeeded.

2
messagestring

A short human-readable message confirming the result of the freeze operation.

3
idstring (UUID)

The unique identifier for the frozen card. This ID can be used to fetch card details or perform other actions.

4
createdAtstring (ISO 8601)

The exact timestamp of when the card was initially created. Useful for historical tracking.

5
updatedAtstring (ISO 8601)

Timestamp of the most recent update to the card, such as the freeze event.

6
balancenumber

Current available balance on the card at the time of freezing, usually in the smallest currency unit (e.g., cents).

7
cardNumberstring

Full card number of the virtual card. This is typically returned only in secure or sandbox environments for testing.

8
last4string

The last four digits of the card number. Often used to identify cards in logs or UI without exposing full card details.

9
cardNamestring

Name displayed on the card or associated with the user for reference or verification.

10
cardTypestring

Describes the type of card. For virtual cards, the value will usually be 'virtual'.

11
cardBrandstring

The issuing card brand such as Visa, Mastercard, etc., which can affect acceptance and processing rules.

12
cvv2string

Card Verification Value (CVV) used for additional card-not-present transaction security. Visible only in secure contexts.

13
expirystring (ISO 8601)

Exact expiration date and time of the card in ISO 8601 format. Indicates when the card will no longer be valid.

14
statusstring

Current operational status of the card. After a freeze request, this should show as 'frozen'.

15
validstring

The expiration date of the card formatted as MM/YYYY. Commonly used for UI display or third-party integrations.

16
referencestring

A custom or system-generated identifier associated with this card for tracking or correlation.

17
createdStatusstring

The result status when the card was first created. Helps with auditing or debugging initial setup.

18
customerIdstring (UUID)

The unique identifier of the customer associated with this card. Useful for linking cards to accounts.

19
citystring

The city portion of the card’s billing address. Often required during card verification processes.

20
streetstring

Street information of the card’s billing address. Typically matches the address used during registration.

21
zipCodestring

Postal or ZIP code associated with the billing address. Can be used for validation in some transactions.

22
countryCodestring

Two-letter country code (ISO 3166-1 alpha-2) for the billing address. Used for regional processing logic.

23
countrystring

Full country name of the billing address. Used for display and verification purposes.

24
customerReferencestring

A unique identifier for a previously registered user in your system. It could be an email address or user id.

Freeze Virtual Card - Response

Unfreeze Card

Unblock a frozen card.

Unfreeze Card

Unfreeze Card Request
1
acceptstring

Specifies the response format expected by the client. Should be set to application/json.

2
content-typestring

Specifies the media type of the request payload. Must be application/json.

3
cardIdstringRequired

The unique identifier of the virtual card to be unfrozen. This ID is required to target the correct card.

Unfreeze Virtual Card

Unfreeze Card Response
1
statusboolean

Indicates whether the request to unfreeze the card was successful. Typically `true` if the operation succeeded.

2
messagestring

A short human-readable message confirming the result of the unfreeze operation.

3
idstring (UUID)

The unique identifier for the unfrozen card. This ID can be used to fetch card details or perform other actions.

4
createdAtstring (ISO 8601)

The exact timestamp of when the card was initially created. Useful for historical tracking.

5
updatedAtstring (ISO 8601)

Timestamp of the most recent update to the card, such as the unfreeze event.

6
balancenumber

Current available balance on the card at the time of unfreezing, usually in the smallest currency unit (e.g., cents).

7
cardNumberstring

Full card number of the virtual card. This is typically returned only in secure or sandbox environments for testing.

8
last4string

The last four digits of the card number. Often used to identify cards in logs or UI without exposing full card details.

9
cardNamestring

Name displayed on the card or associated with the user for reference or verification.

10
cardTypestring

Describes the type of card. For virtual cards, the value will usually be 'virtual'.

11
cardBrandstring

The issuing card brand such as Visa, Mastercard, etc., which can affect acceptance and processing rules.

12
cvv2string

Card Verification Value (CVV) used for additional card-not-present transaction security. Visible only in secure contexts.

13
expirystring (ISO 8601)

Exact expiration date and time of the card in ISO 8601 format. Indicates when the card will no longer be valid.

14
statusstring

Current operational status of the card. After an unfreeze request, this should show as 'active'.

15
validstring

The expiration date of the card formatted as MM/YYYY. Commonly used for UI display or third-party integrations.

16
referencestring

A custom or system-generated identifier associated with this card for tracking or correlation.

17
createdStatusstring

The result status when the card was first created. Helps with auditing or debugging initial setup.

18
customerIdstring (UUID)

The unique identifier of the customer associated with this card. Useful for linking cards to accounts.

19
citystring

The city portion of the card’s billing address. Often required during card verification processes.

20
streetstring

Street information of the card’s billing address. Typically matches the address used during registration.

21
zipCodestring

Postal or ZIP code associated with the billing address. Can be used for validation in some transactions.

22
countryCodestring

Two-letter country code (ISO 3166-1 alpha-2) for the billing address. Used for regional processing logic.

23
countrystring

Full country name of the billing address. Used for display and verification purposes.

24
customerReferencestring

A unique identifier for a previously registered user in your system. It could be an email address or user id.

Unfreeze Virtual Card - Response

Mock Transaction

Mock a virtual card transaction. Only available in sandbox environments for testing purposes.

Mock Transaction

Mock Transaction Request
1
acceptstring

Indicates the response format the client expects. Should be set to application/json.

2
content-typestring

Indicates the format of the request body. Should be application/json.

3
cardIdstringRequired

The unique identifier of the virtual card to mock a transaction against. Must be a valid card ID from your sandbox environment.

4
amountstringRequired

The amount to deduct or add to the card. Represented as a string to allow flexible formatting in test environments.

5
typestringOptional

Defines the type of transaction. Can be deduct (to simulate a withdrawal) or credit (to simulate a top-up). Defaults to deduct.

Mock Virtual Card Transaction

Mock Transaction Response
1
statusboolean

true if the mock transaction was successfully created and processed by the sandbox server.

2
messagestring

Human-readable message indicating the result of the mock operation, such as 'successfully mocked card transaction'.

Mock Transaction - Response

Terminate Card

Permanently deactivate a virtual card. Once a card is terminated, it can no longer be used for transactions or reactivated.

Terminate Card

Terminate Card Request
1
acceptstringRequired

Indicates the response format the client expects. Should be set to `application/json`.

2
content-typestringRequired

Specifies the format of the request body. Must be set to `application/json`.

3
cardIdstringRequired

The unique identifier of the virtual card to be terminated. This ensures the correct card is selected.

Terminate Virtual Card

Terminate Card Response
1
statusboolean

Indicates whether the termination request was successfully processed by the API. A value of `true` means the operation completed without error.

2
messagestring

A human-readable description of the result. This helps confirm that the termination action was acknowledged and executed.

3
idstring (UUID)

A universally unique identifier assigned to the terminated card. Useful for referencing or performing follow-up operations on the same card.

4
createdAtstring (ISO 8601)

The original creation timestamp of the virtual card. Can be used to understand the card's lifespan before termination.

5
updatedAtstring (ISO 8601)

Timestamp of the last update to the card object. In this case, it reflects the moment the card was terminated.

6
balancenumber

The remaining balance on the card at the time it was terminated. Typically used to confirm that no funds remain or to trigger a refund.

7
cardNumberstring

The full 16-digit virtual card number. Displayed only in secure environments or sandboxes for testing purposes.

8
last4string

The last four digits of the card number. Often used for identifying the card in user interfaces or audit logs without exposing the full number.

9
cardNamestring

The display name or alias associated with the card, typically reflecting the name of the cardholder.

10
cardTypestring

Indicates the type of the card, e.g., virtual. This helps differentiate it from other card products like physical cards.

11
cardBrandstring

The card scheme brand (e.g., VISA, Mastercard) that issued the virtual card. Determines where and how the card can be used.

12
cvv2string

The 3-digit CVV security code associated with the card. Only available in secure or sandbox environments for testing.

13
expirystring (ISO 8601)

The full expiration timestamp of the card in ISO 8601 format. Shows the card’s original intended lifespan.

14
statusstring

Current status of the card object. After termination, this should read terminated, meaning the card is permanently deactivated.

15
validstring

Formatted expiration date in MM/YYYY format, used for readability in UI or card input fields.

16
referencestring

A unique identifier or tag used to reference the card externally, often provided during card creation.

17
createdStatusstring

Status message that reflects the outcome of the initial card creation process. This remains unchanged post-termination.

18
customerIdstring (UUID)

A unique identifier for the customer who owns the card. Helps link the card to a user account or CRM record.

19
citystring

City portion of the cardholder’s billing address. May be required for verification during transactions.

20
streetstring

Street-level detail of the billing address. This should match the address used during card registration or verification.

21
zipCodestring

ZIP or postal code from the billing address. Required in some countries for authorization checks.

22
countryCodestring

Two-letter ISO 3166-1 alpha-2 country code (e.g., 'US' for United States). Used for regional validation.

23
countrystring

Full name of the country for the billing address. Used for display purposes or country-based logic.

24
customerReferencestring

A unique identifier for a previously registered user in your system. It could be an email address or user id.

Terminate Card - Response

Enable Airline Payment

This endpoint allows you to enable or disable airline-related payments for a specific virtual card.

Enable Airline Payment

Enable Airline Payment Request
1
acceptstringRequired

Specifies the response format expected by the client. Should be set to application/json.

2
content-typestringRequired

Specifies the media type of the request payload. Must be application/json.

3
cardIdstringRequired

The unique identifier of the virtual card that should be updated. This ensures the airline payment setting is applied to the correct card.

4
isAirlinePaymentEnabledbooleanRequired

Set to true to allow airline-related transactions on this card or false to disable them. Use this to control merchant category access for airline payments.

Enable Airline Payment

Enable Airline Payment Response
1
statusboolean

Indicates whether the request was successful. If true, the airline payment setting was updated correctly.

2
messagestring

A message from the server confirming the outcome of the request. Typically states if airline payments have been enabled or disabled.

Enable Airline Payment - Response
Did you find this page useful?