How Long Do I Have to Refund a Payment?
Zuora allows you to refund payments via the Zuora user interface or the SOAP API. There is sometimes a need to refund a customer long after a payment has been processed. For example, if a customer with an annual subscription has paid through the end of this year, but wants to cancel after only ten months of service. A merchant might decide to issue this customer a refund for the remaining two months of service.
In Zuora, a payment can be refunded at any time and there is no limitation. However, for electronic payments, the timeframe to refund a payment is primarily controlled by the payment gateway ("gateway"). Typically, a payment can be refunded for up to 90 days, but every gateway is different and some gateways do not allow refunds after 30 days. Some payment gateways can also have a longer time limit, depending on how the refund is performed. For example, a refund via the API can have a shorter time limit than a refund via the virtual terminal.
When processing a refund for electronic payments, Zuora will attempt the refund at the gateway. If the refund is allowed by the gateway, the refund will be processed. However, if the time period in which a refund can performed has passed, then the gateway might return an error. For example, PayPal might return the following error if a refund is attempted more than 60 days after the payment transaction was processed:
10009-You are over the time limit to perform a refund on this transaction.
If you attempt an electronic refund and receive an error that the gateway will not support an electronic refund for that payment, you can perform a non-referenced refund directly in the gateway. In this case, you must enter the credit card information and perform a refund (a refund may also be referred to as a "credit" by some gateways).
A non-referenced refund or credit is a refund transaction that does not use the credit card information from an existing payment transaction. If you cannot obtain the customer's credit card information for a non-referenced refund, another option is to issue a manual check using your Accounts Payable process. When performing a refund outside of Zuora (such as creating a refund directly in the gateway's virtual terminal), remember to reflect that refund within Zuora as an external refund.
Creating a Payment Refund
Zuora allows you to create refunds on payments. To issue a refund:
- Navigate to Payments > Payments.
- In the payments list, select the payment for which you want to issue a partial or full refund.
- On the payment detail page, click more > Refund this payment. In the dialog that is displayed, click OK.
This opens a new page where you can create a new refund. This page has the original payment details populated as well as the invoices associated with the original payment.
- Select a Refund Type: External Refund or Electronic Refund.
- The Refund Type defaults to the type in which the original payment was made. For electronic payments, you can choose to issue a refund electronically or via an external method (for example, check). If the original payment was an external payment, you will only have the option of creating an external refund.
- If you have issued a refund directly within your gateway for a payment which was processed in Payments, you can track that refund by creating an external refund in Payments.
- Optional: Select a Reason Code for the refund.
Reason codes are a way that you can include additional information or business process context on payment operations transactions. This list contains all of the payment refund reason codes that are active in your Zuora tenant. See Reason Codes for Payment Operations for detailed information about reason codes.
- Under Transaction(s) associated to the Original Payment, keep the check box associated with the Transaction Number (the invoice number associated with the original payment) selected. This pre-populates the Refund Amount with the full payment amount. Edit the value in the Refund Amount field to change the amount you want to refund.
- Click create refund to process the refund, or click create refund and adjust invoice items to create a partial refund.
This topic describes how to troubleshoot problems with refunds.
The following response codes can be returned by the Authorize.net gateway.
|Response Code||Response Reason Code||Response Reason Text||Notes||Next Steps|
|3||11||A duplicate transaction has been submitted.||A transaction with identical amount and credit card information was submitted two minutes prior.||Wait 2 minutes before creating another refund for the same account.|
|3||54||The referenced transaction does not meet the criteria for issuing a credit.||None||A refund can only be issued once a payment has settled. If the payment has not settled, you can void a payment instead of issuing a refund.|