Creating a supplementary card

Introduction

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.

Parameter

Type

Description

customer_id
required for customer supplementary card

String

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

business_id
required for business supplementary card

String

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

program_id
required

String

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

credit_limit

String

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

parent_card_id
required

String

Parent card UUID when creating a supplementary card.

card_design_id

String

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 https://sandbox.bond.tech/api/v0/cards \
     --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("https://sandbox.bond.tech/api/v0/cards")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
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('https://sandbox.bond.tech/api/v0/cards', options)
  .then(response => response.json())
  .then(response => console.log(response))
  .catch(err => console.error(err));
import requests

url = "https://sandbox.bond.tech/api/v0/cards"

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)

print(response.text)
var client = new RestClient("https://sandbox.bond.tech/api/v0/cards");
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()
  .url("https://sandbox.bond.tech/api/v0/cards")
  .post(body)
  .addHeader("Content-Type", "application/json")
  .addHeader("Identity", "YOUR-IDENTITY")
  .addHeader("Authorization", "YOUR-AUTHORIZATION")
  .build();

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?