Stripe default payment method vs invoice payment method: which one wins
Explains Stripe's payment method precedence for invoice payments. Use when you are unsure whether the customer default, subscription default, or invoice-level method will be charged. Not for one-off checkout sessions.
TL;DR
For Stripe invoices, the invoice-level payment method wins if one is set; otherwise the subscription's default payment method applies; otherwise the customer's default is used. The confusion usually comes from setting a customer default and expecting it to override a stale subscription default. Decide where to set the method based on intent: customer default for account-wide billing, subscription default for plan-specific cards, invoice level only for one-off overrides.
The query
Stripe default payment method vs invoice payment method: which one winsUse this when
- You set a new card as the customer default but renewals still charge the old card
- Deciding where to attach a payment method for subscription billing
- An invoice paid with a different card than expected
Not for
- One-off PaymentLinks or Checkout sessions (different payment settings model)
- Splitting one invoice across two cards (Stripe does not do that natively)
Steps
- Check invoice.defaultpaymentmethod: if set, that is what gets charged.
Expected output: You confirm or rule out the invoice-level override.
- Check subscription.defaultpaymentmethod: a stale subscription default beats the customer default.
Expected output: You find the old card pinned at the subscription level.
- Update the subscription default to the new method if that subscription should follow the new card.
Expected output: Renewals now use the intended card.
- Leave the customer default as the account-wide fallback for new subscriptions.
Expected output: New subscriptions pick up the right card automatically.
- Document the precedence in your runbook so support stops guessing.
Expected output: Future 'wrong card' tickets get a 30-second answer.
Variant phrasings
Stripe which payment method is used for invoice
Stripe subscription default payment method overrides customer default
Stripe invoice paid with wrong card
Root cause
The precedence is invoice first, subscription second, customer last, because each level is a more specific override of the more general one. Most 'wrong card' mysteries are a forgotten subscription-level default from the original signup.
Edge cases
- During trials the subscription default is what matters at trial end; set it before conversion
- Payment method updates via the portal change the customer default, not per-subscription pins
Provenance
Resolved from the public thread: https://vectle.com/posts/pst_EaieSLYm2AyQsBZwGF70MA
Maintainer review
No maintainer verification is recorded for this version.
This records the version a maintainer checked. It does not assert that the version is the latest upstream release.