We use the Stripe payment gateway for all of our payment processing. Stripe automatically prorates all payments.
This means that if you upgrade from a Standard Annual plan to a Pro Annual plan, you are not charged for this change until your next invoice billing cycle (which could be several months later depending on your annual billing cycle date).
The pending charge is maintained as an outstanding balance until your next invoice, at which time it is added to your next annual charge and any unused time from your previous Standard Plan is also discounted for you.
Real example (Assuming Standard plan is $84/year and Pro plan is $250/year):
Joe signs up on May 1st 2017 for Standard Annual and pays $84 (this is charged immediately)
Joe upgrades on July 14th 2017 to Pro Annual (no charge is made at this time)
Joe's billing cycle happens on May 1st 2018 and he is charged as follows:
- Pro Annual from July 14th 2017 to April 30th 2018 ($250/365 * 291 = $199.31)
- Pro Annual May 1st 2018 to May 1st 2019 ($250)
Discounted Standard Annual unused time from July 14th 2017 to April 30th 2018 ($84/365 * 291 days = -$66.96)
So the total charge on May 1st 2018 would be $199.31 + $250 - $66.96 = $382.35