Paid checkout fails for both the monthly and annual options.

Hi all,

I’m experiencing the same issue on a Ghost(Pro) Publisher site.

Paid checkout fails for both the monthly and annual options. The Ghost checkout endpoint returns a 400 Bad Request, and Stripe records the following error:

You specified a Stripe-Account header, but Managed Payments cannot be used with Connect.

I have confirmed that:

  • The Stripe account is fully activated with no outstanding verification requirements.
  • Managed Payments has not been enabled.
  • The issue occurs in both public and private site modes.
  • Both monthly and annual prices are active.
  • Disconnecting and reconnecting Stripe successfully recreated the webhook, but checkout still fails.
  • Ghost’s checkout request does not include a managed_payments parameter.

I’m also seeing a separate 400 response when Ghost attempts to update the Billing Portal configuration:

You cannot make any changes to a PortalConfiguration that was not created by your application, or to a PortalConfiguration that has is_default: true on a connected account.

This appears to be an issue with the Ghost–Stripe Connect configuration rather than the site’s tiers or theme. I have raised it with Ghost Support, but paid subscriptions are currently completely blocked.

Is anyone able to confirm whether this is a known issue with newly connected Stripe accounts, or whether an account-level change is required?

Since you’re using Ghost Pro, you should contact their support at support@ghost.org.

Hey @CONSTANT,

The issue is the Stripe Connect and Stripe Managed Payments are incompatible features.

We’ve just rolled out a fix to Ghost(Pro) that explicitly disables Managed Payments for all Stripe Checkout sessions created with Ghost (subscription, gifts, donations): 🐛 Fixed Stripe checkout failing for accounts with Managed Payments enabled by sagzy · Pull Request #29715 · TryGhost/Ghost · GitHub

Best,
Sag
Product Engineer @ Ghost