Skip to main content
DELETE
/
customers
/
{customer_id}
/
instruments
/
{instrument_id}
Delete Saved Card Instrument
curl --request DELETE \
  --url https://sandbox.cashfree.com/pg/customers/{customer_id}/instruments/{instrument_id} \
  --header 'x-api-version: <x-api-version>' \
  --header 'x-client-id: <api-key>' \
  --header 'x-client-secret: <api-key>'
import requests

url = "https://sandbox.cashfree.com/pg/customers/{customer_id}/instruments/{instrument_id}"

headers = {
"x-api-version": "<x-api-version>",
"x-client-id": "<api-key>",
"x-client-secret": "<api-key>"
}

response = requests.delete(url, headers=headers)

print(response.text)
const options = {
method: 'DELETE',
headers: {
'x-api-version': '<x-api-version>',
'x-client-id': '<api-key>',
'x-client-secret': '<api-key>'
}
};

fetch('https://sandbox.cashfree.com/pg/customers/{customer_id}/instruments/{instrument_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
CURLOPT_URL => "https://sandbox.cashfree.com/pg/customers/{customer_id}/instruments/{instrument_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => [
"x-api-version: <x-api-version>",
"x-client-id: <api-key>",
"x-client-secret: <api-key>"
],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main

import (
"fmt"
"net/http"
"io"
)

func main() {

url := "https://sandbox.cashfree.com/pg/customers/{customer_id}/instruments/{instrument_id}"

req, _ := http.NewRequest("DELETE", url, nil)

req.Header.Add("x-api-version", "<x-api-version>")
req.Header.Add("x-client-id", "<api-key>")
req.Header.Add("x-client-secret", "<api-key>")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.delete("https://sandbox.cashfree.com/pg/customers/{customer_id}/instruments/{instrument_id}")
.header("x-api-version", "<x-api-version>")
.header("x-client-id", "<api-key>")
.header("x-client-secret", "<api-key>")
.asString();
require 'uri'
require 'net/http'

url = URI("https://sandbox.cashfree.com/pg/customers/{customer_id}/instruments/{instrument_id}")

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

request = Net::HTTP::Delete.new(url)
request["x-api-version"] = '<x-api-version>'
request["x-client-id"] = '<api-key>'
request["x-client-secret"] = '<api-key>'

response = http.request(request)
puts response.read_body
{
  "customer_id": "akshita2106",
  "afa_reference": "3128531647",
  "instrument_id": "54de41ad34ee-36a0-409e-aec9-bdc9d232add0",
  "instrument_type": "card",
  "instrument_uid": "78c2a3b90265436eceb4c09d8b09c85432ee1bb57512cc24ba998a12cd0180c2",
  "instrument_display": "XXXXXXXXXXXX1001",
  "instrument_status": "INACTIVE",
  "created_at": "2024-10-10T10:16:18.000+00:00",
  "instrument_meta": {
    "card_network": "mastercard",
    "card_bank_name": "ICICI BANK",
    "card_country": "IN",
    "card_type": "credit_card",
    "card_sub_type": "P",
    "card_token_details": {
      "par": "5001AJE6CSF757UMKRTKK61PRVYGC",
      "expiry_month": "11",
      "expiry_year": "2027"
    }
  }
}
{
"message": "bad URL, please check API documentation",
"help": "Check latest errors and resolution from Merchant Dashboard API logs: https://bit.ly/4glEd0W Help Document: https://bit.ly/4eeZYO9",
"code": "request_failed",
"type": "invalid_request_error"
}
{
"message": "authentication Failed",
"code": "request_failed",
"type": "authentication_error"
}
{
"message": "something is not found",
"help": "Check latest errors and resolution from Merchant Dashboard API logs: https://bit.ly/4glEd0W Help Document: https://bit.ly/4eeZYO9",
"code": "something_not_found",
"type": "invalid_request_error"
}
{
"message": "order with same id is already present",
"help": "Check latest errors and resolution from Merchant Dashboard API logs: https://bit.ly/4glEd0W Help Document: https://bit.ly/4eeZYO9",
"code": "order_already_exists",
"type": "invalid_request_error"
}
{
"message": "something is not found",
"help": "Check latest errors and resolution from Merchant Dashboard API logs: https://bit.ly/4glEd0W Help Document: https://bit.ly/4eeZYO9",
"code": "request_invalid",
"type": "idempotency_error"
}
{
"message": "Too many requests from IP. Check headers",
"code": "request_failed",
"type": "rate_limit_error"
}
{
"message": "internal Server Error",
"help": "Check latest errors and resolution from Merchant Dashboard API logs: https://bit.ly/4glEd0W Help Document: https://bit.ly/4eeZYO9",
"code": "internal_error",
"type": "api_error"
}
{
"message": "something is not found",
"help": "Check latest errors and resolution from Merchant Dashboard API logs: https://bit.ly/4glEd0W Help Document: https://bit.ly/4eeZYO9",
"code": "bank_processing_failure",
"type": "api_error"
}

Authorizations

x-client-id
string
header
required

Client app ID. You can find your app id in the Merchant Dashboard.

x-client-secret
string
header
required

Client secret key. You can find your secret key in the Merchant Dashboard.

Headers

x-api-version
string
default:2025-01-01
required

API version to be used.

x-request-id
string

Request ID for the API call. Can be used to resolve tech issues. Communicate this in your tech related queries to Cashfree.

x-idempotency-key
string<UUID>

An idempotency key is a unique identifier you include with your API call. If the request fails or times out, you can safely retry it using the same key to avoid duplicate actions.

Path Parameters

customer_id
string
required

The customer ID provided by the merchant during the Create Order API call, used to save cards for the customer.

instrument_id
string
required

The instrument_id which needs to be deleted.

Response

Success response for deleting a specific saved card stored for the customer in Cashfreeโ€™s Token Vault.

customer_id
string

Customer ID against which the card is saved.

afa_reference
string

cf_payment_id of the successful transaction done while saving instrument.

instrument_id
string

Identifier for the card saved at Cashfree, which was requested to be deleted.

instrument_type
enum<string>

Type of the saved instrument.

Available options:
card
instrument_uid
string

Unique identifier for the saved card, used to identify a specific card.

instrument_display
string

Last four digits of actual card number.

instrument_status
enum<string>

Status of the saved instrument. This would be INACTIVE when the instrument is successfully deleted.

Available options:
INACTIVE
created_at
string

Timestamp at which instrument was saved.

instrument_meta
InstrumentMeta ยท object

Card instrument meta information.