Easy Digital Downloads Integration: Triggers, Actions, and Automation Examples
Krom Automation Pro connects to Easy Digital Downloads (EDD) and its two most popular add-ons: EDD Recurring Payments and EDD Software Licensing. Together, these give you 13 triggers and 6 actions covering the full EDD customer lifecycle — purchases, refunds, payment failures, subscriptions, license activations, license expiry, and renewals.
No API key or configuration is required. Krom Automation detects EDD and its add-ons automatically when they are active.
Requirements #
- Krom Automation Pro installed and activated
- Easy Digital Downloads installed and active
- EDD Recurring Payments (optional, required for subscription triggers)
- EDD Software Licensing (optional, required for license triggers)
Each trigger group only appears when the corresponding plugin is active. You don’t need all three to use the integration.
EDD core triggers #
Purchase Completed
Fires when an EDD payment is completed successfully. This is the primary trigger for post-purchase automations.
| Data field | Description |
|---|---|
payment_id | EDD payment ID |
payment_total | Total amount paid |
currency | Currency code |
gateway | Payment gateway used |
customer_email | Customer email address |
customer_first_name | Customer first name |
customer_last_name | Customer last name |
downloads | Array of purchased downloads (each with name and price) |
Common use: Sending a purchase thank-you email with download access details, triggering a post-purchase email sequence, or adding the customer to a Mailchimp audience.
Purchase Refunded
Fires when an EDD payment is refunded, whether fully or partially.
| Data field | Description |
|---|---|
payment_id | EDD payment ID |
refund_amount | The amount refunded |
customer_email | Customer email address |
reason | Refund reason (if recorded) |
Common use: Sending a refund confirmation to the customer, notifying the team, or logging refunds to a Google Sheet.
Payment Failed
Fires when an EDD payment attempt fails at checkout.
| Data field | Description |
|---|---|
payment_id | EDD payment ID |
payment_total | The amount that failed |
currency | Currency code |
gateway | The payment gateway that reported the failure |
customer_email | Customer email address |
customer_first_name | Customer first name |
customer_last_name | Customer last name |
Common use: Sending an immediate payment failure email with retry instructions or a link back to checkout.
Customer Created
Fires when a new EDD customer record is created. This fires the first time a person makes a purchase through EDD and a customer record is established.
| Data field | Description |
|---|---|
customer_id | EDD customer ID |
customer_email | Customer email address |
customer.name | Customer full name |
customer.first_name | Customer first name |
customer.last_name | Customer last name |
date_created | Date the customer record was created |
Common use: Sending a new customer welcome email, adding them to a CRM, or subscribing them to an onboarding email sequence.
Download Updated
Fires when an EDD download (product) is saved or updated in the WordPress admin.
| Data field | Description |
|---|---|
download_id | The download (product) ID |
download_title | The download title |
download_status | The download’s post status |
download_price | The download price |
download_url | The download URL |
Common use: Notifying existing customers when a download they purchased has been updated with a new version, prompting them to re-download.
EDD Recurring Payments triggers #
These triggers require the EDD Recurring Payments add-on to be installed and active.
Subscription Created
Fires when a new EDD Recurring Payments subscription is created at checkout.
| Data field | Description |
|---|---|
subscription_id | Subscription ID |
subscription.status | Initial subscription status |
subscription.product_name | Name of the subscription product |
subscription.recurring_amount | The recurring charge amount |
subscription.period | Billing period |
subscription.expiration | Subscription expiration date |
customer.email | Customer email address |
customer.name | Customer full name |
Subscription Cancelled
Fires when an EDD subscription status changes to cancelled.
| Data field | Description |
|---|---|
subscription_id | Subscription ID |
previous_status | Status before cancellation |
subscription.product_name | Subscription product name |
subscription.period | Billing period |
customer.email | Customer email address |
customer.name | Customer full name |
Subscription Expired
Fires when an EDD subscription reaches its end date and expires.
| Data field | Description |
|---|---|
subscription_id | Subscription ID |
subscription.product_name | Subscription product name |
customer.email | Customer email address |
customer.name | Customer full name |
Subscription Payment Failed
Fires when an EDD subscription renewal payment fails.
| Data field | Description |
|---|---|
subscription_id | Subscription ID |
failed_payment_id | The ID of the failed payment attempt |
subscription.product_name | Subscription product name |
subscription.recurring_amount | The amount that failed to charge |
customer.email | Customer email address |
customer.name | Customer full name |
EDD Software Licensing triggers #
These triggers require the EDD Software Licensing add-on to be installed and active.
License Activated
Fires when a customer activates an EDD Software Licensing license key on a site.
| Data field | Description |
|---|---|
license_id | License ID |
license.key | The license key |
license.status | License status |
license.download | The product the license is for |
license.expiration | License expiration date |
license.activations | Number of active activations |
customer.email | Customer email address |
customer.name | Customer full name |
Common use: Sending an activation confirmation email with documentation links, logging activations for support tracking.
License Expired
Fires when an EDD license reaches its expiration date.
| Data field | Description |
|---|---|
license_id | License ID |
license.key | The license key |
license.download | The product the license covers |
license.expiration | The expiration date |
customer.email | Customer email address |
customer.name | Customer full name |
Common use: Sending an expiry notice with a renewal link, removing access to licensed features or content.
License Expiring Soon
Fires a set time before a license is due to expire. Use this to send renewal reminders before the license actually expires.
| Data field | Description |
|---|---|
license_id | License ID |
license.key | The license key |
license.download | The product the license covers |
license.expiration | The upcoming expiration date |
customer.email | Customer email address |
customer.name | Customer full name |
Common use: Sending a 30-day, 7-day, or same-day renewal reminder sequence to encourage customers to renew before losing access.
License Renewed
Fires when an EDD license is renewed and its expiration date is extended.
| Data field | Description |
|---|---|
license_id | License ID |
renewal_payment_id | The payment ID for this renewal |
license.key | The license key |
license.download | The product the license covers |
license.expiration | The new expiration date after renewal |
customer.email | Customer email address |
customer.name | Customer full name |
Common use: Sending a renewal thank-you email, automatically extending license access using the Extend License action, or logging renewals for revenue reporting.
Available actions #
Create Discount
Creates a new discount code in EDD programmatically.
| Field | Description |
|---|---|
code | The discount code. Merge tags supported. |
type | Discount type: percent or flat. |
amount | The discount amount. |
max_uses | Maximum number of uses. Leave empty for unlimited. |
expiry | Expiry date for the discount code. |
product_condition | Restrict the discount to specific products. |
Grant Download Access
Grants a customer access to a specific EDD download without requiring a new purchase.
| Field | Description |
|---|---|
payment_id | The payment ID to attach the download to. |
download_id | The download (product) ID to grant access to. |
Common use: Giving a customer a complimentary download as part of a support resolution, or granting access to a bonus product on purchase of another.
Revoke Download Access
Removes a download from an EDD payment, revoking the customer’s access to it.
| Field | Description |
|---|---|
payment_id | The payment ID. |
download_id | The download ID to revoke access to. |
Resend Purchase Receipt
Resends the EDD purchase receipt email to the customer for a specific payment.
| Field | Description |
|---|---|
payment_id | The payment ID to resend the receipt for. Use {{payment_id}} from the trigger. |
Common use: Automatically resending a receipt if the original email failed, or triggering a receipt resend from a customer support workflow.
Extend License
Extends the expiration date of an EDD Software Licensing license by a specified number of days.
| Field | Description |
|---|---|
license_id | The license ID. Use {{license_id}} from the trigger. |
extension_days | Number of days to extend the license. |
Common use: Automatically extending a license when a renewal payment completes, or granting a complimentary extension as a customer goodwill gesture.
Revoke License
Disables an EDD Software Licensing license, preventing it from being used.
| Field | Description |
|---|---|
license_id | The license ID to revoke. |
Common use: Revoking a license when a refund is issued, or disabling a license that has been flagged for misuse.
Setting up an EDD workflow #
- Go to Krom Automation > Workflows and click Add New Workflow.
- Click Add Trigger and select the EDD trigger from the EDD, EDD Subscriptions, or EDD Software Licensing group.
- Add your actions and configure the fields using
{{payment_id}},{{customer.email}},{{license.key}}, and other available merge tags. - Simulate, then activate the workflow.
Screenshot: EDD Purchase Completed trigger on the canvas connected to a Send Email action with download details in the body.
Screenshot: License Expiring Soon trigger connected to a Send Email renewal reminder action.
Real-world automation examples #
Purchase thank-you and download delivery Trigger: Purchase Completed Action: Send Email to {{customer_email}} with a personalised thank-you, the product name from {{downloads}}, and links to documentation.
License expiry reminder sequence Trigger: License Expiring Soon Action 1: Send Email (30-day warning) — renewal link with {{license.key}} and {{license.expiration}} Action 2 (23-day delay): Send Email (7-day warning) — urgency reminder with a discount code Action 3 (6-day delay): Send Email (same-day) — final expiry warning
Auto-extend license on renewal Trigger: License Renewed Action: Extend License using {{license_id}} with the appropriate extension days
Win-back on subscription cancellation Trigger: Subscription Cancelled Action 1: Send Email — acknowledge cancellation, offer a return discount Action 2 (7-day delay): Send Email — follow-up with a special offer
Notify customers on download update Trigger: Download Updated Action: Send Email to {{customer_email}} (using Update User Meta to track purchasers, or via HTTP Request to retrieve purchasers list) letting them know a new version is available.
Pre-built templates #
Install these from Krom Automation > Templates:
| Template | What it does |
|---|---|
edd-purchase-thank-you | Purchase confirmation with download links |
edd-new-customer-welcome | Welcome email to new EDD customers |
edd-payment-failed-recovery | Recovery email on EDD payment failure |
edd-refund-notification | Refund confirmation email |
edd-post-purchase-discount | Post-purchase discount code delivery |
edd-download-update-notification | Notify customers when a purchased download is updated |
edd-license-expiry-warning | License expiry warning email series |
edd-license-renewal-thankyou | Thank-you email when a license is renewed |
edd-subscription-payment-failed | Recovery email for failed EDD subscription payment |
edd-subscription-winback | Win-back campaign after EDD subscription cancellation |
Troubleshooting on Easy Digital Downloads Integration #
Connect Easy Digital Downloads to Krom Automation Pro. Automate purchase emails, license reminders, subscription dunning, and renewal workflows. Full reference included.
EDD Recurring Payments triggers aren’t showing up
Confirm the EDD Recurring Payments add-on is installed and active alongside EDD core. The subscription triggers only appear when this add-on is present.
EDD Software Licensing triggers aren’t showing up
Confirm the EDD Software Licensing add-on is installed and active. It’s a separate add-on from EDD Recurring Payments and must be independently active.
The {{downloads}} merge tag is showing as a JSON array, not a readable list
The downloads field is an array of objects. In a Send Email message body, you may want to reference a specific download name using {{downloads[0]}} for the first item, or use an HTTP Request and custom logic to format the list. For most single-product stores, {{downloads[0]}} gives you the product name cleanly.