ShopMagic for WooCommerce Bookings is a plugin designed specifically for WordPress users looking to enhance their WooCommerce Bookings email configuration. This plugin streamlines the process of creating personalized and automated email campaigns for booking-related events in your online store. With this plugin, you can efficiently manage and optimize your email communication with customers, ensuring they receive relevant and timely information.

Plugin Version: 1.2.30
 
WordPress plugin ShopMagic for WooCommerce Bookings

Plugin Features

By leveraging the capabilities of this plugin, you can easily automate various email notifications, ensuring that your customers stay informed about their bookings. Whether its confirmations, reminders, or follow-ups, this plugin allows you to customize the content, design, and timing of these emails to suit your brands style and preferences.

This plugin helps you go beyond generic email templates, as it enables you to create personalized email campaigns based on specific triggers or booking statuses. You can tailor your messages to include important details such as booking dates, times, and location, ensuring that your customers have all the necessary information readily available.

With ShopMagic for WooCommerce Bookings, you can also track the performance of your email campaigns, as the plugin provides detailed analytics and reports. This allows you to measure the effectiveness of your email communication and make data-driven decisions to optimize your campaigns further.

To ensure smooth integration with your WooCommerce Bookings, this plugin seamlessly integrates with the core WooCommerce functionality. It is easy to set up and configure, even for users without extensive technical knowledge. You can quickly get started with just a few simple steps and begin automating your booking-related emails.

Moreover, this plugin offers extensive flexibility in terms of customization. It provides a user-friendly interface where you can easily design and modify your email templates, ensuring they align with your brands visuals and messaging. You can also add dynamic content, such as customer information and booking details, to make your emails more personalized and engaging.

In conclusion, this plugin for WordPress, ShopMagic for WooCommerce Bookings, is a valuable tool for configuring and optimizing email communication for WooCommerce Bookings. It empowers you to create personalized and automated email campaigns, ensuring that your customers stay informed throughout the booking process. With its seamless integration, customization options, and analytics features, this plugin makes email management a breeze, allowing you to enhance customer satisfaction and drive better results for your online store.

Specifications:

Release date: 11-10-2020
Last updated: 07-10-2026
Type: Paid
License: GPL 
Subject: Marketing & SEO
Compatibility: W5.x W6.x
Includes: Plugin
Language packs: English
Developer: -

Rating:
4.5045454545455 1 1 1 1 1 (220 Votes)

Download by subscription!

You need to log in on the site and purchase a club subscription!

Share with your friends!

 

How to Set Up ShopMagic for WooCommerce Bookings for Booking Emails

ShopMagic for WooCommerce Bookings is not meant to replace your booking system itself. Its job is to automate the emails that go out around WooCommerce Bookings events in a clean, controlled way. In this guide, we'll look at how to approach the setup, which dependencies to verify, how to build your first automation, and where to use booking events, resource filters, and dedicated placeholders.

This article is written for a store owner, WooCommerce administrator, or developer who already understands what kinds of services, classes, rentals, or appointments are being sold through WooCommerce Bookings. It does not cover buying a license or bypassing activation. The focus here is practical setup for a product you already have access to, along with result checking, email troubleshooting, and deciding when ShopMagic for WooCommerce Bookings is actually the right tool.

The core idea is simple: a booking email should not go out merely "after the order." It should go out at the right point in the booking lifecycle. A confirmation after approval, a reminder before the visit, a follow-up email after the appointment, or a message tied to a specific resource or location - all of that requires different logic than a standard WooCommerce order email.

Cover image for the ShopMagic for WooCommerce Bookings guide with email logic before and after a booking
The cover highlights the main use case in this guide: turning a booking event into a useful email before or after the customer's visit.

What Problem the ShopMagic and WooCommerce Bookings Combination Solves

WooCommerce Bookings handles the sale of appointments, rentals, classes, consultations, tours, and other services where date, time, resource, price, and booking status matter. ShopMagic adds the automation layer: it listens for store events and triggers actions, most often sending an email. The ShopMagic for WooCommerce Bookings add-on extends that layer with events, filters, and placeholders that are tied specifically to bookings.

Without that layer, administrators usually run into two problems. First, standard WooCommerce and WooCommerce Bookings emails are not always easy to adapt to a specific customer journey. Second, an email sent "after the order" is not always the same as one sent "after the booking is confirmed" or "one day before the class." With bookings, the order is only part of the picture. The separate booking entity also matters: it has its own status, start time, end time, resource, attendee count, and other data.

That is why ShopMagic for WooCommerce Bookings should be viewed as a communication tool for the booking lifecycle. It helps you build automation around events like Booking Before Event or Booking Status Changed, insert booking data into emails with placeholders such as {{ booking.start_date }}, {{ booking.end_date }}, {{ booking.resource }}, {{ booking.product }}, {{ booking.people }}, and, if you have the required add-on, use the Booking - Resources filter.

The practical value appears when the same booking needs different emails at different stages. You can send the customer a confirmation with appointment details, send the administrator an internal alert, send a course attendee a reminder before the session, and send a thank-you email with a review request after the visit. That approach works better than one generic email because it accounts for timing, status, and booking context.

Who This Plugin Fits - and Where It May Be Unnecessary

ShopMagic for WooCommerce Bookings works best on sites where a booking is not just a formality but a real part of the customer journey. That includes consultations, studio classes, equipment rentals, local tours, limited-seat sessions, specialist appointments, resource booking, or services that require administrator approval.

The plugin is a good fit if you need to:

  • Send customers different emails before and after the event, not just at checkout.
  • Use the booking start date, end date, status, price, resource, product, and attendee count inside the email text.
  • Split emails by resource, for example by room, instructor, location, equipment, or service type.
  • Replace some manual back-and-forth with ready-made automations while keeping control over the wording and recipients.
  • Make emails clearer for customers: what they booked, when to arrive, what to prepare, and what to do if plans change.

It may be unnecessary if standard WooCommerce Bookings notifications already do enough, there are no pre-event or post-visit scenarios, and all bookings are handled manually through direct communication anyway. You should also not expect this add-on to solve calendar sync, payments, slot availability, or the creation of bookable products themselves. Those tasks remain within WooCommerce Bookings and related extensions.

The key check before implementing it: if you can outline at least three different emails across the booking lifecycle - confirmation, reminder, and follow-up - then ShopMagic for WooCommerce Bookings has real practical value. If all you need is one standard post-order email, start with WooCommerce Bookings settings and the default WooCommerce email setup.

What to Check Before Installation and First Launch

Before you install anything, separate the requirements into three levels: WordPress and WooCommerce, the core ShopMagic plugin, and WooCommerce Bookings. The bookings add-on does not work on its own. According to ShopMagic documentation, it requires both the main ShopMagic plugin and the official WooCommerce Bookings extension. If one of those components is missing, booking events, filters, and placeholders simply will not appear in the automation editor.

Core dependencies

Make sure the site already has a working WooCommerce and WooCommerce Bookings setup. Do not stop at plugin activation alone: create or open a bookable product, confirm that the customer can choose a date and time, verify that an order is created, and check that the booking appears in the WooCommerce Bookings list. If basic booking flow is broken, email automation will only hide the underlying issue instead of solving it.

The next layer is the core ShopMagic plugin. The free version of ShopMagic can be installed from the WordPress plugin repository and adds an automation area to the admin panel. In the documentation and the WordPress listing, the logic is described as a combination of an event, an optional filter, and an action. In this case, the event comes from the bookings add-on, the filter can narrow the conditions, and the action usually sends an email.

What to verify on a test site

It is better not to start with live emails going out to a real audience. Prepare a test bookable product, a test customer, and a separate automation in draft status or with a safe recipient. If the store is already taking real bookings, test everything first on a staging copy or a private test product.

  • Check that the bookable product has available slots, or the event will be hard to reproduce.
  • Check which statuses bookings go through on your site: whether approval is required, whether the status changes after payment, and whether there is manual confirmation.
  • Check WordPress email delivery: at minimum, a standard WooCommerce email should reach a test inbox.
  • Check admin-panel caching and optimization, especially if REST API caching is enabled.
  • Check staff roles: the person configuring automations should have access to WooCommerce, ShopMagic, and bookings.

Short version: before you create the email itself, you need a controlled test booking. That saves time during troubleshooting because you will know exactly what is supposed to trigger the automation.

Installation and Initial Verification in the Admin Panel

Installation starts with the core ShopMagic plugin. You can install it like any other WordPress plugin through the Plugins section or from the WordPress repository. After activation, the admin panel gets a place for automations. For the bookings add-on, WooCommerce Bookings and the matching ShopMagic PRO component must also be installed, because the product page and documentation describe it as an extension for WooCommerce Bookings.

After activation, do not go looking for a separate complex settings page just for this add-on. ShopMagic documentation for WooCommerce Bookings explains that after installation, new events, filters, and placeholders become available inside automations, and no extra add-on configuration is required. So the first verification step is not a standalone settings form, but whether booking-related elements appear in the automation editor.

Checking that the events are available

  1. Open the WordPress admin panel and go to the ShopMagic automations section.
  2. Create a new automation using Add New or the equivalent button in the interface.
  3. In the event field, check for Booking Before Event and Booking Status Changed.
  4. In the email action, check whether booking placeholders are available in the insert list.
  5. If you plan to split emails by resource, check for the Booking - Resources filter, keeping in mind that the documentation ties it to the Advanced Filters add-on.

If those events do not appear, do not move on to writing the email content yet. First verify that WooCommerce Bookings, core ShopMagic, the bookings add-on, and the component versions are all active and compatible. ShopMagic support forums include cases where editor elements failed to appear or froze because of caching, client-side errors, outdated add-ons, or compatibility mode. That does not mean you will definitely have the same issue, but it does establish the right troubleshooting order.

Initial verification map for ShopMagic for WooCommerce Bookings after installation
This diagram helps you quickly see what should appear after the add-on is activated: events, the resource filter, and booking placeholders.

Detailed Automation Setup After Installation

In ShopMagic, the logic is built around three blocks: event, filter, and action. That works especially well for ShopMagic for WooCommerce Bookings because the event answers "when should this email be sent," the filter answers "for which bookings," and the action answers "what exactly should be sent, and to whom." If you configure those three blocks at random, the email may go out at the wrong time, to the wrong audience, or with missing data.

Choosing the booking event

Booking Status Changed is a good fit for emails tied to a change in booking state. For example, the administrator approves an appointment, the booking moves into the appropriate status, and the customer should receive a confirmation, instructions, or an internal notification. This event is useful when the important part is the status change itself rather than calendar timing relative to the visit.

Booking Before Event is better for reminders sent before the booking starts. It is a more precise choice for classes, consultations, and similar events where the customer needs to prepare: arrive early, bring documents, join a video call, cancel within the stated rules, or confirm the address. That kind of scenario is a poor fit for a standard "order placed" email because there may be a long gap between the order and the actual event.

The resource filter and send conditions

The Booking - Resources filter matters when different resources require different messaging. In WooCommerce Bookings, a resource can represent an instructor, room, piece of equipment, vehicle, venue, office, or any other object booked along with the service. ShopMagic documentation notes that Advanced Filters is not required for the add-on to function, but it does unlock booking-related filters for automations. So if the filter is missing, check not only the bookings add-on but also Advanced Filters.

A typical example: a school runs classes at two locations. One location needs an address, entry directions, and parking instructions. The other needs a door code and a link to an online map. Creating one email with both addresses is a poor experience because the customer then has to hunt for the relevant details. It is better to create two automations that use the same event but different conditions based on the resource.

The email action

The email action defines the recipient, subject, content, and any additional fields. Do not send customer emails to a random admin address if the message is supposed to reach the customer. And do not send internal technical notes to the customer if those notes are intended for a manager. For the first test, use a safe test address or an internal recipient so you can review the message before it reaches real customers.

Use booking placeholders in the email content. They save you from copying data by hand and from writing a separate message for each customer. For example, the subject line can include the booked product, while the body can include the start date, end date, resource, and attendee count. If a placeholder returns an empty value, check whether that field actually exists in the specific booking. Not every booking will necessarily include a resource or people-related data.

A starter email template with placeholders

The example below is not theme code and not a plugin file edit. It is a safe HTML email fragment you can use as a starting structure inside the ShopMagic editor if HTML support is enabled and your email template allows this markup. Before going live, replace the wording with text that matches your service.

<h2>Your booking is confirmed</h2>
<p>Service: {{ booking.product }}</p>
<p>Start date: {{ booking.start_date }}</p>
<p>End date: {{ booking.end_date }}</p>
<p>Resource or location: {{ booking.resource }}</p>
<p>Attendees: {{ booking.people }}</p>
<p>If you need to change your appointment, please reply to this email in advance.</p>

After saving, send a test email and check each inserted value. If the raw token itself appears in the email, for example {{ booking.resource }}, then it was not processed or does not match the selected event or data. If the field is empty but the email was sent, inspect the specific booking - it may not have a resource or attendee count assigned.

Booking Placeholders: How to Avoid Empty or Confusing Emails

Placeholders are the most useful part of the add-on, but they are also the most common reason users feel like "the plugin is not working" when they insert a token without checking the data behind it. The documentation lists dedicated booking placeholders: {{ booking.id }}, {{ booking.status }}, {{ booking.meta }}, {{ booking.end_date }}, {{ booking.start_date }}, {{ booking.cost }}, {{ booking.people }}, {{ booking.product }}, {{ booking.resource }}. This is not just a marketing feature list. These are dynamic values pulled from a specific booking.

Before you use a placeholder in a customer-facing email, decide whether the customer actually needs it. Not every internal data point is helpful in an email. A booking ID may be useful for support, but for a typical customer, the service, date, time, location, preparation steps, and change policy matter more. Price should be shown carefully if the final total depends on the order, discounts, taxes, or extra options.

How to choose placeholders for a booking email
Placeholder Where it helps What to check
{{ booking.start_date }} Pre-visit reminder, booking confirmation, preparation email. The date format should be easy for the customer to understand and match the site's time zone.
{{ booking.end_date }} Rentals, longer consultations, classes with a fixed duration. Make sure the end time is actually useful in the email and not just adding clutter.
{{ booking.resource }} Location, office, instructor, equipment, venue. The booking must have a resource assigned, or the field may be empty.
{{ booking.people }} Group classes, tours, workshops, multi-person bookings. People-related settings must be enabled for the product.
{{ booking.status }} Internal emails for managers or support staff. For customers, it is usually better to use human-friendly wording instead of a technical status value.

A good email should not read like a database printout. Use placeholders for accuracy, but wrap them in normal language. For example, instead of a line like {{ booking.start_date }} {{ booking.resource }}, write: "We're expecting you on {{ booking.start_date }}. Location: {{ booking.resource }}." That keeps the email readable, even if the customer opens it on a phone or forwards it to another attendee.

Diagram of ShopMagic for WooCommerce Bookings placeholders in a customer email
This visual map shows which booking data is best shared with the customer and which details are better reserved for internal notifications.

Email Scenarios: Confirmation, Reminder, and Post-Visit Follow-Up

Strong automation starts with the scenario, not with the event field. For bookings, it helps to think less in terms of "which email should we send" and more in terms of "what question or uncertainty does the customer have at this moment." After an appointment is approved, the customer wants to know the spot is secured. Before the visit, they want to remember the time, address, and preparation steps. After the visit, the business may want a review, a repeat booking, or a follow-up resource email.

Confirmation after the booking is approved

This scenario is built around Booking Status Changed. The email should include the service, date, resource or location, booking-change rules, and a contact point for questions. Do not overload it with marketing blocks: at this stage, the customer mainly wants to confirm that the booking is real. If the standard WooCommerce Bookings email already handles that well, ShopMagic only becomes necessary when you need a different structure, a separate recipient, or more specific conditions.

Reminder before the event

For reminders, use Booking Before Event. The text should answer practical questions: when to arrive, how long the appointment lasts, what to bring, how to cancel or reschedule, and how to get in touch if running late. In this email, {{ booking.start_date }}, {{ booking.end_date }}, {{ booking.product }}, and {{ booking.resource }} all make sense. If the reminder varies by location, add a resource filter or split the scenario into separate automations.

Post-visit email

Once the service is complete, you can send a thank-you note, next-step instructions, a link to materials, or a request for feedback. The important thing is not to promise something the site cannot actually deliver. If there is no dedicated review system, do not tell the customer they will see a personal feedback form. It is better to provide a clear contact method or a link to a public review page if one already exists.

For more complex stores, it is often better to keep scenarios as a set of smaller automations rather than one large construction. That makes them easier to test, easier to disable when necessary, and easier to understand when you need to trace why a customer received a specific message.

Practical Example: A Reminder Sent One Day Before a Consultation

Let's walk through a concrete scenario. The site sells a consultation as a bookable product. The customer selects a date and time, the administrator confirms the booking, and one day before the appointment the customer should receive an email with the time, address, specialist name or resource name, and a short preparation note. This is exactly the kind of case where ShopMagic for WooCommerce Bookings is more useful than a standard order email.

Goal

Create an automatic reminder email before the booking begins so the customer does not miss the consultation and has time to prepare the necessary materials. A successful result means the test customer receives one clear email with the service, start date, and resource inserted correctly.

Preparation

  • WooCommerce, WooCommerce Bookings, ShopMagic, and the ShopMagic for WooCommerce Bookings add-on are active on the site.
  • A test bookable product with available slots has been created.
  • You have a test customer email address that can safely receive test messages.
  • Regular WordPress email sending has been verified: a standard WooCommerce email arrives successfully.

Setup steps

  1. Open the ShopMagic automations section and create a new automation.
  2. Choose Booking Before Event as the event if it is available in the list.
  3. If the email should apply only to a specific resource, add the Booking - Resources filter and select the correct resource.
  4. In the action, choose email sending and temporarily use a test recipient if you do not want to message the customer right away.
  5. Write an email subject that includes the service name, for example: "Booking reminder: {{ booking.product }}".
  6. In the email body, use {{ booking.start_date }}, {{ booking.resource }}, and short practical instructions.
  7. Save the automation, create a test booking, and wait for the event condition to be met.

Checking the result

Do not check only whether the email arrived - check the content too. The email should not contain raw tokens like {{ booking.start_date }}. The date should match the test booking, the resource should match the selected location or specialist, and the email should arrive only once. Then open ShopMagic Outcomes or logs and confirm that the action completed successfully.

A common issue that gets in the way

If the email did not arrive, but Outcomes shows a successful send, the problem may not be the automation at all - it may be deliverability: spam filtering, sender configuration, SMTP, or the domain mailbox. If there is no entry in Outcomes, check the event, booking status, Action Scheduler, and the add-on itself. If the event fires at the wrong time, go back to your booking-status lifecycle and confirm which event is actually happening on your site.

Step-by-step WooCommerce Bookings reminder workflow through ShopMagic
This scenario connects the admin setup, the pre-booking event, and the final email sent to the customer.

How to Verify the Result Without Risking Customer Experience

Result checking should be its own step, not a hope that the email will "probably go out somehow." With bookings, that matters even more: an error in a reminder can lead to a missed appointment, the wrong location, or extra manual follow-up. Use a short test cycle: create a booking, wait for the event, check Outcomes, check the inbox, then open the automation itself and confirm that the status and conditions have not changed.

Checking ShopMagic Outcomes

ShopMagic uses Outcomes as a log of completed actions. Its email troubleshooting documentation recommends checking whether the email shows a success or error status and, if there is an error, opening the details. This is an important diagnostic layer because it separates "the automation did not run" from "the email was sent but not delivered."

If Outcome shows success but the email is missing from the inbox, check spam, domain-based sending, SMTP, and the sender address in WooCommerce email settings. If Outcome shows an error, save the error text before you start changing settings. If Outcome does not exist at all, check the event, filters, automation status, and Action Scheduler.

Checking Action Scheduler

ShopMagic uses the Action Scheduler queue to process actions. That reduces pressure on critical store processes, but it also introduces a dependency on WP-Cron and background task handling. Under normal conditions, the action runs with only a small delay. If the queue is overloaded or cron is not running properly, emails may get stuck or go out later than expected.

For diagnosis, open WooCommerce -> Status -> Action Scheduler and review tasks with Pending, Failed, or Past Due statuses. Do not mass-delete tasks unless you have a backup and understand the consequences. For a typical administrator, it is safer to collect symptoms and verify cron behavior first than to jump straight into SQL queries.

Checking for duplicates with WooCommerce emails

If you are recreating standard notifications through ShopMagic, the customer may receive two similar emails: one from WooCommerce or WooCommerce Bookings and another from ShopMagic. ShopMagic documentation separately explains how to disable default WooCommerce notifications through WooCommerce -> Settings -> Emails. Do this carefully: disable only the emails you have actually replaced and already tested.

Practical order of operations: first configure the ShopMagic email for a test address, then verify Outcomes and content, then decide whether you really need to disable the overlapping standard WooCommerce email. Do not disable default emails in advance.

Resources, Statuses, and Different Types of Bookings

The real strength of ShopMagic for WooCommerce Bookings shows up in scenarios where one site has multiple resources, statuses, and customer-communication rules. One consultation may require administrator approval, another may need an automatic reminder, and a third may need a post-completion email with materials. If you reduce everything to one generic message, you lose much of what makes the add-on useful.

Resources as the basis for personalization

In WooCommerce Bookings, the resource often describes exactly what the customer needs to know: the room, specialist, vehicle, equipment, office, or meeting point. If the resource affects the instructions, use it both as email data and as an automation condition. For example, an email for the "Online Consultation" resource can include a video meeting link, while an email for the "Office 2" resource can include the address and entry instructions.

Statuses as the signal for the email

Not every booking is immediately ready for a customer email. If manual approval is enabled, it usually makes more sense to send the detailed email after approval rather than right after checkout. If the service requires payment, the order status and booking status may mean different things from the customer's perspective. That is why you should avoid wording like "everything is fully confirmed" unless your business process truly guarantees it.

When separate automations are necessary

Separate automations are needed when the event, audience, resource, message, or send timing differs. Do not try to force every variation into one oversized HTML template with conditional blocks unless the interface and documentation clearly support reliable conditional logic for that email. In most cases, it is simpler and safer to create several clear automations, give them descriptive names, and test each one separately.

How to Maintain Automations After Launch

Once the first successful test is done, your work with ShopMagic for WooCommerce Bookings is not over. Booking-based businesses usually change over time: seasons shift, new services are added, staff changes, addresses move, cancellation rules are updated, and email templates evolve. Without an agreed maintenance process, the admin panel can turn into a pile of similar automations with vague names, and no one on the team will be able to tell which email the customer is currently receiving.

Automation names and drafts

Give your automations names that describe the event, audience, and resource. For example, "Booking reminder - client - studio room" says much more than "Reminder 2." If the site is in another language, the names can be too, but keep the same structure: event, recipient, resource or service, status. If an automation is still being tested, leave it in draft or add a clear "test" marker in the name. That does not affect customers, but it helps the team avoid confusing a live email with an experiment.

ShopMagic documentation describes built-in automation duplication: the copy is saved as a draft. That is convenient for resource-specific variations. First configure one working automation and test it, then duplicate it and change only the resource, email subject, and instructions. This approach reduces the risk of missing the recipient or event when building a new automation from scratch.

Export before major changes

ShopMagic supports importing and exporting automations as JSON. That is useful before changing an important group of emails, moving settings between staging and live, or contacting support. The documentation also notes that when moving automations between stores, the ShopMagic version and active add-ons should match. For ShopMagic for WooCommerce Bookings, that is especially important: if the destination site does not have the bookings add-on or Advanced Filters, the imported logic may not have access to the required events and filters.

Do not treat exports as a full-site backup. They are a helpful snapshot of the automations, but they are not a copy of WooCommerce Bookings, products, orders, bookings, or email settings. Before major changes, make a standard site backup, and keep the automation export as an extra working artifact.

Periodic email audit

Every few weeks, or after service changes, run a short audit. Open the automation list, review active rules, send a test booking for key resources, inspect Outcomes, and confirm that the emails are not duplicating default WooCommerce notifications. If the location, instructor, address, cancellation policy, or preparation text has changed, update not only the email itself but also the automation name so it continues to reflect the real scenario.

Also review emails after WooCommerce, WooCommerce Bookings, ShopMagic, and add-on updates. There is no reason to fear every update, but email automation depends on events, queue processing, and the interface. After an update, one test booking is usually enough: walk through the customer flow and make sure Outcomes does not show errors.

A practical maintenance rule: every new automation should have a clear name, a test booking, a verified Outcome, and an owner on the team. If no one is responsible for the email, it quickly turns into a source of duplicates and outdated instructions.

Deliverability, Performance, and Caching: What Matters for Booking Emails

A booking email may be configured correctly in ShopMagic and still never reach the inbox. The cause often sits below the plugin level: WordPress email delivery, a sender address outside the site domain, no SMTP, an overloaded task queue, REST API caching, or Action Scheduler issues. That is why troubleshooting should move through the stack layer by layer rather than starting with deleting and reinstalling everything.

Email sending and SMTP

If standard WooCommerce emails are not being delivered, ShopMagic will not magically bypass hosting limitations. First verify normal WordPress and WooCommerce email sending. If emails are sent but land in spam, configure a domain-based sender address and set up SMTP or a transactional email service. The article should not promise guaranteed delivery, because that depends on DNS, domain reputation, the mail server, the email template, and recipient behavior.

Queue processing and WP-Cron

ShopMagic adds actions to a queue, and execution depends on Action Scheduler and WP-Cron. On low-traffic stores or sites with an overloaded queue, emails may be delayed. If a reminder must go out right before a visit, check cron reliability ahead of time. On busy sites, it may be worth discussing a system cron job with the host, but do not edit wp-config.php without understanding the change and having a backup.

REST API caching

ShopMagic documentation describes a specific case involving LiteSpeed Cache: REST API caching can cause the ShopMagic admin area to display stale data. The suggested fix is to exclude wp-json/shopmagic.* from caching. That does not directly make emails send faster, but it helps the admin panel reflect current automations and recent changes.

wp-json/shopmagic.*

Add that exclusion only in the cache plugin settings and only for the ShopMagic REST API. After saving, clear the cache, open the automation editor in a new window, and check whether the stale data or frozen fields are gone. If the issue is unrelated to LiteSpeed Cache, there is no reason to apply this setting "just in case."

Common ShopMagic for WooCommerce Bookings Problems and Troubleshooting

Automation issues with bookings usually fall into one of four layers: a dependency is inactive, the event never occurred, the email was not sent, or the email was sent but not delivered. Do not start with a reinstall. First identify which layer is actually failing.

Booking events do not appear in the editor

Symptom: when creating an automation, the event list does not include Booking Before Event or Booking Status Changed. A likely cause is that WooCommerce Bookings is inactive, the ShopMagic for WooCommerce Bookings add-on is inactive, components are outdated, or the editor is showing cached data.

Check the list of active plugins, then open a test booking in WooCommerce Bookings. If bookings as an entity are not working, ShopMagic will not receive the required events. If everything is active, clear the browser cache, check the console for errors, and if needed enable ShopMagic compatibility mode if that option exists in your version.

The resource filter does not appear

Symptom: the booking event is available, but the Booking - Resources filter is missing. The documentation says that the Advanced Filters add-on is not required for the add-on to function, but it is required to use booking-related filters. So check whether Advanced Filters is installed and active, and also check for add-on updates.

If the resource filter still does not appear, temporarily create the automation without it and test whether the event itself fires. That will tell you whether the problem is the filter specifically or the bookings integration as a whole. Do not replace a resource filter with manual conditions written in the email text if the email could end up reaching the wrong customer.

The email is not sent after a test booking

Symptom: the booking was created, but there is no email. Check Outcomes. If there is no record, the event did not fire or the filter blocked the booking. If there is a record with an error status, open the log. If the status is successful but the email is missing from the inbox, move on to deliverability: spam, SMTP, sender address, and domain email setup.

Also check WooCommerce -> Status -> Action Scheduler. If ShopMagic tasks are stuck in the queue or showing errors, the issue may be cron-related or caused by an overloaded queue. On a live store, document the symptoms and make a backup before taking any action on tasks.

Placeholders stay in the email as plain text

Symptom: the customer sees {{ booking.start_date }} instead of a real date. A likely cause is that the placeholder is not available for the selected event, the add-on did not process the booking data, or the email contains a typo in the token. Compare the token with the documentation and make sure the automation is triggered by a booking event rather than a generic order event.

If the placeholder is simply blank, open the specific booking. It may not have a resource, attendee count, or the required meta field. In customer-facing emails, it is better to avoid fields that are not guaranteed across all service types.

The customer receives two similar emails

Symptom: after booking, the customer receives a standard WooCommerce or WooCommerce Bookings email plus a similar ShopMagic email. That is expected if both systems are enabled. First make sure the ShopMagic email really replaces the default one: it should contain the correct data, arrive at the right time, and behave correctly during testing. Then disable the corresponding standard email in WooCommerce -> Settings -> Emails.

The editor shows stale data or fields keep hanging

Symptom: new automations are not visible, fields load slowly, or product and placeholder lists appear empty. For LiteSpeed Cache, ShopMagic documentation recommends excluding wp-json/shopmagic.* from caching. Also check browser cache, a private window, JavaScript errors, and whether the add-ons are up to date. Roll back caching changes if they do not affect the problem.

Diagnostic map of ShopMagic for WooCommerce Bookings issues
This troubleshooting map separates problems by layer: event, filter, queue, sending, and email delivery.

Safe Improvements Without Editing the Plugin Core

With ShopMagic for WooCommerce Bookings, it is usually best to avoid heavy custom code if the task can be solved with automation settings, a filter, or better email wording. Do not edit WooCommerce, WooCommerce Bookings, ShopMagic, or theme files just to adjust an email. Those changes are easy to lose in updates and difficult to troubleshoot later.

What you can improve safely

The safest improvement is to give the email a clearer structure: a short heading, the key booking details, a preparation block, and contact information for changing the appointment. If you are using HTML in the email, keep the markup simple. Most email clients support complex CSS much worse than a browser does, and the real goal of the email is clarity.

A second improvement is to establish a naming convention for automations. For example: "Booking reminder - consultation - resource A" or "Booking accepted - internal admin." It may sound less polished in the admin panel, but it makes the right rule much easier to find and lowers the risk of disabling the wrong automation.

A third improvement is to move uncertain scenarios into separate drafts. If you are testing a post-visit email, do not add it into an already working confirmation automation. Create a separate automation, test it with a sample booking, and only then enable it.

When it is better not to add code

ShopMagic documentation includes developer hooks and examples, including queue-related logic and custom placeholders, but those solutions require a solid understanding of code, classes, and event data. For most booking sites, it is safer not to add PHP snippets until you have proven that the requirement cannot be handled through settings alone. If you truly need a custom placeholder or special scheduling logic, hand it off to a developer and test it on a staging site.

FAQ About Setting Up WooCommerce Bookings Emails with ShopMagic

Is WooCommerce Bookings required for the add-on to work?

Yes. ShopMagic documentation clearly states that the add-on requires the core ShopMagic plugin and the official WooCommerce Bookings extension. Without WooCommerce Bookings, there is no booking entity, no booking events, and no related booking data.

Why is there no separate settings page after installation?

For the bookings add-on, the main verification happens inside the automation editor. After installation, new events, filters, and placeholders should appear there. According to the documentation, no separate complex add-on configuration is required.

Can I send an email one day before the booking?

Yes. That is exactly what the Booking Before Event event is for. The exact send timing depends on the event settings, the ShopMagic queue, and how reliably cron runs on the site. Before going live, test the scenario with a sample booking.

Why is the resource filter not showing up?

Check whether the Advanced Filters add-on is installed. The documentation says it is not required for the add-on's basic operation, but it enables booking-related filters inside automations. Also check for updates and admin-panel caching.

Does ShopMagic send emails retroactively for older bookings?

As a general rule, ShopMagic runs an automation after an event that happens after the automation is published. For past orders and customers, the documentation describes separate approaches through Manual Actions PRO or manual status changes, but for bookings those actions should be tested carefully and never applied in bulk without a trial run.

Is there a limit on the number of emails?

ShopMagic documentation says that ShopMagic itself does not impose a daily or monthly email limit. Actual sending still depends on your hosting, SMTP, email service, domain reputation, and task queue behavior.

Can it fully replace standard WooCommerce Bookings emails?

You can replace some notifications if you have recreated the required scenario in ShopMagic and verified the result. Disable standard WooCommerce emails only after testing, or customers may stop receiving important messages.

When is it better not to use this add-on?

If you need calendar synchronization, availability management, creation of bookable products, payments, or booking checkout flow, those are responsibilities of WooCommerce Bookings and other related extensions. ShopMagic for WooCommerce Bookings is responsible for automations and emails around bookings that are already working.

When ShopMagic for WooCommerce Bookings Is a Strong Choice

ShopMagic for WooCommerce Bookings is worth using when booking flow on the site already works, but the surrounding emails are still too generic. If customers need reminders, status-based confirmations, post-visit follow-ups, different instructions by resource, and clear dynamic booking data in the message, this add-on covers exactly that layer.

Before using it on a live site, verify the dependencies, create a test booking, build your first automation, check Outcomes, confirm email delivery, and only then disable overlapping standard notifications. That sequence lowers the risk of duplicate emails, empty placeholders, and missed messages.

If this guide has made it clear which events and emails your store actually needs, you can download ShopMagic for WooCommerce Bookings and test the add-on in a safe scenario. Start with one email that is easy to verify, then add reminders, resource-based conditions, and follow-up emails.

The conclusion is simple: the product is useful not because it has many settings, but because it helps you run clear scenarios with discipline. The more clearly you define the timing, audience, booking data, and result check, the more value ShopMagic for WooCommerce Bookings will bring to a real WooCommerce site.

By OceanTheme.org Editorial Team

 

You are not logged in to post comments.