WooCommerce Integration Addon
The Modern Events Calendar (MEC) WooCommerce Integration Addon is a professional solution for streamlining the event purchase process. It allows attendees to treat event tickets as virtual products, enabling them to add multiple tickets for various events to a single WooCommerce cart and checkout alongside other products on your website.
Initial Setup
Before you begin, ensure you have the following requirements:
Read Also:
How to install MEC and Addons?- MEC Pro: This addon utilizes the booking feature exclusive to the Pro version and is unavailable in MEC Lite.
- Installation: Ensure both MEC and the WooCommerce Integration Addon are installed and activated.
Read Also:
How to add a booking system?
Payment Gateway Activation: Go to MEC Settings > Booking > Payment Gateways and activate the Add to WooCommerce Cart payment method.

Configuration Settings
Once activated, find the customization options under MEC Settings > Booking > Payment Gateways > Add to WooCommerce Cart.

- Title: Change the “Add to Cart” button text to your preferred phrase.
- Comment: Add a description for the gateway (HTML is allowed).
- After Add to Cart: Choose the automated action when the button is clicked:
- Redirect to Cart: Directs users immediately to the WooCommerce Cart page.
- Redirect to Checkout: Sends users straight to the Checkout page.
- Optional View Cart Button: Displays a message with a “View Cart” button.
- Optional Checkout Button: Displays a message with a “View Checkout” button.
- Position: Set the display order of this gateway in the booking section compared to other payment methods.
Payment and Booking Status
WooCommerce payment status and MEC booking confirmation status represent two different aspects of the order:
- Payment: Indicates whether WooCommerce has received the payment, such as Paid or Awaiting payment.
- Booking: Indicates whether the MEC reservation is confirmed, such as Confirmed or Pending.
A WooCommerce order can therefore create an MEC booking before payment is completed. For example, an order placed using a manual payment method may be placed On hold, while the corresponding MEC booking is created and remains Pending until payment is received.
This separation allows the booking record and payment state to be handled independently.
Syncing Booking Statuses
The Sync the Booking Confirmation Status with the Corresponding Woo Order feature automatically updates MEC booking statuses according to WooCommerce order changes.

Map your WooCommerce statuses to the three MEC categories using these placeholders:
Recommended status mapping:
- Pending Statuses:
pending,on-hold - Confirmed Statuses:
processing,completed - Rejected Statuses:
cancelled,refunded
With this configuration:
- Pending / On hold: The MEC booking is created while payment is still awaiting completion, and the booking remains Pending.
- Processing: The MEC booking is created or updated and becomes Confirmed. The payment is treated as Paid.
- Completed: The MEC booking remains Confirmed, and the payment remains Paid.
- Cancelled / Refunded: The MEC booking is moved to the corresponding rejected state.
Pro Tip: Enabling this feature will override any auto-confirmation settings previously established in the general MEC Booking settings.
Offline and Invoice Payments

The integration supports offline payment workflows where WooCommerce creates an order before the payment has been received.
Supported offline methods include:
- Direct Bank Transfer (BACS)
- Cheque
- Cash on Delivery (COD)
- Invoice / Rechnung
- Other configured offline payment methods
For invoice-based or custom gateways, the integration can recognize a payment method when its gateway ID or title contains Invoice or Rechnung.
If a custom offline payment method is not detected automatically, its gateway ID can be added manually under Extra offline payment method IDs.
Confirm Offline Bookings Before Payment

The Confirm offline bookings before payment option controls whether an offline booking should be confirmed before payment is received.
When this option is disabled:
- An eligible WooCommerce order can create the MEC booking while the order is On hold.
- The MEC booking remains Pending.
- The payment remains Awaiting payment until WooCommerce records the payment.
- When the order reaches Processing or Completed, the booking becomes Confirmed according to the synchronization settings.
When this option is enabled:
- An eligible offline or invoice order can create the MEC booking while the order is On hold.
- The booking is Confirmed before payment is received.
For most invoice and bank-transfer workflows, keeping this option disabled prevents an unpaid ticket from being treated as a confirmed reservation.
Extra Offline Payment Method IDs
If a custom payment gateway is not automatically recognized as an offline or invoice payment method, enter its gateway ID in Extra offline payment method IDs.
Multiple gateway IDs can be entered as a comma-separated list.
For example:
my_invoice_gateway
Taxes and Fees Management

You can choose how to handle financial details between the two systems:
You can choose how taxes and fees are handled between MEC and WooCommerce.
Add MEC Ticket Taxes/Fees to Cart: Applies tax settings from MEC Settings > Booking > Taxes / Fees to the WooCommerce cart.


In the Tax/Fee settings, you can use Tax Method to determine whether the ticket price is treated as Tax Included or Tax Excluded. The ticket price is then calculated according to the selected method when it is added to the WooCommerce cart.

Tax Included: The configured ticket price already includes the applicable tax.
Tax Excluded: The applicable tax is calculated separately and added to the configured ticket price.
Add WooCommerce Standard Taxes to the Tickets: Transfers “Standard Tax” to MEC reservations so they appear on both WooCommerce orders and MEC invoices.



Advanced Features & Management
Also, users can use WooCommerce coupons on the cart page.
- Categories: Assign specific WooCommerce product categories to your tickets by navigating to the Tickets tab in your event settings and using the Select Ticket Product Categories field.


- Coupons: Attendees can use standard WooCommerce coupons on the cart page to receive discounts on their tickets.
- Emails: MEC and WooCommerce send emails separately. MEC booking notifications follow your Booking and Notifications configurations, while WooCommerce handles order-specific status emails.
Legacy Orders and Booking Backfill
The integration also handles eligible older WooCommerce orders that do not have a corresponding MEC booking.
A background admin scan can detect eligible legacy orders and create the missing MEC booking. This helps recover bookings for older On hold, Processing, or Completed orders that were created before the updated booking synchronization behavior was available.
Use Cases (When This Addon is Useful)
- Unified Shopping Experience: Perfect for sites selling merchandise (like t-shirts or books) alongside event tickets in one transaction.
- Standardized Payment Management: Ideal for businesses that want to use a familiar WooCommerce checkout flow and existing payment gateways.
- Complex Tax Compliance: Useful for international sellers needing to apply specific tax rules supported by the WooCommerce tax engine.
Situations This Addon May Not Be Ideal
- MEC Lite Users: This addon requires MEC Pro to function.
- Pre-filled Forms: It cannot currently use WooCommerce customer data to pre-fill participant registration fields.
- Dynamic Cart Edits: Users cannot change the quantity of tickets on the WooCommerce Cart page; they must delete the item and restart the selection.
- Protected Content: It does not inherently hide page elements (like videos) based on whether a user has purchased a ticket.
Troubleshooting for Beginners
- “Add to Cart” Option Missing: Ensure the gateway is enabled under MEC Settings > Booking > Payment Gateways.
- 500 Errors at Checkout: This is typically a server-side error; check your server logs or follow standard WordPress troubleshooting for internal server errors.
FAQ
I use the WooCommerce Integration Addon but don’t see the Add to Cart option. What’s the issue here?
Go to MEC Settings > Booking > Payment Gateways and make sure Add to WooCommerce Cart is enabled.
I want to translate the WooCommerce Integration Addon. How can I do that?
Please refer to the MEC translation documentation for information about translating MEC and its addons.
Does the WooCommerce Integration Addon work with MEC Lite?
No. The WooCommerce Integration Addon requires MEC Pro because it uses the booking functionality available in the Pro version.
How can I synchronize the WooCommerce order status with the MEC booking status?
Go to MEC Settings > Booking > Payment Gateways, enable Sync the Booking Confirmation Status with the Corresponding Woo Order, and configure the WooCommerce statuses under the Pending, Confirmed, and Rejected status settings.
Can an MEC booking be created before the WooCommerce payment is completed?
Yes. For supported offline and invoice payment methods, the MEC booking can be created while the WooCommerce order is on hold. When confirm offline bookings before payment is disabled, the booking remains Pending until the order reaches a Confirmed status.
Can an offline booking be confirmed before payment?
Yes. Enable Confirm offline bookings before payment. This allows supported offline and invoice bookings to be confirmed when the order is created, even though payment has not yet been received.
Do I need to manually change an on hold order to Processing to create the MEC booking?
No. For supported offline and invoice payment methods, the MEC booking can be created while the WooCommerce order is on hold. Manually changing the order to Processing is not required just to create the booking.
What happens when an on-hold order changes to Processing?
The MEC booking is created or updated and becomes Confirmed, provided Processing is configured as a Confirmed WooCommerce status. The payment is treated as Paid.
Can I use a custom invoice or offline payment gateway?
Yes. If the gateway is not automatically recognized, add its gateway ID under Extra offline payment method IDs.
Please, is there a way to hide an element of the page for example a video that is on a page for people who did not buy that ticket, an example: [tribe_tickets_protected_content post_id = “123”]
Your content
[/ tribe_tickets_protected_content]
also a solution is to make compatible with the woocommerce groups plugin https://woocommerce.com/products/groups-woocommerce/?aff=13200
It would be great to be able to hide things for certain customers who have not bought the ticket to see an event
Hi Webnus !I’m testing Woocommerce Integration Addon since several days and here are my suggestions.1- When I select an event and add it to my cart, I can’t modify the number of tickets on the Cart page, and I can’t return to my selection to modify it. Users are forced to delete their selection and start over. So it would be fantastic if this feature was possible. I understand M.E.C tickets are not products that Woocommerce can manage, but if there was a possibility to return to the previous step to modify selection, it would be perfect!2- I enabled coupons on M.E.C. and it works well, but it would be perfect if the applied discount appeared in the product description on the Woocommerce Cart page to reassure the customer before purchasing.Thanks a lot for your amazing development and the quality of your support!
Is the Woocommerce basket and checkout with this addon as it would usually be? So no changes to options? E.g. if I used this addon and also has PW Gift Cards installed, would the gift cards plugin work harmoniously with the MEC WC plugin? Ta
Hi Webnus!Is it possible to use the customer informations saved in Woocommerce to pre-fill the fields that I added in the participant registration form? I want to facilitate booking multiple events when the customer is logged into his Woocommerce account. Currently, the user must complete these fields each time he change events (only the name and email fields are pre-filled).Here are the fields I added to the participation form: Phone and Company (that exist in Woocommerce). I want also to know Function (but it’s optional).Thanks!
Hello,
Unfortunately, currently, this is not possible,
I will forward your comment to our developer team and they’ll surely receive it. If it is possible they will add this feature in the upcoming updates of the Plugin.