Skip to main content
PUT
/
orders
/
{order_id}
/
refunds
/
{refund_id}
Update Refund
curl --request PUT \
  --url https://sandbox.cashfree.com/pg/orders/{order_id}/refunds/{refund_id} \
  --header 'Content-Type: application/json' \
  --header 'x-api-version: <x-api-version>' \
  --header 'x-client-id: <api-key>' \
  --header 'x-client-secret: <api-key>' \
  --data '
{
  "refund_status": "CANCELLED",
  "remarks": "Requesting cancellation of refund"
}
'
{
  "cf_payment_id": "918812",
  "cf_refund_id": "1553338",
  "refund_id": "REF-123",
  "order_id": "c6G-QMcbm1848",
  "entity": "refund",
  "refund_amount": 100.81,
  "refund_currency": "INR",
  "refund_note": "Refund for order #123",
  "refund_status": "CANCELLED",
  "refund_type": "MERCHANT_INITIATED",
  "refund_splits": [],
  "status_description": "Refund is cancelled",
  "refund_speed": {
    "requested": "INSTANT,",
    "accepted": "INSTANT,",
    "processed": "null,",
    "message": null
  },
  "refund_arn": "RF12312",
  "metadata": {
    "key1": "myValue"
  },
  "created_at": "2021-07-25T08:57:52+05:30",
  "processed_at": "2021-07-25T12:57:52+05:30",
  "refund_charge": 0,
  "refund_mode": "STANDARD",
  "forex_conversion_handling_charge": 11.12,
  "forex_conversion_handling_tax": 1.12,
  "forex_conversion_rate": 84.24,
  "charges_currency": "INR"
}

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

order_id
string
required

The ID which uniquely identifies your order.

refund_id
string
required

Refund Id of the refund you want to update.

Body

application/json

Request Body to Update Refunds.

update refund request object.

refund_status
enum<string>
required

Allowed values: ["CANCELLED"].

Available options:
CANCELLED
remarks
string

Add remarks for your reference.

Maximum string length: 250

Response

Refund updated.

The refund entity.

cf_payment_id
string

Cashfree Payments ID of the payment for which refund is initiated.

cf_refund_id
string

Cashfree Payments ID for a refund.

order_id
string

Merchant’s order Id of the order for which refund is initiated.

refund_id
string

Merchant’s refund ID of the refund.

entity
enum<string>

Type of object.

Available options:
refund
refund_amount
number

Amount that is refunded.

refund_currency
string

Currency of the refund amount.

refund_note
string

Note added by merchant for the refund.

refund_status
enum<string>

This can be one of ["SUCCESS", "PENDING", "CANCELLED", "ONHOLD", "FAILED"].

Available options:
SUCCESS,
PENDING,
CANCELLED,
ONHOLD
refund_arn
string

The bank reference number for refund.

refund_charge
number

Charges in INR for processing refund.

status_description
string

Description of refund status.

metadata
object

Key-value pair that can be used to store additional information about the entity. Maximum 5 key-value pairs.

refund_splits
VendorSplit · object[]
refund_type
enum<string>

This can be one of ["PAYMENT_AUTO_REFUND", "MERCHANT_INITIATED", "UNRECONCILED_AUTO_REFUND"].

Available options:
PAYMENT_AUTO_REFUND,
MERCHANT_INITIATED,
UNRECONCILED_AUTO_REFUND
refund_mode
string

Method or speed of processing refund.

created_at
string

Time of refund creation.

processed_at
string

Time when refund was processed successfully.

refund_speed
RefundSpeed · object

How fast refund has to be proecessed.

Example:
{
"requested": "STANDARD",
"accepted": "STANDARD",
"processed": "STANDARD",
"message": "Error message, if any"
}
forex_conversion_handling_charge
number

Cashfree forex conversion charges for refund processing.

forex_conversion_handling_tax
number

Cashfree forex conversion tax for refund processing.

forex_conversion_rate
number

Cashfree forex conversion rate for refund processing.

charges_currency
string

Cashfree refund charges currency for a refund.