Refund basics

Learn the basics of issuing refunds

A smooth, easy-to-use refund process can provide your customers with a positive experience. Delivering timely refunds can also help minimize your risk of chargebacks.

The Refunds API allows you to issue customers full or partial refunds on product costs, shipping expenses, taxes, duties, and fees. The API also allows you to refund the same charge multiple times. However, you cannot issue a refund greater than the combined amount of an order's charges.

You can also create refunds manually through Digital River Dashboard.

Where refunds are sent

Refunds can only be applied to the payment method used for the purchase.

If customers use a credit card to make the purchase and that card is cancelled or expires before your refund request, card issuers can still handle the refund. Typically, the issuer credits the customer's replacement card, but in situations where no replacement exists, a check is usually mailed.

Tracking a refund

After you submit a refund request, Digital River relays your request to the customer's bank or credit card issuer. If the request is approved, your integration typically receives the refund.complete event within 24 hours. However, it may take five to ten business days before customers see the credit on their statements.

Dealing with refund failures

In the unlikely event that a refund request fails, the refund's state transitions to failed . You can be notified of this state change by subscribing to the refund.failed event. When Digital River can pinpoint the cause of the failure, failureReason is populated in the event's payload.

Notifying customers of successful refunds

When a refund request is approved, the refund's state transitions to succeeded . You can be notified of this state change by subscribing to the refund.complete event. We recommend you wait to receive this event before informing customers that their refund was successfully processed.

Last updated