Skip to main content


Refund refers to a situation where a cardholder wants to refund a card transaction, and is arranged between the cardholder and the merchant directly. Example reasons include the cardholder being unhappy with a product, or a 30-days return and refund policy by the merchant.

If the merchant agrees, the refund can be processed directly on Xendit via API. The time limit for refunding via API is 6 months from the charge. You can ask Xendit to help with refunds as long as the cardholder still has an account which links to the card (even if expired). You can refund a charge in full, or in partial amounts.

Here is an example of a refund flow, this may look similar to a charge flow. Refund are charges, but with a negative amount.

The response sent when a Refund request is REQUESTED, indicating that the Refund request is successful. After the request is sent, whether the Refund itself eventually succeeds or fails is completely up to the issuing bank - Xendit has no control over this.

Refunds are available through Xendit API, or through the Xendit Dashboard. Remember to include the header x-api-version to send Refunds via API (more detail in our API references).

How to Make Refunds From the Xendit Dashboard

1. Here's what it looks like from the Xendit Dashboard: Select and open a successfully charged transaction that you want to refund. On the Details page, click the top right "Refund" button.

2. In the "Refund Charge" dialog box, the Refundable Amount is displayed. You can choose to do a full refund or a partial refund. Simply insert the amount that needs to be refunded.

alt text

3. Click Submit, and you’ll be prompted to input PIN, once successful,the refund request will be sent to the bank and it will take approximately 7 - 14 days (depends on the issuer) for the bank to credit back to the customer's balance (note: in this stage, if the refund request is successful, you can refer the customer to ask their bank to check for the refund status). We will adjust the Xendit fees accordingly.

  1. Download the refund receipt inside the refund detail page if you need to share it to your customers as a proof.

alt text


  1. Can we refund an order through your portal?

    • Yes, refunds are available to be done through API and the Xendit Dashboard.
    • After the cutoff time, how long does it take to process a refund?Ultimately depends on issuing bank, but in our experience it's same as capture // T+1 or T+2 depending on time of day.
  2. Can we cancel a refund request?

    • No. Unfortunately once the refund request has been made, Xendit has no ability to cancel it. You can advise your customer to create a new order and do the transaction again.
  3. Let's say I made a charge for an amount of IDR 100.000,-. What happens if I refund the whole amount?

    • This counts as a full refund. If you refund the the whole amount that was previously charged, we will not apply any fees to the transaction.
  4. What if I make a partial refund? (i.e. refunding IDR 50.000 out IDR 100.000 that was charged)?

    • Since this is a partial refund, we will only apply the variable rate to the amount that is not refunded (only to the IDR 50.000, instead of the initial charge amount of IDR 100.000).
  5. If I refund from a charge coming from an international transaction, will the value be converted back to it's original currency?

    • Yes, the amount refunded will be converted to the local currency of the card. If a USD card was charged Rp10,000, it might show up at $0.73 on the billing statement, if refunded for the full amount it could be converted to $0.72 or $0.74, depending on exchange rate.
Was this page helpful?