HyperSwitch payment processor plugin for Medusa v2 — unified checkout, webhooks, refunds, and admin configuration.
Medusa v2 payment plugin for HyperSwitch — unified checkout, webhooks, refunds, proxy support, and an admin configuration UI.
Follow these steps in your Medusa store project (the app where you run ), not in this plugin repository.
1npx create-medusa-app@latest my-medusa-store2cd my-medusa-store
From your Medusa application root directory, install the plugin:
npm install medusa-payment-hyperswitch
Or with another package manager:
1yarn add medusa-payment-hyperswitch2# or3pnpm add medusa-payment-hyperswitch
This installs the plugin and its runtime dependencies (, , , and admin UI packages). Your Medusa app must already satisfy the peer dependencies (, , etc. at v2.15+).
Local development: To test unpublished changes from this repo, use after running in the plugin repo. See Local plugin development.
Generate a 32-byte key for encrypting secrets stored by the plugin:
openssl rand -base64 32
Add it to your :
HYPERSWITCH_HASH_KEY=your-generated-base64-key-here
Update :
1import { loadEnv, defineConfig } from "@medusajs/framework/utils"23loadEnv(process.env.NODE_ENV || "development", process.cwd())45module.exports = defineConfig({6 projectConfig: {7 databaseUrl: process.env.DATABASE_URL,8 http: {9 storeCors: process.env.STORE_CORS!,10 adminCors: process.env.ADMIN_CORS!,11 authCors: process.env.AUTH_CORS!,12 jwtSecret: process.env.JWT_SECRET || "supersecret",13 cookieSecret: process.env.COOKIE_SECRET || "supersecret",14 },15 },16 modules: [17 {18 resolve: "@medusajs/medusa/payment",19 options: {20 providers: [21 {22 id: "hyperswitch",23 resolve: "medusa-payment-hyperswitch/providers/hyperswitch",24 },25 ],26 },27 },28 ],29 plugins: [30 {31 resolve: "medusa-payment-hyperswitch",32 options: {33 key: process.env.HYPERSWITCH_HASH_KEY,34 },35 },36 ],37})
1npx medusa db:migrate2npm run dev
To work on the plugin itself and test it in a Medusa store:
1git clone https://github.com/Ayyanaruto/hyperswitch-medusajs-plugin.git2cd hyperswitch-medusajs-plugin3pnpm install4pnpm build5npx medusa plugin:publish
In your Medusa store:
npx medusa plugin:add medusa-payment-hyperswitch
Keep running in the plugin repo during development so changes are republished automatically.
From the plugin repository:
1pnpm build2npm publish
The script runs the build automatically before publish.
MIT