Summary
- Stripe calculates subscription prorations at the update and assumes previous invoices will eventually be paid. If the current-period invoice is unpaid, a downgrade may grant credit for unused time on a higher-priced plan that the customer has not paid for.
- A negative proration is not an automatic cash refund. Stripe says an operator can set
proration_behavior=nonewhen the latest invoice is unpaid, then handle new charges and the old invoice deliberately; paying the old invoice later can otherwise create a double-payment problem.
The credit got there before the money
The sales team approves a downgrade. The billing system computes the unused portion of the old, more expensive plan and puts a credit into the subscription's invoice path. The accounts team opens the earlier invoice and finds it still unpaid. Two ledgers have now moved at different speeds: the customer has gained a reduction in what they may owe next, while the merchant is still waiting to collect what the customer owed before.
This is a documented Stripe behavior, not an exotic failure mode. Stripe says it calculates prorations when the subscription changes and assumes previous invoices will eventually be paid. An unpaid invoice for the current period can therefore coexist with a credit for unused higher-plan time. The word credit is doing heavy work. Stripe says negative prorations are not automatically refunded. A credit on a future invoice, a cash refund, and an unpaid receivable are three different entries; treating them as one number invites a very expensive reconciliation meeting.
The default subscription-update setting is create_prorations. It creates proration items, though they are not automatically invoiced in every case. always_invoice changes invoicing timing; none prevents the update from creating prorations. None of those labels answers whether the earlier invoice was paid. Before the downgrade request, the operator needs the latest invoice status and a decision on how to treat any unpaid period.
Stripe's own remedy is explicit: set proration_behavior=none when the latest invoice is unpaid. If the original billing period stays in place, new charges need a separate one-off invoice. If the billing cycle is reset to now, the new plan can be charged immediately. Stripe warns that either approach can produce double payment if the old invoice later gets paid; voiding that unpaid invoice avoids that result. The operator has to choose which receivable survives rather than let a default credit make the choice by accident.
For a merchant, the measurable test is an invoice pair, not a green “plan changed” badge. Record the old invoice status, the subscription update parameters, any credit proration item, and the next invoice's actual application of that credit. If the old invoice is still open, decide who owns collection and who owns the credit. The customer sees one downgrade. The merchant has to close two books.
Sources
Member Briefing
Deeper Profile Context
Sign in with the right membership level to unlock the full briefing and source notes.
Only for Strategic Circle
Strategic Circle
Open to all readers. Unlock profile briefings after joining and signing in.
Join Strategic CircleOnly for Leadership Alliance
Leadership Alliance
For qualified IP-asset owners and management; sign in to unlock alliance briefings.
Join Leadership Alliance





