• Модуль интеграций
  • Сообщество
  • Блог
Документация
Плагины и интеграцииВсе расширения для Medusa от сообществаСтартерыЗапускайте проекты быстрее с готовыми решениями
ЭкспертыПодберите специалиста для разработки и развития вашего проекта на MedusaКейсыПосмотрите примеры Medusa в продакшене и успешные внедрения
Представляем готовый к продакшену Medusa DTC Starter от Gorgo

26 августа 2026 г. · Продукт

Gorgo снижает затраты на адаптацию Medusa к локальным рынкам.

Мы разрабатываем плагины интеграции, осуществляем поддержку и развиваем сообщество разработчиков на Medusa в Telegram.

  • Ресурсы Medusa
  • Плагины и интеграции
  • Модуль интеграций
  • Стартеры
  • Эксперты
  • Кейсы
  • Medusa Чат в Telegram
  • Medusa Новости в Telegram
  • Документация Gorgo
  • Связаться с нами
  • TelegramGitHub
Плагины
D

Discord

Отправляйте уведомления в Discord через вебхуки по событиям магазина Medusa, с динамическими настройками.

npm install @sam-ael/medusa-plugin-discord
Категория
Уведомления
Создано
Sam-ael
Версия
0.2.1
Последнее обновление
3 месяца назад
Ежемесячные загрузки
Загрузка данных
Звезды на Github
1
npmNPMGitHubGithub

@sam-ael/medusa-plugin-discord

A Discord webhook notification plugin for Medusa v2. Route store events to your Discord channels with rich embed cards that automatically update in-place as order status changes — from placed → fulfilled → shipped → completed or canceled.

Features

  • Live Message Editing — One message per order, edited in place as status changes. No channel spam.
  • Shipment & Tracking — Displays tracking numbers and links as clickable Discord markdown when an order is shipped.
  • Premium Rich Embeds — Beautiful default embed cards with color-coded status badges (🟡 Pending → 🚚 Shipped → 🟢 Completed → 🔴 Canceled).
  • Custom Markdown Templates — Write your own message templates using Discord Markdown with .
  • Configurable Bot Name — Set a global fallback bot name via plugin config or env var, and override per-channel from the Admin UI.
  • Interactive Admin UI — Manage all webhook mappings and templates directly from the Medusa Admin panel settings.
  • Placeholder Sidebar — Click a field (e.g. , ) to insert it at your cursor in the template editor.
  • Price Formatting — Automatically converts price fields from Medusa's integer cents to human-readable decimals.
  • Multiple Event Triggers — Supports order, fulfillment, shipment, and customer events.

Installation


Setup

1. Add to

2. Set Environment Variables (Optional)

3. Run Migrations

npx medusa db:migrate

Admin UI

Navigate to Settings → Discord Notifications in the Medusa Admin panel.

Webhook Mapping Fields

FieldRequiredDescription
Event Trigger✅Which Medusa event fires this webhook
Discord Webhook URL✅Full Discord webhook URL
Channel Label❌Friendly label (e.g. ) — display only
Bot Name❌Override the bot's display name for this channel. Falls back to plugin option →
Custom Message Template❌Discord Markdown template. Leave blank for default rich embed.
Enabled✅Toggle to activate/deactivate without deleting

Message Lifecycle (In-Place Editing)

The plugin stores the Discord returned when an order notification is first posted. All subsequent events for the same order edit that same message rather than posting new ones.

If the original Discord message is manually deleted, the plugin automatically posts a fresh message and saves the new .


Supported Events

EventDescription
New order placed
Fulfillment created for an order
Shipment created with tracking info
Order marked as completed
Order canceled
Order updated
New customer registered
Customer profile updated

Template Placeholders

Order Events

PlaceholderDescription
Order ID
Human-readable order number
Order status
Order total (formatted as decimal)
Subtotal (formatted as decimal)
Currency code (e.g. )
Customer email
Payment status
Fulfillment status
, , or
Comma-separated tracking numbers
Tracking numbers as clickable Discord markdown links
Shipping first name
Shipping last name
Shipping city
Customer account email

Customer Events

PlaceholderDescription
Customer ID
Email address
First name
Last name
Phone number

Plugin Options


Admin API Reference

MethodEndpointDescription
List all webhook mappings
Create a new webhook mapping
Update a webhook mapping
Delete a webhook mapping
Send a test notification using mock data

Mapping Payload


Development


License

MIT

Еще в этой категории

Посмотреть все
Уведомления
Nodemailer logo

Nodemailer

От Perseides

Отправляйте email-уведомления через Nodemailer (SMTP)

Загрузка данных
npm
Уведомления
Mailgun logo

Mailgun

От Webbers

Отправляйте и управляйте уведомлениями по электронной почте

Загрузка данных
GitHubnpm
Уведомления
Postmark logo

Postmark

От Bram-hammer

Транзакционные письма через Postmark

Загрузка данных
GitHubnpm

Еще от этого автора

Посмотреть все
Платежи
P

Payu

От Sam-ael

Интеграция платёжного шлюза PayU India для Medusa v2 со сценарием редиректа.

Загрузка данных
GitHubnpm
Уведомления
W

Whatsapp

От Sam-ael

Отправляйте шаблонные сообщения WhatsApp Business по событиям магазина Medusa.

Загрузка данных
GitHubnpm
Уведомления
M

Mailer

От Sam-ael

Отправляйте email-уведомления по событиям магазина Medusa через SMTP, настраивая их прямо в интерфейсе.

Загрузка данных
GitHubnpm
yarn add @sam-ael/medusa-plugin-discord
1import { DiscordNotificationOptions } from "@sam-ael/medusa-plugin-discord/modules/discord-notification"
2
3plugins: [
4 {
5 resolve: "@sam-ael/medusa-plugin-discord",
6 options: {
7 // Global fallback bot name. Can also be set via env var (see below).
8 // Per-mapping bot names set in the Admin UI take priority over this.
9 defaultBotName: process.env.DISCORD_DEFAULT_BOT_NAME || "Discord Bot",
10 } satisfies DiscordNotificationOptions,
11 },
12],
1# .env
2DISCORD_DEFAULT_BOT_NAME="My Store Bot"
1order.placed → POST new message → message_id saved to DB
2order.fulfillment_created → PATCH same message → status updated to "Fulfillment Created 📦"
3fulfillment.shipment_created → PATCH same message → status + tracking links shown 🚚
4order.completed → PATCH same message → status "Completed ✅" (green)
5order.canceled → PATCH same message → status "Canceled 🔴" (red)
1type DiscordNotificationOptions = {
2 /**
3 * Global fallback bot username shown in Discord when no
4 * per-mapping bot_name is configured in the Admin UI.
5 * Defaults to "Discord Bot".
6 */
7 defaultBotName?: string
8}
1{
2 "event_name": "order.placed",
3 "webhook_url": "https://discord.com/api/webhooks/...",
4 "channel_name": "#orders",
5 "bot_name": "Enchauntee Sales Bot",
6 "is_active": true,
7 "message_template": "📦 New order **#{display_id}** from **{email}** — **{total} {currency_code}**"
8}
1yarn typecheck
2yarn build