One challenge of running a subscription business is your subscribers’ payment dates. If you use Stripe to process your recurring payments and don’t know PHP, it’s almost impossible to change a subscriber’s billing date. Here’s a simple workaround to make this change without using a single line of PHP code.

I like knowing how many people are subscribed for a given month as far in advance as possible. It’s difficult to do that when people sign up in mid-February, receive February’s subscription, and do not have to pay again until mid-March for March’s subscription. This can put you in the vulnerable position of sending products before receiving payment, leading to inconsistent cash flows and unreliable revenue projections over time. I started a subscription business precisely so that I don’t have to waste time hounding customers to pay invoices. 

Note: You can ignore this warning if your customers never experience problems with their payment method. Life has taught me otherwise.

Here’s how you do it.

1. Find the subscription in your Stripe dashboard

2. Click “Update subscription”

3. Uncheck “Prorate changes”

4. Delete the current subscription

5. Click “Add a product” and choose the new subscription for your customer (for me, it’s the same subscription with the same interval and price)

6. Click “Add trial” and enter the number of days between the current date and the date you want their next payment to process. For instance, today is March 1. If I wanted Strip to process payment on the 15th, I would enter 14 for the trial period.

7. Click “Update subscription” and check to make sure the next invoice will charge the correct amount on the correct date. This will be right under your customer’s name on their subscription page.

And that’s it! Keep in mind, this method works best for customers who have already paid for the current month’s subscription. That means that it’s best to change your subscriber’s billing date shortly after payment has processed. 

Leave a Reply

Your email address will not be published. Required fields are marked *