Subscription Overview with PHP
If your subscription has a trial period, billing will begin at the end of that trial period. If your subscription does not have a trial period, you can opt to start billing immediately, on a specific date, or a specific day of the month in the future. If you select a day in the future the subscription will be in “Pending” status. Subscriptions that bill immediately or are in a Trial period have a status of “Active”.
If your subscription is set up to bill immediately and the transaction fails the subscription will not be created. If your subscription is “Active” and in a Trial Period or in “Pending” status and fails to successfully bill on the first billing date the status of the subscription will go to “Past Due”
When we bill subscriptions, they are submitted for settlement immediately.
Pending subscriptions are subscriptions that have not started yet. For example, if you create a subscription with an explicit first bill date or a specific billing day of month that is in the future, the subscription will start out in pending status.
Active subscriptions will be charged on the next billing date. You can get the dates from the subscription details. Subscriptions in a trial period are in active status.
If a payment for a subscription fails, the subscription status will change to past due. You can manually retry the charge when you want, or you can configure the system to automatically retry for you. Additionally, if the payment method associated with the subscription is updated, and you have proration enabled in your processing options or are passing the prorate charge option, we will automatically retry. The subscription will go back to active if a transaction is successful and has not passed its last billing date. If the transaction is not successful the past due subscription will continue to have it’s balance increased every billing cycle indefinitely or until their specified number of billing cycles is reached. We will also try to create a transaction for the balance every billing period when the balance is updated. If it has passed its last billing date the status will be updated to expired. Otherwise, it will stay past due until canceled.
Subscriptions change to expired status when they have reached the total number of billing cycles if provided.
If you cancel the subscription, the status will become canceled and no more billing will occur.
Each subscription day runs from midnight to midnight in the time zone associated with your merchant account, no matter what time of day the subscription is created. For instance, a subscription created at 11pm in your time zone will be on its second day at midnight.
The gateway can send emails to customers based on recurring billing events. You’ll need to set up your DNS record to allow the gateway to send email from your domain, and then contact Braintree to enable this feature.
In the Control Panel there is a Processing Option under recurring billing that allows you to determine if you would like to automatically retry failed transactions. If this is enabled, you will be able to select when we should attempt the first retry. You can select values from 1 day up to 10 days. If the first retry fails, there is a second retry that you can configure as well. Finally, if both retries fail, you have the option of canceling the subscription, continuing to retry or to leave the subscription past due. Manual retries done in the Control Panel will not count as an automatic retry attempt.
If a subscription has a positive balance that is enough to cover the charge, the subscription will bill successfully without actually charging a credit card. Similarly, if a subscription transaction was hard declined, the retry count will be incremented without attempting to run another transaction.