Refunds

You can initiate a refund of your charges fully or partially in your MoneyCollect Dashboard using your available MoneyCollect balance. Please note that a refund can not be withdrawn or cancelled after initiated. If your available balance is insufficient to pay the refund amount, your refund will change to "Refunded pending"status. And you need to initiate the refund one more time in the same way after you have funds added to your MoneyCollect balance.

MoneyCollect submits refunds to your customer’s bank immediately. You can query the result of the refund transactions through our Refund API or set your webhook to receive real-time notifications. Depending on the bank's processing time, it can take anywhere from 5-10 business days to show up on your customer’s bank account.

Most transactions don’t require fees to refund a charge. However, the processing fees from the original transaction will not be returned. For example, if the original charge underwent currency conversion, the refunded amount converts back uses the same process.

Refund via the MoneyCollect Refund API

You can create a refund with the payment ID of the orginal charge transaction. For partial refund you need to provide the refund amount in a currency's smallest unit. For example, to refund 15 USD, provide an amount value of 1500 (that is, 1500 cents).

MoneyCollect.apiKey = "live_pr_Y1JBEp***XY";
RefundCreateParams params = RefundCreateParams.builder()
        .setAmount(1500L)
        .setReason(RefundCreateParams.RefundReason.REQUESTED_BY_CUSTOMER)
        .setPaymentId("pt_1456205483912692353").build();
Refund refund=  Refund.create(params);

Refund from dashboard

Refunds can be issued using your MoneyCollect Dashboard and are processed immediately. Once the refunds is initiated, it can’t be cancelled.

Steps to refund:

  1. Find the payment you want to refund in the payments overview page.

  2. Click the rightmost "•••" icon of the payments and select "Refund" button from the resulting menu.(You can also process batch refunds from the payments overview page by ticking multiple successful payments at the same time.)

By default, you’ll issue a full refund. We also support a partial refund, enter a different amount to be refunded.(But you can't refund an amount greater than the original charge amount.)

Select a reason for the refund and click "Refund". (If you select "Other", you must provide more details about the refund.) Clicking the "Refund" button from the payment details page to issue a refund is also supported on MoneyCollect Dashboard.

Refund destination

Refunds can only be returned to the original payment method used in the transaction. It’s not possible to send a refund to another destination (e.g. a different card or bank account).

Failed refunds

If a customer has closed their payment account or the customer’s bank/card issuer has been unable to process it correctly, the bank will return the refunded amount to us. At the same time,this refund will be marked as a failed refund with a given Failure_reason and the returned amount will be added to your available balence automatically.

You can set your webhook endpoint to received real-time notifications for failed refunds. For further actions please contact the MoneyCollect support team.

Refund tracking

After you initiate a refund, MoneyCollect will submit a refund request to your customer's bank or card issuer immediately. Your customer will receive the refund in about 5-10 business days, depending on the bank.

If the customer doesn't receive the refund, they may contact you. Customers may not be able to see the refund due to the following 2 reasons:

  • Failed refunds(For more information, please refer to "Failed refund"section).

  • Some refunds which are initiated shortly after the original charge – appear as "reversal" instead of "refund". For a reversal, the original charge drops off the customer’s statement, and a separate credit isn’t issued.

You can view a list of all refunds from MoneyCollect Dashboard.

Last updated