Search code examples
stripe-paymentssubscriptionbilling

Pausing and unpausing a payment collection on stripe


I'm working on stripe subscription and trying to build a flow using which admin can pause and unpause the payment collection of customers. To achieve this I'm using this from stripe documentations.

Now the major issue which I'm facing with this method is. Suppose a customer is on monthly subscription and is billed on 1st of every month. Admin has paused the customer's billing on 15th October and Unpaused it on 15th November. Now the upcoming invoice shows that customer will be billed on 1st December for the upcoming cycle.

My questions are:

  1. Is there any way I can charge customer for the period of 16th-30th November which customer used.(Somehow adjusting amount on the 1st December invoice)
  2. And the period of 16th-31st October, for which Customer has already paid on 1st October, can be uncharged/adjusted somehow.

Thanks


Solution

  • Instead of pausing, which does not take into account prorated amounts or credits, I recommend canceling the Subscription instead of pausing it. You can use the prorate parameter when canceling Subscriptions to issue a credit to the Customer for the unused time.

    Later, when you want to resume payments, create a new Subscription for the Customer and specify a billing_cycle_anchor set to the first of the month. That will charge them for the partial month up front followed by full monthly Invoices starting on the first of every month.