Medusa v2 plugin for Klaviyo event tracking and subscriptions.
Medusa v2 plugin for Klaviyo order event tracking, newsletter subscriptions, SMS list subscriptions, and an admin settings page.
1// medusa-config.ts2import { defineConfig } from "@medusajs/framework/utils"3
4export default defineConfig({5 plugins: [6 {7 resolve: "@oak-digital/medusa-plugin-klaviyo",8 options: {9 apiKey: process.env.KLAVIYO_API_KEY,10 orderReference: {11 field: "display_id",12 },13 },14 },15 ],16})is optional. By default the plugin sends .
If a specific Medusa app wants raw Medusa ids instead:
1{2 resolve: "@oak-digital/medusa-plugin-klaviyo",3 options: {4 apiKey: process.env.KLAVIYO_API_KEY,5 orderReference: {6 field: "id",7 },8 },9}You can also override both the property name and the value resolver:
1{2 resolve: "@oak-digital/medusa-plugin-klaviyo",3 options: {4 apiKey: process.env.KLAVIYO_API_KEY,5 orderReference: {6 propertyName: "medusa_order_ref",7 resolveValue: (order) => order.id,8 },9 },10}Set in the Medusa app environment, then run migrations:
npx medusa db:migrateThe admin settings page is available at in the Medusa Admin dashboard.
1pnpm install2npx medusa plugin:db:generate3npx medusa plugin:publish4pnpm devInstall the locally published package in a Medusa app:
npx medusa plugin:add @oak-digital/medusa-plugin-klaviyopnpm build