Refunds
Refunds are essential to order management, allowing businesses to maintain customer satisfaction. Through the Digital River API, you can process full or partial refunds covering product costs, shipping, taxes, duties, and other fees. Understanding the nuances between standard and charge refunds helps ensure precise adjustments and effective financial management. For an in-depth guide on implementing refunds, explore Refund basics and How refunds differ from charge refunds.
Get all refunds.
A filter on the list based on the createdTime field. The value can be a string with an ISO-8601 UTC format datetime or it can be a dictionary with the following options:
- gt–return values where the createdTime field is after this timestamp
- gte–return values where the createdTime field is after or equal to this timestamp
- lt–return values where the createdTime field is before this timestamp
- lte–return values where the createdTime field is before or equal to this timestamp
A cursor for use in pagination. The endingBefore parameter is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with xyz your subsequent calls can include endingBefore=xyz in order to fetch the previous page of the list.
A cursor for use in pagination. The startingAfter parameter is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with xyz, your subsequent calls can include startingAfter=xyz in order to fetch the next page of the list.
A limit on the number of objects returned. Limit can range between 1 and 100, and the default is 10.
Only return objects in the given state
Only return refunds with the given IDs
The order to retrieve refunds for.
The sku to retrieve refunds for.
Retrieve refunds with this reason.
Retrieve refunds that failed for this reason.
A filter on the list based on the amount field. The value can be a string or it can be a dictionary with the following options:
- gt - return values where the amount field is greater than this amount
- gte - return values where the amount field is greater than or equal to this amount
- lt - return values where the amount field is less than this amount
- lte - return values where the amount field is less than or equal to this amount
A filter on the list based on the amount field. The value can be a string or it can be a dictionary with the following options:
- gt - return values where the amount field is greater than this amount
- gte - return values where the amount field is greater than or equal to this amount
- lt - return values where the amount field is less than this amount
- lte - return values where the amount field is less than or equal to this amount
GET /refunds HTTP/1.1
Host: api.digitalriver.com
Accept: */*
{
"hasMore": true,
"data": [
{
"id": "ref_5823594809",
"createdTime": "2025-06-30T23:45:16.632Z",
"orderId": "ord_6645940010",
"currency": "USD",
"type": "shipping",
"amount": 9.99,
"refundedAmount": 9.99,
"items": [
[
{
"type": "shipping",
"skuId": "sku_9234276173",
"quantity": 1,
"amount": 5.95
}
]
],
"reason": "requested_by_customer",
"failureReason": "expired_or_canceled_card",
"state": "created",
"tokenInformation": {
"token": "bb3f0f17-567a-4c87-8cbd-76d93a750709",
"expiresTime": "2025-06-30T23:45:16.632Z"
},
"expiresTime": "2025-06-30T23:45:16.632Z",
"liveMode": false,
"metadata": {
"coupon": "iOS"
}
}
]
}
Refunds all all or part of an order charge.
POST /refunds HTTP/1.1
Host: api.digitalriver.com
Content-Type: application/json
Accept: */*
Content-Length: 110
{
"orderId": "ord_6645940010",
"currency": "USD",
"type": "shipping",
"percent": 100,
"reason": "requested_by_customer"
}
{
"id": "ref_5823594809",
"createdTime": "2018-04-25T20:36:00Z",
"orderId": "ord_6645940010",
"currency": "USD",
"items": [
{
"type": "shipping",
"amount": 5.95
}
],
"reason": "requested_by_customer",
"state": "created"
}
Retrieves the details of a refund. Supply the unique identifier of the refund.
Refund ID
GET /refunds/{id} HTTP/1.1
Host: api.digitalriver.com
Accept: */*
{
"id": "ref_5823594809",
"createdTime": "2025-06-30T23:45:16.632Z",
"orderId": "ord_6645940010",
"currency": "USD",
"type": "shipping",
"amount": 9.99,
"refundedAmount": 9.99,
"items": [
[
{
"type": "shipping",
"skuId": "sku_9234276173",
"quantity": 1,
"amount": 5.95
}
]
],
"reason": "requested_by_customer",
"failureReason": "expired_or_canceled_card",
"state": "created",
"tokenInformation": {
"token": "bb3f0f17-567a-4c87-8cbd-76d93a750709",
"expiresTime": "2025-06-30T23:45:16.632Z"
},
"expiresTime": "2025-06-30T23:45:16.632Z",
"liveMode": false,
"metadata": {
"coupon": "iOS"
}
}
Updates the specified refund by setting the values of the parameters passed. Any parameters not provided will be left unchanged. This request only accepts metadata as an argument.
Refund ID
POST /refunds/{id} HTTP/1.1
Host: api.digitalriver.com
Content-Type: application/json
Accept: */*
Content-Length: 29
{
"metadata": {
"coupon": "iOS"
}
}
{
"id": "ref_5823594809",
"createdTime": "2018-04-25T20:36:00Z",
"orderId": "6645940010",
"currency": "USD",
"items": [
{
"type": "shipping",
"amount": 5.95
}
],
"reason": "requested_by_customer",
"state": "created",
"metadata": {
"application": "iOS"
}
}
Last updated