Receive payments on your Medusa commerce application using PayPal.
PayPal Plugin Documentation | Medusa Website | Medusa Repository
- Authorize payments on orders from any sales channel.
- Capture payments from the admin dashboard.
- View payment analytics through PayPal's dashboard.
- Ready-integration with Medusa's Next.js starter storefront.
- Support for Webhooks.
1. Run the following command in the directory of the Medusa backend:
npm install medusa-payment-paypal
2. Set the following environment variables in .env
:
PAYPAL_SANDBOX=true
PAYPAL_CLIENT_ID=<CLIENT_ID>
PAYPAL_CLIENT_SECRET=<CLIENT_SECRET>
PAYPAL_AUTH_WEBHOOK_ID=<WEBHOOK_ID>
3. In medusa-config.js
add the following at the end of the plugins
array:
const plugins = [
// ...
{
resolve: `medusa-payment-paypal`,
options: {
sandbox: process.env.PAYPAL_SANDBOX,
client_id: process.env.PAYPAL_CLIENT_ID,
client_secret: process.env.PAYPAL_CLIENT_SECRET,
auth_webhook_id: process.env.PAYPAL_AUTH_WEBHOOK_ID,
},
},
]
1. Run the following command in the directory of the Medusa backend to run the backend:
npm run start
2. Enable PayPal 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.