Extra Order Recipients

Extra Order Recipients allows your WooCommerce store to send order emails to additional recipients, without editing email templates. Customers can enter extra email addresses at checkout or in My Account, and store owners can route admin and customer emails using global, product, category, and advanced routing rules with To, CC, and BCC support.

Installation

To start using a product from WooCommerce.com, you can use the โ€œAdd to storeโ€ functionality on the order confirmation page or the My subscriptions section in your account.

  1. Navigate to My subscriptions.
  2. Find the Add to store button next to the product youโ€™re planning to install.
  3. Follow the instructions on the screen, and the product will be automatically added to your store.

Alternative options and more information at:
Managing WooCommerce.com subscriptions.

Adding a WooCommerce.com subscription to your store

Configuration

↑ Back to top

After installation, configure the extension under WooCommerce > Settings > Extra Recipients. Additional settings tabs appear once the plugin is enabled.

Enable the extension

↑ Back to top
  1. Go to WooCommerce > Settings > Extra Recipients.
  2. On the General tab, tick Enable extra order recipient routing.
  3. Save changes.

Customer Recipients

↑ Back to top

Use this section to let customers add extra email addresses that receive selected WooCommerce customer emails (for example, processing or completed order emails).

  • Display fields on โ€” Show fields on classic checkout, the WooCommerce Checkout Block, My Account, or both.
  • Save checkout values to account โ€” Store recipient addresses on the customer account for future orders.
  • Allow editing after checkout โ€” Let customers update saved recipients from My Account, or show them as read-only.
  • Custom field labels โ€” Add, rename, or remove extra recipient fields. Mark individual fields as required if needed.

Customer addresses are validated for correct email format, duplicates, and duplicates of the main billing or account email. Values are saved on the order so resending emails later uses the same recipients.

Admin Recipients

↑ Back to top

Use this section to route store admin emails to additional recipients.

  • Global admin recipients โ€” Email addresses that should receive selected admin emails for every order.
  • Customer emails โ€” Choose which customer-facing WooCommerce emails should include extra customer recipients.
  • Admin emails โ€” Choose which admin WooCommerce emails (such as New order) should receive extra routed recipients.

You can also set recipients on individual products and categories:

  • Products โ€” Edit a product and enter comma-separated addresses in Extra admin recipients on the General tab.
  • Categories โ€” Edit a product category and enter comma-separated addresses in Extra admin recipients.

Product and category recipients add To recipients only. Use routing rules for CC and BCC behavior.

Routing Rules

↑ Back to top

Routing rules give you fine-grained control over who receives which emails. Each rule can:

  • Match orders containing specific products and/or categories.
  • Target selected WooCommerce email types.
  • Add recipients to To, CC, or BCC.
  • Use manual email addresses, individual WordPress users, or entire WordPress roles as recipient sources.
  • Set a priority when multiple rules apply to the same order.

When an order is placed, the plugin stores a routing snapshot on the order. If you change a rule later and resend an email from the order screen, the original snapshot is used so behavior stays predictable.

Advanced settings

↑ Back to top

Enable Debug logging to write recipient resolution events to the WooCommerce logger (WooCommerce > Status > Logs). This is useful while testing routing rules. Disable it in normal production use unless you are troubleshooting an issue.

Usage

↑ Back to top

What customers see on the front end depends on your Customer Recipients settings.

At checkout

↑ Back to top

On classic checkout, extra recipient fields appear in the billing/contact area using the labels you configured (for example, โ€œGift recipient emailโ€ or โ€œAccounts payable emailโ€).

On the WooCommerce Checkout Block, the same fields appear in the Order information area rather than the contact section.

In My Account

↑ Back to top

When My Account is enabled, logged-in customers can view and edit saved extra recipient addresses on the Account details page. If editing is disabled, saved values are shown as read-only.

In order emails

↑ Back to top

When a matching WooCommerce email is sent:

  • Customer emails include the extra addresses the customer entered at checkout (for the email types you selected).
  • Admin emails include global, product, category, and routing-rule recipients (for the email types you selected).
  • Routing rules can place recipients in To, CC, or BCC as configured.

No changes are visible to customers on the order confirmation page itself โ€” the effect is on who receives the WooCommerce emails behind the scenes.

Troubleshooting

↑ Back to top

Extra fields are not showing at checkout

↑ Back to top
  1. Confirm the plugin is enabled under WooCommerce > Settings > Extra Recipients > General.
  2. Check that Display fields on includes Checkout (or Checkout and My Account).
  3. Clear any page, object, or full-page cache and test again in a private browser window.
  4. If you use the Checkout Block, look in the Order information section โ€” fields are not placed in the contact section by design.

Extra recipients are not receiving emails

↑ Back to top
  1. Verify the correct WooCommerce email type is selected under Admin Recipients (for store routing) or Customer emails (for customer-entered addresses).
  2. Confirm the email address is valid and was saved on the order without validation errors.
  3. For routing rules, confirm the order contains a matching product or category and that the ruleโ€™s email types and To/CC/BCC channels are configured correctly.
  4. Check whether your SMTP or mail plugin is stripping CC/BCC headers.
  5. Enable Debug logging under Advanced, reproduce the issue, then review logs at WooCommerce > Status > Logs.

Re-sent emails use old recipients

↑ Back to top

This is expected. The plugin saves recipient and routing data on the order when it is placed. Resending an email from the order admin screen uses that saved snapshot, even if you later change settings or routing rules. Place a new test order to verify updated configuration.

Validation errors at checkout or in My Account

↑ Back to top

The plugin rejects invalid email addresses, duplicate extra recipient fields, and addresses that match the customerโ€™s main billing or account email. Correct the highlighted field and try again.

FAQs

↑ Back to top

Common questions about Extra Order Recipients.

Does this work with the WooCommerce Checkout Block?

  • Yes. Customer recipient fields are supported on the Checkout Block as well as classic checkout. On the block, fields appear in the Order information area rather than the contact section.

Can I add more than one extra recipient field for customers?

  • Yes. Use the Custom field labels table in Customer Recipients to add multiple fields, rename them, mark fields as required, or remove unused fields.

What is the difference between Admin Recipients and Routing Rules?

  • Admin Recipients handles global recipients and choosing which WooCommerce email types are affected. Product and category fields add simple To recipients when matching items are in an order. Routing Rules add advanced logic โ€” product/category matching, priority, To/CC/BCC channels, and recipients from manual emails, users, or roles.

Will changing a routing rule affect emails already sent for past orders?

  • No. Recipient data is saved on the order when it is placed. Resending an email from an existing order uses the saved snapshot from that order, not your current settings.

Do category rules apply to child categories or only directly assigned categories?

  • Category rules apply to categories directly assigned to purchased products. They do not automatically include products only assigned to child categories unless those child categories are also matched by your rule.

Can developers extend or customize behavior?

  • Yes. The plugin exposes actions and filters for email types, field definitions, recipient lists, routing behavior, and debug logging. See the Developer reference section below for the full list.

Developer reference

↑ Back to top

The following hooks are available for extending or customizing Extra Order Recipients.

Actions

↑ Back to top
  • eorw_order_customer_recipients_saved โ€” Fires after customer recipient data is stored on an order.
  • eorw_email_routing_snapshot_saved โ€” Fires after an email routing snapshot is stored on an order.

Filters

↑ Back to top
  • eorw_available_email_types โ€” Filters the email IDs shown in settings.
  • eorw_settings_defaults โ€” Filters the plugin default settings.
  • eorw_max_customer_fields โ€” Filters the maximum number of extra customer fields allowed in settings.
  • eorw_customer_field_count โ€” Filters the resolved number of customer fields.
  • eorw_checkout_field_args โ€” Filters each checkout field definition.
  • eorw_account_field_args โ€” Filters each My Account field definition.
  • eorw_order_customer_recipients โ€” Filters customer recipients before order persistence.
  • eorw_customer_recipients_for_order โ€” Filters customer recipients before order persistence.
  • eorw_customer_recipients_for_user โ€” Filters customer recipients before user meta persistence.
  • eorw_resolved_customer_recipients โ€” Filters fallback customer recipients resolved from account data.
  • eorw_admin_global_recipients โ€” Filters global admin recipients before rule merging.
  • eorw_admin_product_recipients โ€” Filters product-level admin recipients.
  • eorw_admin_category_recipients โ€” Filters category-level admin recipients.
  • eorw_admin_routing_category_ids โ€” Filters the category IDs considered during admin routing.
  • eorw_resolved_admin_recipients โ€” Filters the fully merged admin recipient list.
  • eorw_customer_email_recipients โ€” Filters extra recipients before they are appended to customer emails.
  • eorw_admin_email_recipients โ€” Filters extra recipients before they are appended to admin emails.
  • eorw_should_attach_customer_recipients โ€” Controls whether customer emails are modified.
  • eorw_should_attach_admin_recipients โ€” Controls whether admin emails are modified.
  • eorw_should_log โ€” Controls debug logging behavior.

Related Products

Let customers subscribe to your products or services and pay on a weekly, monthly or annual basis.

Offer add-ons like gift wrapping, special messages or other special options for your products.

Use of your personal data
We and our partners process your personal data (such as browsing data, IP Addresses, cookie information, and other unique identifiers) based on your consent and/or our legitimate interest to optimize our website, marketing activities, and your user experience.