Card Management APIs
Create a Single Virtual Card Synchronously
POST /abc/v1/card/create
Create a Single Virtual Card Synchronously (Card Information Returned Synchronously)
Request Headers
| Name | Type | Required | Description | example |
| X-API-Key | string | No | - | {apiKey} |
| X-Timestamp | integer | No | - | {{Timestamp}} |
| X-Nonce | string | No | - | {{Nonce}} |
| X-Signature | string | No | - | {{Signature}} |
| Content-Type | string | No | - | application/json |
Request Body
Data model: OpenCardSyncCreateRequest
| field | Type | Required | Description | Example / Default |
| budgetId | string | Yes | budget ID | 2109457836210847601 |
| cardName | string | Yes | card name | RD-Test-Card |
| cardHolderName | string | Yes | cardholder name | Zhang San |
| cardBinCode | string | Yes | Card BIN (the first 6-8 digits of the card number), such as 622202 | 440299 |
| isSharedCard | integer | No | Card type | 1 |
| cardSpendLimit | number | No | Single-card limit (unit: cents, integer). Required for dedicated limit cards and must not be provided for shared limit cards; minimum -9999999999; maximum 9999999999 | - |
Successful Response
Data model: CommonResultOpenCardResponse
Response Fields
| field | Type | Required | Description | Example / Default |
| code | integer | No | Error code | - |
| msg | string | No | Human-readable error message | - |
| message | string | No | - | - |
| data | object (OpenCardResponse) | No | - | - |
View child fields
| field | Type | Required | Description | Example / Default |
| cardInfoId | string | No | virtual cardunique ID | - |
| cardName | string | No | card name | - |
| cardBinCode | string | No | card BIN | - |
| cardNo | string | No | Masked card number (BIN + + last four digits) | - |
| lastFour | string | No | last four digits | - |
| expirationYear | string | No | expiration year | - |
| expirationMonth | string | No | expiration month | - |
| cvvNum | string | No | encrypted CVV | - |
| cardScheme | string | No | card scheme: VISA、MASTERCARD、UnionPay、JCB | - |
| cardHolderName | string | No | cardholder | - |
| currency | string | No | currency ISO 4217 | USD |
| cardStatus | integer | No | Card status | - |
| isSharedCard | integer | No | Whether the card is shared | - |
| cardSpendLimit | number | No | Card spend limit (for dedicated limit cards only; 0 for shared cards) | - |
| totalSpendAmount | number | No | total card spend | - |
| serviceFeeAmount | number | No | card issuance fee | - |
| budgetId | string | No | linked budget ID | - |
| budgetName | string | No | linked budget name | - |
| subAccountId | string | No | linked sub account ID | - |
| subAccountName | string | No | linked sub account name | - |
| createTime | string | No | creation time | - |
| updateTime | string | No | update time | - |
Query Card List
POST /abc/v1/card/query
Queries cards by filter, with paginated basic information, status, and limits.
Request Headers
| Name | Type | Required | Description | example |
| X-API-Key | string | No | - | {apiKey} |
| X-Timestamp | integer | No | - | {{Timestamp}} |
| X-Nonce | string | No | - | {{Nonce}} |
| X-Signature | string | No | - | {{Signature}} |
| Content-Type | string | No | - | application/json |
Request Body
Data model: OpenCardQueryRequest
| field | Type | Required | Description | Example / Default |
| pageNo | integer | Yes | Page number, starting from 1 | 1 |
| pageSize | integer | Yes | Items per page, maximum 200 | 10 |
| cardName | string | No | card name | - |
Successful Response
Data model: CommonResultPageResultOpenCardResponse
Response Fields
| field | Type | Required | Description | Example / Default |
| code | integer | No | Error code | - |
| msg | string | No | Human-readable error message | - |
| message | string | No | - | - |
| data | object (PageResultOpenCardResponse) | No | - | - |
View child fields
| field | Type | Required | Description | Example / Default |
| total | integer (int64) | No | Total | - |
| list | array<object (OpenCardResponse)> | No | Data | - |
Update Card (card name / card type / limit)
POST /abc/v1/card/edit
Update Card (Name / Type / Limit)
Request Headers
| Name | Type | Required | Description | example |
| X-API-Key | string | No | - | {apiKey} |
| X-Timestamp | integer | No | - | {{Timestamp}} |
| X-Nonce | string | No | - | {{Nonce}} |
| X-Signature | string | No | - | {{Signature}} |
| Content-Type | string | No | - | application/json |
Request Body
Data model: OpenCardEditRequest
| field | Type | Required | Description | Example / Default |
| cardInfoId | string | Yes | virtual cardunique ID | 2109457836210847604 |
| cardName | string | No | Card name; omit to leave unchanged | - |
| isSharedCard | integer | Yes | Whether the card is shared | 1 |
| cardSpendLimit | number | No | Card spend limit (unit: cents); required when the target type is a dedicated limit card and must be omitted when converting to a shared card; minimum -9999999999; maximum 9999999999 | - |
Successful Response
Data model: CommonResultOpenCardResponse
Response Fields
| field | Type | Required | Description | Example / Default |
| code | integer | No | Error code | - |
| msg | string | No | Human-readable error message | - |
| message | string | No | - | - |
| data | object (OpenCardResponse) | No | - | - |
View child fields
| field | Type | Required | Description | Example / Default |
| cardInfoId | string | No | virtual cardunique ID | - |
| cardName | string | No | card name | - |
| cardBinCode | string | No | card BIN | - |
| cardNo | string | No | Masked card number (BIN + + last four digits) | - |
| lastFour | string | No | last four digits | - |
| expirationYear | string | No | expiration year | - |
| expirationMonth | string | No | expiration month | - |
| cvvNum | string | No | encrypted CVV | - |
| cardScheme | string | No | card scheme: VISA、MASTERCARD、UnionPay、JCB | - |
| cardHolderName | string | No | cardholder | - |
| currency | string | No | currency ISO 4217 | USD |
| cardStatus | integer | No | Card status | - |
| isSharedCard | integer | No | Whether the card is shared | - |
| cardSpendLimit | number | No | Card spend limit (for dedicated limit cards only; 0 for shared cards) | - |
| totalSpendAmount | number | No | total card spend | - |
| serviceFeeAmount | number | No | card issuance fee | - |
| budgetId | string | No | linked budget ID | - |
| budgetName | string | No | linked budget name | - |
| subAccountId | string | No | linked sub account ID | - |
| subAccountName | string | No | linked sub account name | - |
| createTime | string | No | creation time | - |
| updateTime | string | No | update time | - |
Update Virtual Card Status (enable / disable)
POST /abc/v1/card/update-status
Update Virtual Card Status (Enable / Disable)
Request Headers
| Name | Type | Required | Description | example |
| X-API-Key | string | No | - | {apiKey} |
| X-Timestamp | integer | No | - | {{Timestamp}} |
| X-Nonce | string | No | - | {{Nonce}} |
| X-Signature | string | No | - | {{Signature}} |
| Content-Type | string | No | - | application/json |
Request Body
Data model: OpenCardUpdateStatusRequest
| field | Type | Required | Description | Example / Default |
| cardInfoId | string | Yes | virtual cardunique ID | 2109457836210847604 |
| cardStatus | integer | Yes | Card status | 2 |
Successful Response
Data model: CommonResultOpenCardResponse
Response Fields
| field | Type | Required | Description | Example / Default |
| code | integer | No | Error code | - |
| msg | string | No | Human-readable error message | - |
| message | string | No | - | - |
| data | object (OpenCardResponse) | No | - | - |
View child fields
| field | Type | Required | Description | Example / Default |
| cardInfoId | string | No | virtual cardunique ID | - |
| cardName | string | No | card name | - |
| cardBinCode | string | No | card BIN | - |
| cardNo | string | No | Masked card number (BIN + + last four digits) | - |
| lastFour | string | No | last four digits | - |
| expirationYear | string | No | expiration year | - |
| expirationMonth | string | No | expiration month | - |
| cvvNum | string | No | encrypted CVV | - |
| cardScheme | string | No | card scheme: VISA、MASTERCARD、UnionPay、JCB | - |
| cardHolderName | string | No | cardholder | - |
| currency | string | No | currency ISO 4217 | USD |
| cardStatus | integer | No | Card status | - |
| isSharedCard | integer | No | Whether the card is shared | - |
| cardSpendLimit | number | No | Card spend limit (for dedicated limit cards only; 0 for shared cards) | - |
| totalSpendAmount | number | No | total card spend | - |
| serviceFeeAmount | number | No | card issuance fee | - |
| budgetId | string | No | linked budget ID | - |
| budgetName | string | No | linked budget name | - |
| subAccountId | string | No | linked sub account ID | - |
| subAccountName | string | No | linked sub account name | - |
| createTime | string | No | creation time | - |
| updateTime | string | No | update time | - |
Get Card Details
POST /abc/v1/card/detail
Retrieves the specified card's basic information, status, and limit details.
Request Headers
| Name | Type | Required | Description | example |
| X-API-Key | string | No | - | {apiKey} |
| X-Timestamp | integer | No | - | {{Timestamp}} |
| X-Nonce | string | No | - | {{Nonce}} |
| X-Signature | string | No | - | {{Signature}} |
| Content-Type | string | No | - | application/json |
Request Body
Data model: OpenCardDetailRequest
| field | Type | Required | Description | Example / Default |
| cardInfoId | string | Yes | Card primary key ID | 2109457836210847604 |
Successful Response
Data model: CommonResultOpenCardResponse
Response Fields
| field | Type | Required | Description | Example / Default |
| code | integer | No | Error code | - |
| msg | string | No | Human-readable error message | - |
| message | string | No | - | - |
| data | object (OpenCardResponse) | No | - | - |
View child fields
| field | Type | Required | Description | Example / Default |
| cardInfoId | string | No | virtual cardunique ID | - |
| cardName | string | No | card name | - |
| cardBinCode | string | No | card BIN | - |
| cardNo | string | No | Masked card number (BIN + + last four digits) | - |
| lastFour | string | No | last four digits | - |
| expirationYear | string | No | expiration year | - |
| expirationMonth | string | No | expiration month | - |
| cvvNum | string | No | encrypted CVV | - |
| cardScheme | string | No | card scheme: VISA、MASTERCARD、UnionPay、JCB | - |
| cardHolderName | string | No | cardholder | - |
| currency | string | No | currency ISO 4217 | USD |
| cardStatus | integer | No | Card status | - |
| isSharedCard | integer | No | Whether the card is shared | - |
| cardSpendLimit | number | No | Card spend limit (for dedicated limit cards only; 0 for shared cards) | - |
| totalSpendAmount | number | No | total card spend | - |
| serviceFeeAmount | number | No | card issuance fee | - |
| budgetId | string | No | linked budget ID | - |
| budgetName | string | No | linked budget name | - |
| subAccountId | string | No | linked sub account ID | - |
| subAccountName | string | No | linked sub account name | - |
| createTime | string | No | creation time | - |
| updateTime | string | No | update time | - |
Delete Card
POST /abc/v1/card/cancel
Permanently deletes the specified card. This action cannot be undone.
Request Headers
| Name | Type | Required | Description | example |
| X-API-Key | string | No | - | {apiKey} |
| X-Timestamp | integer | No | - | {{Timestamp}} |
| X-Nonce | string | No | - | {{Nonce}} |
| X-Signature | string | No | - | {{Signature}} |
| Content-Type | string | No | - | application/json |
Request Body
Data model: OpenCardCancelRequest
| field | Type | Required | Description | Example / Default |
| cardInfoId | string | Yes | - | - |
Successful Response
Data model: CommonResultBoolean
Response Fields
| field | Type | Required | Description | Example / Default |
| code | integer | No | Error code | - |
| msg | string | No | Human-readable error message | - |
| message | string | No | - | - |
| data | boolean | No | Response data | - |
Query Card BIN
Query Card BIN.
Request URL: POST https://open.orbsis.com/abc/v1/card/bin/query
request headers
| field | Location | Type | Example or Description |
| X-API-Key | Header | string | {APIKey} |
| X-Timestamp | Header | integer | {{Timestamp}} |
| X-Nonce | Header | string | {{Nonce}} |
| X-Signature | Header | string | {{Signature}} |
| Content-Type | Header | string | application/json |
request parameters
| field | Type | Required | Description and Constraints | Example or Default |
| pageNo | integer | Yes | Page number, starting from 1 | default: 1; example: 1 |
| pageSize | integer | Yes | Items per page, maximum 200 | default: 10; example: 10 |
| merchantId | string | No | merchant ID. | B34420261012473196 |
| cardBinCode | string | No | card BIN. | 448213 |
| status | integer | No | status. | - |
| currency | string | No | currency. | USD |
| country | string | No | country. | US |
| cardGroup | string | No | card scheme. | VISA |
cURL Example:
curl --request POST 'https://open.orbsis.com/abc/v1/card/bin/query' \
--header 'Content-Type: application/json' \
--header 'X-API-Key: api-key' \
--header 'X-Timestamp: unix-seconds' \
--header 'X-Nonce: unique-nonce' \
--header 'X-Signature: base64-signature' \
--data '{"pageNo":1,"pageSize":10,"merchantId":"B34420261012473196","cardBinCode":"448213","status":1,"currency":"USD","country":"US","cardGroup":"VISA"}'
Request Body Example:
{ "pageNo": 1, "pageSize": 10, "merchantId": "B34420261012473196", "cardBinCode": "448213", "status": 1, "currency": "USD", "country": "US", "cardGroup": "VISA" }
Response Fields
| Field Path | Type | Required | Description |
| code | integer | No | Error code |
| msg | string | No | Human-readable error message |
| message | string | No | Message field |
| data | object | No | Response data |
| data.total | integer(int64) | No | Total |
| data.list | array | No | Data list |
| data.list[].id | integer(int64) | No | primary key ID; example: 7163 |
| data.list[].parameterId | string | No | product ID; example: 22597 |
| data.list[].cardBin | string | No | card BIN |
| data.list[].issuer | string | No | issuer |
| data.list[].cardFee | number | No | card issuance fee |
| data.list[].maxCardNum | integer | No | maximum card issuance count |
| data.list[].status | integer | No | Status: 0 - unavailable, 1 - available; example: 1 |
| data.list[].effectiveTime | string | No | effective time |
| data.list[].failureTime | string | No | expiration time |
| data.list[].createTime | string | No | creation time |
| data.list[].currency | string | No | currency |
| data.list[].country | string | No | country |
| data.list[].cardGroup | string | No | card scheme |
| data.list[].totalIssuedCount | integer(int64) | No | issued card count |
Successful Response Example:
{ "code": 0, "msg": "success", "message": "success", "data": { "total": 1, "list": [ { "id": 7163, "parameterId": "22597", "cardBin": "448213", "issuer": "string", "cardFee": 100, "maxCardNum": 1, "status": 1, "effectiveTime": "string", "failureTime": "string", "createTime": "string", "currency": "USD", "country": "US", "cardGroup": "VISA", "totalIssuedCount": 1 } ] } }