#zachdini-subscription-invoices
1 messages · Page 1 of 1 (latest)
Hey there!
We looked into voiding invoice X before updating the subscription but that appears to move the subscription into status: past_due.
That's likely due to your Dashboard settings: https://dashboard.stripe.com/settings/billing/automatic
Sign in to the Stripe Dashboard to manage business payments and operations in your account. Manage payments and refunds, respond to disputes and more.
Can you share a specific example?
This would result in a credit for the customer because they were getting prorated for their subscription, even though invoice X hasn't been paid yet.
Yep, this is expected although a little confusing for merchants. The system basically 'assumes' that all invoices will be paid at some point and such the proration credit is applied.
Hey, thanks for the reply! When you ask for a specific example, do you mean a link to my customer in the dashboard? Or what?
Yeah, or a sub_xxx
cus_HGCdfMULAOCfjL
The log req_jgN57dWOPNmG1i is where the customer updated their subscription and we passed proration_behavior: 'none'.
The outstanding invoice that eventually got paid is in_0L0BoLoomZdVFM25iLnrcIx2
What you're describing is expected behaviour really, there's no 'bug'. You need to manage the invoices independently because, as I said, the subscription defaults to expecting them both to be paid
We looked into voiding invoice X before updating the subscription but that appears to move the subscription into status: past_due.
https://stripe.com/docs/billing/subscriptions/overview#voiding-invoice
Is there a way to say "If a customer updates their subscription while an invoice is being retried, ignore the first invoice"?
You can't, no. Because as I said the subscription just assumes they're both still due, each invoice has no context of each other really.
You'd need to void it in that case, the past_due status would be temporary until the newer invoice was paid.
Okay great, thank you