Stripe vs a commerce backend: what Stripe doesn't handle
- Type
- Applies to
- Medusa v2.x
- Updated
Short answer
Stripe handles payments, not the rest of a store. With Stripe plus Postgres and Prisma, you build the cart, shipping, inventory, promotions, order lifecycle, returns, and admin yourself. Medusa is an open source commerce backend that ships those as modules and uses Stripe as its payment provider, so you keep Stripe and skip rebuilding order management.
What Stripe handles and what it leaves to you
Stripe handles payments: card and wallet processing, Checkout pages, Elements, Stripe Tax, and subscription billing. A store also needs a product catalog with variants, a cart, shipping rates, stock levels, promotions, an order record that changes after payment, returns, and an admin where staff do this work. With "Stripe + Postgres + Prisma", those parts are your schema and your code.
Medusa is an open source commerce backend that ships those parts as commerce modules and uses Stripe as its payment provider. So the choice is not Stripe or Medusa. It is Stripe plus your own commerce code, or Stripe plus Medusa.
What you build yourself on Stripe and Prisma
The table lists the commerce parts a Stripe-only store needs, and where each comes from in Medusa. Status labels: Native means Medusa core, Official guide means a docs tutorial with example code, Custom means you build it.
How Medusa uses Stripe as the payment provider
Medusa's Payment Module talks to payment processors through module providers. The Stripe Module Provider is installed by default; you register it in Copy to clipboardmedusa-config.ts with your Stripe secret key:
123456789101112131415// medusa-config.tsmodules: [{resolve: "@medusajs/medusa/payment",options: {providers: [{resolve: "@medusajs/medusa/payment-stripe",id: "stripe",options: { apiKey: process.env.STRIPE_API_KEY },},],},},],
You then enable Stripe in a region in the Medusa Admin. During checkout, the storefront creates a payment session, which gives it a Stripe client secret for Stripe's UI. Completing the cart creates the order and authorizes the payment. Payments are captured later from the admin unless you set the Copy to clipboardcapture option to Copy to clipboardtrue. For deployed apps, you register Medusa's webhook route (Copy to clipboard/hooks/payment/stripe_stripe for basic Stripe payments) in Stripe with the Copy to clipboardwebhookSecret option.
The provider also registers Stripe methods such as Bancontact, BLIK, iDEAL, Przelewy24, PromptPay, and OXXO as separate providers. The Copy to clipboardautomatic_payment_methods option supports wallets like Apple Pay and Google Pay. See the Stripe Module Provider docs for all options.
Stripe fees with and without Medusa
Stripe's processing fees apply either way. The US rate for domestic cards is 2.9% + 30¢ per successful transaction, and Stripe Tax has its own pricing, per Stripe's pricing page. Medusa's core is MIT licensed. If you host it on Medusa Cloud, plans start at $29/month (Develop), $99 (Launch), and $299 (Scale), with a 0% GMV fee.
When Stripe alone is the right choice
- You sell a handful of digital products, licenses, or one subscription plan with no shipping.
- You don't need stock levels, returns, or an admin beyond the Stripe Dashboard.
- You want the least infrastructure: no database for orders and no second service.
Stripe plus Prisma also works when your commerce rules are small and stable. The cost shows up later, when you add a second currency, partial refunds, exchanges, or staff who need to edit orders. That is the point where a commerce backend like Medusa saves you from rebuilding order management, and you keep Stripe as the processor.
Common questions
Does Medusa replace Stripe?
No. Medusa uses Stripe as a payment provider through its Stripe Module Provider, so Stripe still processes payments and charges its own fees. Medusa adds the catalog, cart, inventory, orders, and admin around it.
Does Medusa charge a transaction fee on top of Stripe?
No. Medusa's core is MIT licensed, and Medusa Cloud plans have a 0% GMV fee, with plans starting at $29/month. Stripe's processing fees still apply.
Which Stripe payment methods does Medusa support?
Medusa's Stripe Module Provider registers basic Stripe card payments plus Bancontact, BLIK, giropay, iDEAL, Przelewy24, PromptPay, and OXXO as separate providers. Its automatic_payment_methods option supports wallets such as Apple Pay and Google Pay.
Do I need Stripe webhooks with Medusa?
Yes, for deployed Medusa applications. You register Medusa's /hooks/payment/{provider_id} route in Stripe, for example /hooks/payment/stripe_stripe, and set the webhookSecret option.