10+
April 27, 2026
February 3, 2021
Notifications on Discord for Easy Digital Downloads delivers rich, color-coded notifications to any Discord channel whenever a payment status changes in your store. Whether you want to celebrate a new sale, catch a failed payment, or track abandoned checkouts – this plugin has you covered.
Order Notifications
Get notified for every EDD payment status: Complete, Pending, Processing, Revoked, Failed, Abandoned, Pre-Approved, and Cancelled. Each notification includes a color-coded embed along with the customer name, email, country, order value, and a list of products purchased.
Per-Status @Mentions
Specify @here, @everyone, or a Discord role ID for any individual status. Set a role ping on failed payments so your team gets alerted immediately, without pinging everyone for every order.
Custom Embed Colors
Every notification status has its own color picker in the settings. Each one comes pre-set to a sensible default (green for complete, amber for pending, red for failed, and so on), but you can change any of them to match your brand or make certain alerts stand out at a glance in Discord.
Test Button Per Webhook
Every webhook row has a built-in Test button. Click it to send a live test embed to Discord so you can confirm everything is wired up correctly before going live.
Notification Log
An optional log records every notification sent – including the payment number, status, products, order value, and the HTTP response code returned by Discord. Logs auto-purge after a configurable number of days (default: 7).
Developer Filter
* ppsndw_edd_discord_payload – modify the full Discord payload before it is sent
Each status has its own webhook field, so you can route notifications to different Discord channels. Send all sales to #orders and failed payments to #alerts.
Need more help? See the official guide: Intro to Webhooks
Discord webhooks only accept requests from publicly accessible URLs. If your site is running locally (e.g. on localhost or a private staging environment), Discord cannot reach it and notifications will silently fail. Deploy to a live, publicly accessible server and test again.
Each status row has its own Webhook URL field. Simply paste a different webhook URL for each status to route them to separate channels.
Yes. Paste the same webhook URL into every status row you want to enable. All notifications will go to the same channel.
In the Mention column next to the Failed status, enter @here, @everyone, or a Discord role ID in the format <@&123456789012345678>. That mention will be included in the notification message so the right people get alerted immediately.
Enable Developer Mode in Discord (User Settings > Advanced > Developer Mode), then right-click any role in Server Settings > Roles and click Copy Role ID.
Double-check the webhook URL – even a single extra character will cause it to silently fail. Also make sure the webhook hasn’t been deleted in Discord. You can verify by opening the channel’s Integrations settings and confirming the webhook still exists.
Yes. Use the ppsndw_edd_discord_payload filter to modify or replace the payload array before it is sent. The filter receives the full payload array and a context array with the order details.
Go to Downloads > Discord Notifications > Logs tab and uncheck Enable Logging, then save. Existing log entries are kept but no new ones will be written. You can purge all existing entries using the Purge All Logs button.
Not by default. To remove all plugin settings, the log table, and scheduled events on deletion, go to the Logs tab and enable Delete Data on Uninstall before deleting the plugin.
Yes. The plugin is translation-ready and loads its own text domain. All static text can be translated using standard WordPress translation tools. Customer names, product names, and payment data are passed through as-is from Easy Digital Downloads.