Fix Stripe charge settling: attach PM to customer on add, use CIT for subscription upgrades
When a card was added via billing page, it was only stored in the DB — never attached to the Stripe customer. This meant every charge was on an unattached PM, which Stripe processes differently. For subscription upgrades the user is actively present, so off_session=True was incorrect: it marks the charge as a Merchant-Initiated Transaction (MIT) which settles slower than Customer-Initiated (CIT). Other sites that use Stripe's frontend SDK do CITs, which is why their charges clear faster. - dashboard_add_payment_method_stripe: attach PM to Stripe customer and set as customer default immediately when the card is added - auto_charge: add off_session parameter (default True for existing auto top-up/renewal callers); document the distinction - dashboard_subscribe_tier: pass off_session=False so the upgrade charge is processed as a CIT and settles at normal speed
Showing
Please
register
or
sign in
to comment