Zuora allows you to retry payments on a scheduled basis by using scheduled payment runs which will process any invoices that have not been fully paid for customers who have auto-pay enabled. You can also specify the maximum number of consecutive times a failed payment method (for example, credit card) is retried for payment, as well as the ability to define a time period to not retry a payment. For instance if you define the interval as 8 hours, an automated payment retry will not attempt a payment if the last failed payment was less than 8 hours ago.
Handling Failed Payments
In instances where the payment fails based on the retry rules you set, you must determine the appropriate action to take with those accounts. If your process is to "downgrade" the customer or cancel them, you must also take the corresponding action within Zuora to execute the business logic you deem appropriate.
Because every company uses different policies to handle failed payments, Zuora does not perform any actions automatically when a payment fails. To handle payment failures, you should determine whether you want to cancel the subscription (and cancel in Zuora), or call the customer and ask for a new payment method, suspend service, or perform another action.
Configure Payment Method Retry Rules
To configure your payment retry rules,
- Access the Setup Payment Gateway page by navigating to Settings > Z-Payments Settings, then click Configure Payment Retry Rules.
- Select Enable Payment Run retry rules to configure your payment run retry rules.
- Specify the Maximum number of payment failures per Payment Method allowed by entering a whole number between 1 to 100 in the field to the right. Alternatively, you can leave this box blank. However, if you do not enter a value, you must specify a value in the next step to indicate a time interval for your payment retry.
The counter for the Maximum number of payment failures per Payment Method allowed begins on April 13, 2010. This is the date the payment retry configuration became available.
- To specify the time interval in which you want to retry your payment, enter a whole number from 1 to 1000 to indicate the number of hours that must pass after the last payment attempt before the next payment retry takes place. The number of hours must be entered in the field Do not retry payment if last payment attempt was less than __ hours(s) ago. Alternatively, you can leave this box blank. However, if you do not enter a value, you must enter a value (in the previous step) to indicate the maximum number of payment failures allowed per payment method.
Specifying a time interval in which to retry your payment run prevents a payment attempt if the last failed payment was within the last 'number' of hours. For example, if the last failed payment was at 1PM and the retry interval is 4 hours, then a Payment Run at 2PM will not attempt a payment, but a Payment Run at 6PM will retry payment.
If you want to retry "once a day," Zuora recommends that you enter 22 or 23 hours as it is possible for a payment to be attempted at the end of the payment run on one day and the beginning of the payment run the next day.
What if a customer reaches the maximum number of failed attempts?
If you set the Payment Method Retry Rules to allow a maximum number failed payments attempts, once that number is reached Zuora will stop using the account's Default Payment Method to perform payment attempts. If you want to use this payment method to process payments, you can reset the Consecutive Failed Payments number by clicking the [Reset] link next to the failed payment number.
If a customer has entered a new, valid payment method, you can change the Default Payment Method of this account to the new payment method. The next payment run will use the new payment method to collect payment.
If you set a new default payment method is set, the Consecutive Failed Payments is reset automatically. The number of consecutive failed payments is per payment method. In addition, Consecutive Failed Payments will reset to 0 once a successful payment has been made with the payment method.
As of WSDL version 28.0, you can use the Zuora API to update (reset) Consecutive Failed Payments to 0. Use the update() call to update the
NumConsecutiveFailures field to
Prevent a Retry Attempt
To prevent a payment retry attempt after the initial attempt failed:
- Configure the Payment Run retry rules.
1for the Maximum number of payment failures per Payment Method allowed.
- Do not enter a value for the Do not retry payment if last payment attempt was less than field.
Once the Payment Method that is set as default on the Account Level has failed to process a successful payment, the next payment run will not try to process a payment for this account.