Creating a supplementary card


A supplementary card behaves in the same way as a standard card, except that it has a parent card whose funds or credit are shared with the supplementary card. This parent card is identified by parent_card_id which is also the regular card_id. ▶ Run in Postman

Before you can create a supplementary card, the customer must have passed the KYC verification or the business must have passed the KYB verification.

A supplementary card and card account are simultaneously created from a single POST /cards operation. Before you can use the physical supplementary card, you must activate the card.

If a parent card changes its status, is lost or is stolen, this has no effect on a supplementary card.


Supplementary card limit

The sum of all supplementary card limits must be less than the parent card limit. The available balance on a supplementary card is affected by the balance(s) on any other supplementary card(s) belonging to the same parent card.

Creating a supplementary card

To create a supplementary card, use the POST /cards operation and provide parameters as shown in the table below.




required for customer supplementary card


UUID that identifies the customer generated when you create a customer. Not used when creating a business supplementary card.

required for business supplementary card


UUID that identifies the business generated when you create a business. Not used when creating a customer supplementary card.



UUID that represents the card program offered to customers by your brand in partnership with a bank.



New credit limit for the card. Decimal format with two decimal places, for example 3000.00.



Parent card UUID when creating a supplementary card.



The visual design of card in integer format.
Please contact Bond support for information regarding creating card designs.

An example of a request to create a business supplementary card is shown below.

curl --request POST \
     --url \
     --header 'Authorization: YOUR-AUTHORIZATION' \
     --header 'Content-Type: application/json' \
     --header 'Identity: YOUR-IDENTITY' \
     --data '
     "business_id": "6f0e7dcb-6073-42df-bf02-ce71bd5fac3b",
     "program_id": "2742ff6a-7455-4066-8b45-ae12d3acca34",
     "parent_card_id": "6f0e7dcb-6073-42df-bf02-ce71bd5fac3b",
     "credit_limit": "3000.00",
     "card_design_id": "4"
require 'uri'
require 'net/http'
require 'openssl'

url = URI("")

http =, url.port)
http.use_ssl = true

request =
request["Content-Type"] = 'application/json'
request["Identity"] = 'YOUR-IDENTITY'
request["Authorization"] = 'YOUR-AUTHORIZATION'
request.body = "{\"business_id\":\"6f0e7dcb-6073-42df-bf02-ce71bd5fac3b\",\"program_id\":\"2742ff6a-7455-4066-8b45-ae12d3acca34\",\"parent_card_id\":\"6f0e7dcb-6073-42df-bf02-ce71bd5fac3b\",\"credit_limit\":\"3000.00\",\"card_design_id\":\"4\"}"

response = http.request(request)
puts response.read_body
const options = {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    Identity: 'YOUR-IDENTITY',
    Authorization: 'YOUR-AUTHORIZATION'
  body: JSON.stringify({
    business_id: '6f0e7dcb-6073-42df-bf02-ce71bd5fac3b',
    program_id: '2742ff6a-7455-4066-8b45-ae12d3acca34',
    parent_card_id: '6f0e7dcb-6073-42df-bf02-ce71bd5fac3b',
    credit_limit: '3000.00',
    card_design_id: '4'

fetch('', options)
  .then(response => response.json())
  .then(response => console.log(response))
  .catch(err => console.error(err));
import requests

url = ""

payload = {
    "business_id": "6f0e7dcb-6073-42df-bf02-ce71bd5fac3b",
    "program_id": "2742ff6a-7455-4066-8b45-ae12d3acca34",
    "parent_card_id": "6f0e7dcb-6073-42df-bf02-ce71bd5fac3b",
    "credit_limit": "3000.00",
    "card_design_id": "4"
headers = {
    "Content-Type": "application/json",
    "Identity": "YOUR-IDENTITY",
    "Authorization": "YOUR-AUTHORIZATION"

response = requests.request("POST", url, json=payload, headers=headers)

var client = new RestClient("");
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Identity", "YOUR-IDENTITY");
request.AddHeader("Authorization", "YOUR-AUTHORIZATION");
request.AddParameter("application/json", "{\"business_id\":\"6f0e7dcb-6073-42df-bf02-ce71bd5fac3b\",\"program_id\":\"2742ff6a-7455-4066-8b45-ae12d3acca34\",\"parent_card_id\":\"6f0e7dcb-6073-42df-bf02-ce71bd5fac3b\",\"credit_limit\":\"3000.00\",\"card_design_id\":\"4\"}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"business_id\":\"6f0e7dcb-6073-42df-bf02-ce71bd5fac3b\",\"program_id\":\"2742ff6a-7455-4066-8b45-ae12d3acca34\",\"parent_card_id\":\"6f0e7dcb-6073-42df-bf02-ce71bd5fac3b\",\"credit_limit\":\"3000.00\",\"card_design_id\":\"4\"}");
Request request = new Request.Builder()
  .addHeader("Content-Type", "application/json")
  .addHeader("Identity", "YOUR-IDENTITY")
  .addHeader("Authorization", "YOUR-AUTHORIZATION")

Response response = client.newCall(request).execute();

For a complete specification and interactive examples, see Creating a supplementary card in the Bond API Reference.

For details regarding changing the credit limit for the card, see Updating a card.

Did this page help you?