Files
medusa-store/packages/medusa-payment-stripe
Didier Guyon 186b7d2773 fix(medusa-payment-stripe): Added withTransaction to capturePaymentIfNecessary (#3930)
* Added withTransaction to capturePaymentIfNecessary

* Removed catch from idempotencyKey.retrieve in completeCartIfNecessary

* Synced with upstream develop branch

---------

Co-authored-by: Didier Guyon <didierguyon@Didiers-MacBook-Pro.local>
Co-authored-by: pepijn-vanvlaanderen <pepijn@webbers.com>
2023-05-18 08:46:09 +02:00
..
2023-05-16 11:03:47 +02:00
2023-05-16 11:03:47 +02:00

Stripe

Receive payments on your Medusa commerce application using Stripe.

Stripe Plugin Documentation | Medusa Website | Medusa Repository

Features

  • Authorize payments on orders from any sales channel.
  • Support for Bancontact, BLIK, giropay, iDEAL, and Przelewy24.
  • Capture payments from the admin dashboard.
  • View payment analytics through Stripe's dashboard.
  • Ready-integration with Medusa's Next.js starter storefront.
  • Support for Stripe Webhooks.

Prerequisites


How to Install

1. Run the following command in the directory of the Medusa backend:

npm install medusa-payment-stripe

2. Set the following environment variables in .env:

STRIPE_API_KEY=sk_...
# only necessary for production
STRIPE_WEBHOOK_SECRET=whsec_...

3. In medusa-config.js add the following at the end of the plugins array:

const plugins = [
  // ...
  {
    resolve: `medusa-payment-stripe`,
    options: {
      api_key: process.env.STRIPE_API_KEY,
      webhook_secret: process.env.STRIPE_WEBHOOK_SECRET,
    },
  },
]

Test the Plugin

1. Run the following command in the directory of the Medusa backend to run the backend:

npm run start

2. Enable Stripe in a region in the admin. You can refer to this User Guide to learn how to do that. Alternatively, you can use the Admin APIs.

3. Place an order using a storefront or the Store APIs. You should be able to use Stripe as a payment method.


Additional Resources