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.
Zuora allows you to create refunds on payments. To issue a 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.|