Short answer
A Stripe trial moves to the regular price automatically when it ends, and a card saved at signup is charged. To stop surprises, turn on the trial ending reminder email, make sure cancelling in your app cancels in Stripe, and for trials that take no card, choose to cancel or pause the subscription at the end instead of invoicing. Refund the payment from the Payments page if the customer didn’t mean to stay.
Rather not fix it yourself? App Fix Ticket starts with a fixed-price diagnosis, then a fixed price for the fix before any fix work.
Why the customer was charged, and the fix
01
The trial turned into a paid plan, as set up
“When the trial ends, the subscription automatically transitions to the regular price or another price you configure.” Stripe, Trial offers
Unless the subscription is set to end, the trial rolls into the paid price and Stripe bills the saved card soon after. Say so plainly on the signup page, with the date and the amount.
02
No reminder went out before the trial ended
“turn on Send a reminder email 7 days before a free trial ends to send a trial ending reminder.” Stripe, Customer emails
Stripe can email the customer before the trial ends, but the setting has to be on. Turn it on in the Dashboard under the subscription email settings.
03
They cancelled in the app, but not in Stripe
If cancelling the trial in your app only changes your own database, the subscription keeps going in Stripe and bills when the trial ends. Simon checks that the cancel button cancels the subscription in Stripe and that its status changes there.
04
A trial without a card still created an invoice
“Set missing_payment_method=cancel to cancel the subscription when it reaches the end of a trial without an available payment method.” Stripe, Use trial periods on subscriptions
Trials can start without a payment method. What happens at the end depends on a setting: by default Stripe creates an invoice, which goes past due if it can’t be paid. If a trial without a card should simply end, set it to cancel or pause instead.
Checked against the vendor’s docs on : Stripe docs: Trial offers; Stripe docs: Use trial periods on subscriptions; Stripe docs: Customer emails; Stripe docs: Refunds.
Rather hand it over?
Fixed scope, fixed price, paid upfront. The work happens in writing; no call needed.
- from $450App Fix TicketOne reproducible bug in an existing mobile or web app, diagnosed and fixed.See scope and start
- $950Stripe Billing Fix and SetupSubscriptions, webhooks, customer portal and failed payments set up or fixed, tested in Stripe test mode.See scope and start
- from $450AI-Built App RescueA Lovable, Bolt or Cursor app checked end to end in 3 days, then its worst problems fixed at a fixed price.No issues worth fixing, no charge. If the Launch Check finds nothing rated medium or higher, Simon refunds the full $450. You keep the report either way. This applies to the first 10 Launch Checks bought after October 30, 2026.See scope and start
“Very responsive, attentive to fixing bugs, and completed the project as needed! Thank you!”
Related: Stripe customer charged after cancelling · Stripe customer charged twice · Stripe dispute or chargeback · Stripe customers not getting receipts