1. Documentation /
  2. WooCommerce Zapier Integration

WooCommerce Zapier Integration

Introduction

↑ Back to top
WooCommerce Zapier offers seamless integration with over 6,000 cloud apps and services via the Zapier web automation service. With this integration, you can automate tasks, synchronise data efficiently, and connect with the tools essential to your business. By reducing manual effort, WooCommerce Zapier streamlines your processes, enhancing efficiency and setting the stage for growth. Embrace the intelligent, scalable, and automated solutions WooCommerce Zapier provides to elevate your online store. Supports more than 70 triggers across 10 resources: Supports more than 20 actions:

Have a Question Before You Buy?

↑ Back to top
Please review our Frequently Asked Questions or fill out our Pre-Sales enquiry form, and we will happily answer your questions about WooCommerce Zapier.

Purchasing WooCommerce Zapier

↑ Back to top
You can purchase WooCommerce Zapier from the Woo Extension Store. All purchases include one year (12 months) of updates and support, and have a 30-day money-back guarantee, allowing you to try WooCommerce Zapier risk-free. Please review the WooCommerce Zapier System Requirements before purchasing. After purchasing, please proceed to the Installation guide for details on how to install WooCommerce Zapier. Buy Now

What’s New

↑ Back to top

WooCommerce Memberships Support

Now includes support for the WooCommerce Memberships2 plugin with new Membership Plan and User Membership resources. This update adds a total of 4 actions and 17 triggers to WooCommerce Zapier.
WooCommerce Zapier Plugin Version 2.10 Required: Please ensure you update the WooCommerce Zapier plugin to version 2.10.0 to use this functionality.

Support for WooCommerce Cart and Checkout Blocks

WooCommerce’s Cart and Checkout Blocks feature is now fully supported by WooCommerce Zapier. Please see the new Cart and Checkout Blocks Compatibility section for full details.
WooCommerce Zapier Plugin Version 2.10 Required: Please ensure you update the WooCommerce Zapier plugin to version 2.10.0 to use this functionality.

Improved Error Handling for Triggers and Actions

The Task History screen within WooCommerce now includes errors along with successful events that occur when running Zaps. You can see extended details about why an event failed. This screen also now supports filtering by task status and/or searching your task history, making it much easier to manage your WooCommerce store’s automation activity. Please see the new Task History and Error Codes chapters for full details.
WooCommerce Zapier Plugin Version 2.10 Required: Please ensure you update the WooCommerce Zapier plugin to version 2.10.0 to use this functionality.

New Subscription Note Trigger and Actions

Subscription notes are now supported in Zaps, including a new Subscription Note Trigger, as well as new Create Subscription Note and Find Subscription Note actions.

New Order Note Trigger and Actions

Order notes are now supported in Zaps, including a new Order Note Trigger, as well as new Create Order Note and Find Order Note actions.

Support Updating Existing Array (Line Item) Data

Added a new ID field for data arrays, also known as line item data. This new field will provide additional functionality and flexibility. This new field will be applicable to various data arrays including but not limited to Line Items, Meta Data, Shipping Lines, Fee Lines, Coupon Lines and many more. You can see detailed information about all input fields for various resources in the following links:

Support for WooCommerce High-Performance Order Storage

WooCommerce’s High-Performance Order Storage (HPOS) feature is now fully supported by WooCommerce Zapier. Please see the new HPOS Compatibility section for full details.

Full Support for Variable Product and Product Variations

Variable products and individual product variations are now fully supported in Zaps, including Create Product, Update Product and Find Product actions. Please see the Product Actions and Variable Products sections for full details.

5 New “Product” Trigger Rules

Easily trigger Zaps when a Product’s stock status changes or a product reaches the low stock threshold. Please see the Product Trigger Rules section for full details on the new product trigger rules.

New “Update Product Price” Action

We introduced an intelligent new action that makes it easy to update an existing product or variation’s regular price or sale price. Users can choose between ID or SKU when identifying the product, and decide how to apply the incoming value (set as a new value, increment by or reduce by a fixed amount or percentage). It allows users to set a product’s sale price relative to the product’s regular price. Please see the Update Product Price action section for full details.

New “Update Product Stock Quantity” Action

We introduced a new intelligent action that adopts how to target the product and how to change the stock quantity. Users can choose between ID or SKU and decide how to apply the incoming value (set as a new value, increment by or reduce by). For example, it allows users to process stock intake without knowing the current quantity beforehand. Please see the Update Product Stock Quantity action section for full details.

17 New “Status Changed To …” Trigger Rules

Easily trigger Zaps when an Order, Subscription3 or Booking1 changes to a specific status, without needing to use multi-step Zaps. Please see the Trigger Rules section for full details on the new trigger rules.

Transfer Existing Data

Easily move data in bulk by transferring data through an existing Zap. See here for full details.

WooCommerce Bookings Support

WooCommerce Bookings1 is now supported – see here for more details.

Two-Way Integration

The WooCommerce Zapier integration is two-way, and now supports Actions. You can use Zaps to create new and update existing Order, Product, Customer, Coupon, Booking1, or Subscription3 data in WooCommerce.

New Triggers

WooCommerce Zapier now has four times (4x) the number of available trigger events, giving you 3 times as many opportunities and reasons to send your WooCommerce store data to Zapier.

Simplified Zap Creation

The Zap creation process is simplified and is now fully managed via the zapier.com interface. There is no more requirement to create corresponding Zapier Feeds in WooCommerce.

New Resources (Data Types)

WooCommerce Zapier Version 2 adds support for Products and Coupons, in addition to the already supported Orders, Customers and Subscriptions3.

Powered by REST API

Giving you increased access to more data fields as well as more robust and reliable data delivery via WooCommerce webhooks.

Secure by Design

Secure HTTPS communication between WooCommerce and Zapier, as well as a new authentication method, will help improve data confidentiality and integrity.

And More

Please see the release notes for full details of recent changes and improvements.

Installation

↑ Back to top

Purchase WooCommerce Zapier

↑ Back to top
To use WooCommerce Zapier, you will need to purchase the WooCommerce Zapier extension from the Woo Extension Store.

Zapier Account

↑ Back to top
You will also need a Zapier Account.
Zapier Offers Both Free and Paid Plans: WooCommerce Zapier can be used with a free Zapier plan, however, advanced functionality such as Premium Apps and Multi-step Zaps (to use Filter and Paths) are only available for paid plans. Free plans also limit the number of tasks per month, so WooCommerce stores with higher order volumes will be more likely to need a paid Zapier plan. For further pricing information see Zapier’s Plans & Pricing page.
If you don’t have one, you can sign up on the Zapier website. Select the Sign Up button or just enter your information in the available form.

System Requirements

↑ Back to top
The WooCommerce Zapier plugin has the following software and configuration requirements.

Software Requirements

To use WooCommerce Zapier, you must ensure that your website meets the following minimum software requirements:
Software Minimum Version Recommended Version
PHP 7.2 8.24
WordPress 6.0 Latest release
WooCommerce 6.55 6 Latest release

Configuration Requirements

To use WooCommerce Zapier, the following additional requirements must also be met:
Item Requirement
WooCommerce/WordPress Account Account needs to be an administrator role7
WordPress Permalinks Pretty permalinks enabled 8
HTTPS Site needs to be accessible via https://
WooCommerce REST API Running and operational9
WordPress Cron Running and operational10
Zapier Account Free or paid plans11

WooCommerce Extensions

WooCommerce Zapier also integrates directly with other WooCommerce Extensions. To use WooCommerce Zapier’s specific features(s) for an extension, you will need to ensure that you have the minimum version of the extension installed.
Feature WooCommerce Extension Minimum Version Recommended Version
Booking Resource WooCommerce Bookings 1.15.55 Latest release
Membership Plan Resource and User Membership Resource WooCommerce Memberships 1.25.0 Latest release
Subscription Resource Woo Subscriptions 4.2.0 Latest release

Installation

↑ Back to top
There are two different methods to install your WooCommerce Zapier extension:

1. One-Click Install/Update Method

If you have connected your Woo account to your website, go to your WordPress Dashboard —> Side Menu —> WooCommerce —> Extensions —> My Subscriptions screen and click the one-click Download button next to WooCommerce Zapier. This is also the easiest way to keep your WooCommerce Zapier plugin up to date. This article explains how you can connect your account to your WooCommerce store to activate in-dashboard one-click downloads/updates.
Trouble Updating WooCommerce Zapier?: If you encounter an error updating WooCommerce Zapier, see here for suggestions.

2. File Upload

You can also log in to your WooCommerce.com account and go to the Downloads page to download the latest zip file of the extension to your computer. From your WordPress Dashboard, go to the Side Menu —> Plugins screen and click the Add New and then Upload Plugin button at the top of the page. Select the zip file from your computer and click the Install Now button then the Activate button to activate WooCommerce Zapier.
Tip: Some web browsers automatically unarchive downloaded Zip files. Make sure this functionality is disabled.
We also suggest going to WordPress Dashboard —> Side Menu —> WooCommerce —> Extensions —> My Extensions screen to connect your Woo account, so that you have access to future WooCommerce Zapier versions from within your WordPress Dashboard.

Check the Installation

↑ Back to top
Finally, it is best to go to the WordPress Dashboard —> Side Menu —> WooCommerce —> Status screen, and review the Active Plugins section to ensure that the WooCommerce Zapier plugin is up to date.
Congratulations!: WooCommerce Zapier is now installed. Please proceed to the Usage guide for details on how to use WooCommerce Zapier.

Usage

↑ Back to top
Once you have installed the WooCommerce Zapier plugin on your WooCommerce store, configuring your Zaps/integrations (Triggers and Actions) is done via the Zapier.com website.

Make a Zap

↑ Back to top
Tip: If you haven’t created a Zap before, please refer to Zapier’s key concepts article before proceeding.
To create a WooCommerce Zap, we recommend using one of the Zap templates, as it is typically quicker than hand-crafting your Zap from scratch.
Tip: The actual fields and data can vary depending on the WordPress and WooCommerce versions installed and by installed plugins and settings. If you are using an Actions template, please refresh the fields to make sure everything is updated to match your store.
If you would like to start from scratch, go to your Zapier dashboard page on zapier.com and press the Create Zap button on the left sidebar to set up a new Zap. Alternatively, you can start typing directly on that page. Zapier Dashboard

Authenticate

↑ Back to top
When you create your first WooCommerce Zap, you will be asked to choose your WooCommerce account. The authentication process involves the Zapier.com service connecting to your WooCommerce store using your WordPress administrator username and password. Please ensure you complete the authentication dialogue window correctly:
  • In the WordPress Site Address (URL) field, enter the URL to your WordPress website’s home (front) page. Be sure the URL starts with https:// and does not include the trailing slash. For example: https://example.com If in doubt, go to the WordPress Dashboard —> Side Menu —> Settings —> General screen and copy the Site Address (URL) field value and paste it into the WordPress Site Address (URL) field in the authentication dialogue window.
  • In the WordPress Username field, enter your administrator username or email address that you use when logging into the WordPress dashboard.
  • In the WordPress Application Password field, create an Application Password for your WordPress administrator account, and enter it here.
    Use a WordPress Application Password:
    Using an application password (rather than your regular password) improves compatibility with security-related plugins and services. See details in the [Security Plugins](#security-plugins) chapter.
    
    To set up an Application Password, go to **WordPress Dashboard** --> **Side Menu** --> **Users** --> **Profile** screen and press the "Add New Application Password" button. Please [see here for details](#application-passwords).
    
    Can't see the Application Passwords settings in WordPress? Please [see here for suggestions](#application-passwords).
    
    rnatively, if you are unable to create an Application Password, you can use your regular WordPress password.
    
    Example Authentication dialog
Click the Yes, Continue button to complete the process. Congratulations, you have successfully authenticated! What’s next?
  • If you would like to send WooCommerce data to your Zap, please continue to the Trigger chapter.
  • Alternatively, if you would like to create new (or update existing) WooCommerce data from your Zap, please go to the Action chapter.
Note: If you encounter issues while authenticating, please refer to our Troubleshooting Authentication Errors documentation.

Trigger (Outgoing Connection)

↑ Back to top
This feature allows you to send WooCommerce data to a Zapier Zap.

Step 1: Trigger step

  1. In the Choose App & Event step, search for the WooCommerce app and click it.
  2. Select the Resource (data type) in the Choose Trigger Event dropdown — for example, Order if you would like to send WooCommerce orders to Zapier.
  3. In the Choose Account step, click on the Sign in to WooCommerce button to authenticate your Zapier account with your WooCommerce store. If you are already authenticated, you can choose the previously used authentication from the WooCommerce account dropdown menu instead.
    Note:
    Use the WordPress [Application Password](#application-passwords) feature to authenticate.
    
    If you encounter issues while authenticating, please refer to our [Troubleshooting Authentication Errors](#authentication-errors) documentation.
    
  4. The Customise…12 step
  5. In the Find Data step, click the Test & Continue button to retrieve sample data from your WooCommerce store.
    Find Data:
    When retrieving sample data from your store, it isn't contextual to the Trigger Rule you have chosen for the Zap. Find Data simply retrieves your most recent store data (regardless of status) when getting sample data.
    
    However, once you turn on your Zap, the trigger rule will apply and should only send relevant data to Zapier.
    

Step 2: Action step

  1. In the Choose App & Event step, choose a service to send your WooCommerce data to.
  2. Finish configuring the Action step. Please see Zapier’s instructions on setting up your Zap action for more details.

Step 3: Finishing Zap

↑ Back to top
Transferring Existing Data: Once your Zap is published, it will operate on data that is added or changed from that point forward. If you need to process existing data through your Zap, you can transfer your existing data using your new Zap. Tip: To ensure reliable and timely delivery of your WooCommerce data to Zapier, we recommend setting up a server cron job.

Action (Incoming Connection)

↑ Back to top
Actions allow you to create new (or update existing) WooCommerce data from a Zapier Zap.

Step 1: Trigger steps

  1. In the Choose App & Event step, choose a service to get the source data from.
  2. Finish configuring the Trigger.

Step 2: Action steps

  1. In the Choose App & Event step, select the WooCommerce app.
  2. Choose the Action in the Choose Action Event dropdown — for example, Create Order.
  3. In the Choose Account step, click on the Sign in to WooCommerce button to authenticate your Zapier account with your WooCommerce store. If you are already authenticated, you can choose the previously used authentication from the WooCommerce account dropdown menu instead.
    Note:
    Use the WordPress [Application Password](#application-passwords) feature to authenticate.
    
    If you encounter issues while authenticating, please refer to our [Troubleshooting Authentication Errors](#authentication-errors) documentation.
    
  4. The Customise…12 step
    • Fill in all of the WooCommerce input fields that you want to send data to. You can choose data fields from the Trigger part of your Zap, or you can type in hard-coded values.
  5. In the Send Data step, click the Test & Continue button to finish the Action configuration.

Step 3: Finishing Zap

↑ Back to top
Transferring Existing Data: Once your Zap is published, it will operate on data that is added or changed from that point forward. If you need to process existing data through your Zap, you can transfer your existing data using your new Zap. Tip: To ensure reliable and timely delivery of your WooCommerce data to Zapier, we recommend setting up a server cron job.

Create a Resource

↑ Back to top
This feature allows you to create new data in WooCommerce from a Zapier Zap. For example, you could create a Zap that creates a new Customer in WooCommerce whenever they subscribe to your mailing list. Configure your Zap as seen in the Create an Action chapter above, and in the Choose Action Event dropdown select the corresponding Create Action. The Zapier Integration (and WooCommerce itself) is quite relaxed when creating a new Resource. You can create orders, products, and subscriptions3 without any input, but that’s probably not what you want.
  • For the Create Coupon action, you must provide at least the Coupon code.
  • For the Create Customer action, you must provide at least the Customer email address.
The required fields are clearly labelled in the Zapier interface.
Tip: For more details on each data field, please consult the relevant Field Definitions documentation.

Update a Resource

↑ Back to top
This feature allows you to update existing data in WooCommerce from a Zapier Zap. For example, you could create a Zap that updates the inventory (stock) level of a WooCommerce product using Zapier. If you know the ID of a WooCommerce Resource (for example coming from a previous step), you can update that resource with the new Update Action. Configure your Zap as seen in the Create an Action chapter above, and in the Choose Action Event dropdown select the corresponding Update Action.
Note: Resource ID is Required for Update Steps: An update action always requires a valid top-level ID to be specified. This ensures that your Zap knows which record to update. On the other hand, any non-top-level ID is optional. If you leave it empty, WooCommerce will create a new entry, such as a new Meta Data item. To help identify the correct Resource ID, you can add a Find step before your update step. The result of your Find step will contain the Resource ID, which you can then use in the Update step. Tip: For more details on each data field, please consult the relevant Field Definitions documentation.

Find a Resource (Search)

↑ Back to top
This feature allows you to search for existing WooCommerce data from a Zapier Zap. For example, you could search for a product based on its SKU before updating it in WooCommerce. Configure your Zap as seen in the Create an Action chapter above, and in the Choose Action Event dropdown select the corresponding Find Action. After finding a Resource you can immediately create one if it is not found. This is a great way to implement synchronisation functionality between two apps using Zapier. Create after Find Alternatively, after searching you can add an additional step11 to your Zap to use the found Resource/data.
Tip: See the Product Types chapter for a full list of supported WooCommerce product types and functionalities. For more details on each data field, please consult the relevant Field Definitions documentation.

Meta Data (Custom Fields)

WooCommerce is designed to be flexible and extensible. Part of this extensibility is a meta data capability, which extensions/plugins can use to store their additional information/data. For example, whenever an order is created in WooCommerce, information is often stored in the order’s meta data. Payment gateways (such as Stripe) will often store their fee and/or net revenue information in Order Meta Data. Moreover, if you are using Custom Fields in your store, then they will typically be stored in meta data also. In the context of WooCommerce Zapier and your Zaps, the meta data that is available for use in your Zaps is as follows:

Using in Triggers and Searches

WooCommerce meta data is automatically expanded into individual fields to make them more accessible and usable in subsequent steps in your Zaps. Furthermore, for Create… Actions a list of fields is provided for adding multiple meta data records during creation. For example, if an Order has a stripe_fee meta data field, you can access it using the Meta Data Stripe Fee field in Zaps.
Important: Several caveats apply when using Meta Data in your Zaps:
  • Meta Data fields in WooCommerce are unstructured and typically vary from one resource to another. For example, if multiple payment gateways are used, one order may contain a specific meta data field (key), however, another order may not. This means a meta data field(s) can be missing or can be different in each task. Consider adding a Path or Filter step to your Zap, to conditionally perform separate actions depending on which Meta Data fields exist.
  • WooCommerce meta data fields can have multiple values for a single key. In this case, the last meta data value for that key is the one that is used in Zaps. i.e. the first value is overwritten by the second value.
  • The existing Meta Data, Meta Data Key and Meta Data Value fields are still present for backward compatibility reasons, however, we do not recommend using these.
When creating or configuring your Zap, the sample data chosen in the Find Data step in your trigger needs to contain the meta data fields that you would like to use in your Zap. This makes it much easier to complete your Zap setup because the fields will be available in your Action step(s) in your Zap.

Using in Actions (Creates)

In Create Actions, you will see a Meta Data List input section, and the Meta Data input fields are labelled as “Legacy”: Meta Data Input Fields The Meta Data List input field lets you add (set) multiple meta data records at once.
  1. In the left-hand field, enter the name (key) of the meta data record you would like to add.
  2. In the right-hand field, enter the desired value for the meta data field (you can also use template variables from previous steps when setting the value).
  3. If you would like to add/set multiple meta data records, click the plus icon and fill in that key and value also.
The Meta Data (Legacy) fields aren’t typically used, as we recommend using the newer Meta Data List input fields instead.

Transfer Existing Data Using a Zap

↑ Back to top
Zapier also allows you to transfer your existing data from one app to another, moving data in bulk. After setting up your Zap (and having it trigger from only that point onwards), you can also use the Transfer existing data option to move/send data in bulk. You can use it to move WooCommerce data in bulk from WooCommerce to another app of your choosing. Or you can use it to bulk move data from other apps into WooCommerce. See here for a great summary of this feature.

Use Cases

Below are some examples of what you can achieve using this feature.
Bulk Exporting WooCommerce Data
You can use WooCommerce Zapier to bulk export WooCommerce data to another app.
  • Bulk Export Orders from WooCommerce
  • Bulk Export Products from WooCommerce
  • Bulk Export Customers from WooCommerce
  • Bulk Export Coupons from WooCommerce
  • Bulk Export Bookings from WooCommerce
  • Bulk Export Membership Plan from WooCommerce
  • Bulk Export User Membership from WooCommerce
  • Bulk Export Subscriptions from WooCommerce
This is particularly useful if you ever change one of your underlying systems. For example, if you change your CRM to a new system, you can bulk import WooCommerce data into your new system.
Bulk Importing Data Into WooCommerce
You can use WooCommerce Zapier to bulk import data from another app into WooCommerce:
  • Bulk Import Orders into WooCommerce
  • Bulk Import Products into WooCommerce
  • Bulk Import Customers into WooCommerce
  • Bulk Import Coupons into WooCommerce
  • Bulk Import Subscriptions into WooCommerce

Usage

Please consult the following articles for detailed instructions:
WooCommerce as a Source
When using WooCommerce as a source, all WooCommerce Triggers are available for use. You select your nominated WooCommerce trigger resource, then configure your destination action and map fields, similar to how you map fields in the Zap Editor interface. Zapier will then retrieve all of your WooCommerce data and display it in the interface.
Info: It may take some time to retrieve all existing data from your WooCommerce store. Please be patient while data is retrieved.
You can then filter and/or search your WooCommerce data, and tick the record(s) that you would like to send to your destination app. This allows you to easily select all (or some) of your existing WooCommerce data with a few clicks.
WooCommerce as a Destination (Action)
If using WooCommerce as a destination (action), you can send data from any of Zapier’s supported source apps, and send that data to WooCommerce. All existing WooCommerce Actions are available for use.

Advanced Zaps

↑ Back to top
In a Zap you can have additional steps between the Trigger and Action steps:
  • Use a Find step to access additional data.
  • Use the Filter or Paths built-in apps to implement advanced logic or support multiple outputs.
  • Use the Formatter built-in app to transform field values.
  • Use the Code built-in app to transform data structures, or calculate new fields.
Note: Multi-step Zaps require a paid Zapier account11. You can add multiple steps in a Zap to combine individual functionalities.

Find Steps

For accessing additional data in your Zap, you can add a Find step between your Trigger and Action steps in your Zap configuration. You can see a list of available search (find) actions in the Actions and Searches documentation.
Finding Products from Orders
Tip: See the Product Types chapter for a full list of supported WooCommerce product types and functionalities.
If you are using one of the Order Triggers, and want to use the line item product category (or tag) in a subsequent action step as well, you can create a Zap that utilises a Find Product step. There are two separate ways to implement this, depending on which Trigger you are using:
Line Item in an Order —> Find Product
If you are using the Line Item in an Order trigger, you can configure your Zap like this: Find Product Zap Configuration” /> Ensure you are using a Line Item in an Order step as Step 1, then add a Find Product action as Step 2. If your store uses product SKUs, choose to search by SKU, and insert the Line Product SKU field from Step 1 into it. This instructs the Find Product step to search using the correct (unique) product SKU from the order’s line item. If your store does not use product SKUs and uses a mix of simple and variable products, then it will not be possible to use a single Find Product step to search for the product or variation due to the way the WooCommerce Order Line Item stores the Product ID and Variation ID in different fields. Instead, we highly recommend adding SKUs to all of your products and variations and then using a Find Product Step to search by SKU. In step 3 of your Zap (the action) you can utilise the categories —> name (or tags —> name) array which you can then use in the next step of your Zap.
Order —> Looping by Zapier —> Find Product
If you are using the Order trigger, an alternative approach is to use a Looping by Zapier step in your Zap like this: Looping by Zapier –> Find Product Zap Configuration” /> Please see the Looping by Zapier chapter below for more details.

Filter by Zapier

Filter by Zapier allows you to add special conditions to Zaps. For example, using a filter you could configure a Zap to:
  • act only on orders for a specific product category
  • act only on orders that exceed a specified order value
  • act only on orders that are to be shipped to a specific country
Please see Zapier’s help articles for more information on how to use filters in your Zaps.

Paths by Zapier

Paths by Zapier allows you to add branching logic to Zaps. The main advantage of using Paths is that you can create up to three different outputs (paths) within a single Zap. Please see Zapier’s help article for more details.

Looping by Zapier

Adding a Looping by Zapier action to your Zap lets you perform your desired action more than once per Zap. This is particularly useful with WooCommerce Order triggers, which have multiple line items. Typically, you would use the Create Loop From Line Items option, with a configuration like this: Looping by Zapier Setup Which would allow you then use the 2. Product ID field in a subsequent step (such as a Find Product step): Looping by Zapier Find Product Setup Please see Zapier’s help article for more details on how to use Looping by Zapier.
Warning: Looping by Zapier is currently a Beta Zapier app and is subject to change.

Formatter by Zapier

With Formatter by Zapier, you format data in Zaps. For example, you can split or combine field contents, convert between different number or date formats, or even transform the whole data structure. Please see Zapier’s help article for more details.
Line Itemizer
Various parts of WooCommerce Zapier require line-item-enabled data sources. See the Actions and Searches chapter for a full list of these fields. The Line Itemizer transform in the Formatter by Zapier app allows you to easily convert comma-separated text or values into line items that can be used in WooCommerce Zapier Actions.
An Example: Adding Multiple Product Attributes to a Product
The Line Itemizer transform can be used to generate multiple product attributes that are used as part of a Create Product or Update Product action to add multiple Product Attributes to a WooCommerce Product. In WordPress, go to WordPress Dashboard —> Side Menu —> Products —> Attributes, to see the list of store-wide Product Attributes. On that screen, hover over one of the attributes you’d like to use and then click on Edit to edit that attribute. Your browser URL bar will show something similar to /wp-admin/edit.php?post_type=product&page=product_attributes&edit=123. Make a note of the edit=123 part of that URL. This part tells you the attribute’s ID (in this example, it is 123). Repeat the above process for all attributes that you would like to use in your Zap. Return to your Zap Editor, and before your WooCommerce Create Product or Update Product action, add a new Formatter by Zapier —> Line Itemizer step. In the Set up action step, enter Attributes into the Line-item(s) Group Name field. In the Line-item Properties section, type id in the left field, then add another row and type value: Line Itemizer Action Set Up The right-hand id field will be a comma-separated list of Attribute IDs for your store that you would like to assign to the product. The right-hand value will be a comma-separated list of Attribute Values for the above Attribute IDs. Typically, this field won’t have manually typed values, it will instead have a comma-separated list of actual values from Step 1 of your Zap. The output of this new Formatter step will be an array (list) of attribute IDs and their values. You then pass that output to your Create Product or Update Product step by editing your Create Product or Update Product step and configuring it similarly to this: Line Itemizer Action Set Up When your Create Product or Update Product step executes, it will “loop” over each item in the attributes list, and send them all to WooCommerce when creating/updating the product. The result should be a product in WooCommerce that has multiple attributes and values assigned to it. This same technique can be used for any other line-item aware field in WooCommerce Zapier. See the Actions and Searches chapter for a full list of these line-item-enabled fields.

Code by Zapier

By adding the Code by Zapier step to your Zap, you can add fields based on the trigger data. For example, you can restructure, simplify or calculate new values. The output can be usable in the subsequent steps. Please see Zapier’s help article for more details on how to use Javascript code in your Zaps. Below are some examples of what you can achieve using a Code by Zapier step.
Heads Up: The following code snippets are provided as examples only. We are unable to provide support for writing custom code, so you may need to enlist the support of a Certified Zapier Expert or Web Developer.
Add “Line Items Count” Field to an Order
// Define "lineItemIDs" in the Input Data section.
// Get the number of line items.
return { line_items_count: inputData.lineItemIDs.split(',').length };
  1. Add a Code by Zapier step to your Zap and choose Run Javascript for the Event Action.
  2. Define lineItemIDs by choosing the 1. Line Items ID in the Input Data section.
  3. Copy the above code snippet and paste it into the Code section.
The step should look like this: Line Items Count Code settings The result would show in the subsequent steps like this: Line Items Count result
Add Meta Data Fields to a Trigger
Heads Up: Looking for the meta data code example? Individual meta data fields are now accessible without needing to add a Code by Zapier step. Please see here for more details.

Performing Different Actions For Different Products Ordered

Each Zap that uses the Order trigger will apply to all orders (and thus all products) by default, however, it is possible to perform different actions based on the product ordered. To set this up, we recommend using the Line Item in an Order trigger (instead of the Order trigger) because the Line Item in an Order trigger fires individually for each individual line item ordered, rather than firing only once per order. This allows you to automate based on the individual product(s) ordered. Step 1 of your Zap should be the WooCommerce app, with Line Item in an Order as the trigger. You’ll likely use the Order paid or Order created trigger rule. Step 2 of your Zap should be either a Paths by Zapier or Filter by Zapier step. Step 2 is where the conditional logic is added to only act on a specific product. For example, using a Paths by Zapier step, you can set up several paths for different products in your store, which would look something like this: Paths Example For each path configuration, you would set up criteria such as the following, which is based on the name of the product ordered: Paths Criteria Based on Product Name Then inside each path, you would perform your desired action. For more details on how to use Paths in your Zaps, please see this Zapier help article.
Warning: Zapier has a limit on the number of paths (and steps) in a Zap, so if you need more paths or steps, then you will need multiple Zaps.

Task History

↑ Back to top
You can see previously sent information to Zapier on the Zapier.com Task History page. If a task encounters a problem, it will be stopped. Zapier can distinguish between issues and will automatically stop affected task(s). If the problem prevents not just that specific task but any later task as well, then the task will be stopped and marked as “Errored.” If repeated errors occur, then the corresponding Zap is also disabled. Alongside the above error, Zapier can stop and mark a task as “Halted” if the problem will not prevent future tasks from being completed successfully. For more troubleshooting tips, please consult the Troubleshoot Zaps documentation.
Tip: You can resubmit halted or errored tasks from the Zapier Task History page if you need to. Please look at the Issues with Tasks chapter if you have any problems. You can find more information on the Task History Help page on Zapier.com.

Existing Connection

↑ Back to top
To manage, modify, or delete existing connections, please refer to the Zapier Help’s Manage your Zaps page.

Order

↑ Back to top
Orders are an essential part of the eCommerce process. They represent an “order event” followed by its various stages, such as payment, fulfilment, or shipping. For triggers, the Order resource is accessible in two separate ways in the WooCommerce Zapier Integration:
  • The Order trigger, described here, creates a separate Zapier Task for every order in your store.
  • On the other hand, the Line Item in an Order trigger is a great way to send every order line item (product) data independently to Zapier, because it creates a separate Zapier Task for every single line item (product) ordered in your store.
See the key differences in this Frequently Asked Questions chapter. You can choose between the two types of behaviour in your Zap when you are configuring the trigger step. Both triggers support the same set of Trigger Rules, but produce slightly different data fields.
Other Order resources: Orders also have other (child) resources that can be accessed in Zapier Integration: Using Woo Subscriptions?: If you are using the Woo Subscriptions extension, these Order trigger rules will also trigger for subscription signup and subscription renewal orders. If you are using a Subscription trigger in another Zap, you may wish to exclude subscription signups and renewals from your order Zap by using the following setup:
  • Zap Step 1: Use the Order trigger and your desired trigger rule (e.g. Order paid).
  • Zap Step 2: A WooCommerce Find Product action:
    • Product ID equals 1. Line Items Product ID (the product ID from step 1)
  • Zap Step 3: A Filter step:
    • Only continue if:
      • 2. Type
      • (Text) Does not contain
      • subscription
  • Zap Step 4: Your desired action.
The above setup will ensure that your order Zap only triggers when a non-subscription product is purchased.

Trigger Rules

↑ Back to top
A Trigger Rule defines an event (or multiple events) that will cause WooCommerce data to be sent to a Zapier Zap. The following trigger rules are available to trigger your Zaps when order data in your WooCommerce store is added, changed or deleted.

Order created

Triggers when an order is created.
Note: The Order created trigger rule will trigger for every order received (both paid and unpaid). If you would like to trigger your Zap only when you receive a paid order, then consider using the Order paid trigger rule instead.

Order deleted

Triggers when an order is deleted (trashed).
Only the ID field is available: Due to limitations in how WooCommerce handles deleted events, only the ID of the deleted resource is sent to Zapier when using this trigger rule. No other data fields are available.

Order paid

Triggers when an order is paid for. Occurs for real-time payment gateways (such as Stripe, PayPal, or most other credit card gateways).
Tip for offline/deferred payment methods: The Order paid trigger rule will not typically fire for offline/deferred payment methods such as Direct Bank Transfer (BACS), Check/Cheque or Cash on Delivery (COD). If you are using an offline/deferred payment method, you have several choices:
  • Use the Order created trigger rule, which will trigger for both paid and unpaid orders.
  • Use an Order status changed trigger rule, such as Order status changed to Processing or Order status changed to Completed.

Order restored

Triggers when an already trashed order is restored from the trash.

Order status changed

Order statuses are an important part of the order processing and fulfilment flow in WooCommerce. The following diagram shows the typical order status life cycle in WooCommerce: WooCommerce Zapier Order Status Life Cycle More details on the order status life cycle in WooCommerce can be found in the WooCommerce documentation. The Order status changed (any status) trigger rule will trigger every time an order changes status to any status, including when an order is first created. If you are interested in specific status change(s) only, you may wish to use a more specific Order status changed to … trigger rule. Below is a full list of Order status changed trigger rules:
  • Order status changed (any status)
  • Order status changed to Cancelled
  • Order status changed to Completed
  • Order status changed to Failed
  • Order status changed to On hold
  • Order status changed to Processing
  • Order status changed to Refunded
WooCommerce Zapier Plugin Version 2.4 Required: Please ensure you update the WooCommerce Zapier plugin to version 2.4.0 or later to use these Trigger Rules. WooCommerce Zapier version 2.4.0 renamed Order status changed to Order status changed (any status) to make it more clear that this trigger rule will trigger for any status change.

Order updated

Triggers when an order is updated/edited/changed/modified, including when an order is refunded.

Actions and Searches

↑ Back to top
An action is an event a Zap performs after it is triggered. Actions allow you to create new or update existing WooCommerce data from a Zap. Searches let you find existing WooCommerce data in a Zap, and then use it later in a subsequent step. The following actions are available for use in your Zaps to create, update or find orders.
Line-Item Enabled Data Fields: Coupon Lines, Fee Lines, Line Items, Meta Data, Shipping Lines, Refunds: To specify multiple values for these field(s), the values must be sent in a line-item aware format. Please see here for details on how the Line Itemizer can be used to achieve this. Stock Quantity does not get updated by default: If WooCommerce manages product inventory, creating or updating an order via Zapier does not change the stock quantity of the products in the order. You will need to adjust it manually, for example, by adding the following steps to your Zap after the Create/Update Order step:
  1. Add a Looping by Zapier step to loop over each Line Item from the Order step.
  2. Add an Update Product Stock Quantity step to “Reduce Stock Quantity By” the total quantity of each Line Item in the order.

Create Order

Creates a new Order in WooCommerce.
Create Input Fields
NAME TYPE DESCRIPTION
Parent Id integer Parent order ID.
Status string Order status.
Currency string Currency the order was created with, in ISO format.
Customer Id integer User ID who owns the order. 0 for guests.
Customer Note string Note left by customer during checkout.
Billing object Billing address. _Only the child fields are visible in the Zapier UI._
Billing —> First Name string First name.
Billing —> Last Name string Last name.
Billing —> Company string Company name.
Billing —> Address 1 string Address line 1
Billing —> Address 2 string Address line 2
Billing —> City string City name.
Billing —> State string ISO code or name of the state, province or district.
Billing —> Postcode string Postal code.
Billing —> Country string Country code in ISO 3166-1 alpha-2 format.
Billing —> Email string Email address.
Billing —> Phone string Phone number.
Shipping object Shipping address. _Only the child fields are visible in the Zapier UI._
Shipping —> First Name string First name.
Shipping —> Last Name string Last name.
Shipping —> Company string Company name.
Shipping —> Address 1 string Address line 1
Shipping —> Address 2 string Address line 2
Shipping —> City string City name.
Shipping —> State string ISO code or name of the state, province or district.
Shipping —> Postcode string Postal code.
Shipping —> Country string Country code in ISO 3166-1 alpha-2 format.
Payment Method string Payment method ID.
Payment Method Title string Payment method title.
Transaction Id string Unique transaction ID.
Meta Data array Meta data. _Only the child fields are visible in the Zapier UI._
Meta Data —> Key string Meta key.
Meta Data —> Value any Meta value.
Line Items array Line items data. _Only the child fields are visible in the Zapier UI._
Line Items —> Name any Product name.
Line Items —> Parent Name string Parent product name if the product is a variation.
Line Items —> Product Id any Product ID.
Line Items —> Variation Id integer Variation ID, if applicable.
Line Items —> Quantity integer Quantity ordered.
Line Items —> Tax Class string Tax class of product.
Line Items —> Subtotal string Line subtotal (before discounts).
Line Items —> Total string Line total (after discounts).
Line Items —> Meta Data array Meta data.
Shipping Lines array Shipping lines data. _Only the child fields are visible in the Zapier UI._
Shipping Lines —> Method Title any Shipping method name.
Shipping Lines —> Method Id any Shipping method ID.
Shipping Lines —> Instance Id string Shipping instance ID.
Shipping Lines —> Total string Line total (after discounts).
Shipping Lines —> Meta Data array Meta data.
Fee Lines array Fee lines data. _Only the child fields are visible in the Zapier UI._
Fee Lines —> Name any Fee name.
Fee Lines —> Tax Class string Tax class of fee.
Fee Lines —> Tax Status string Tax status of fee.
Fee Lines —> Total string Line total (after discounts).
Fee Lines —> Meta Data array Meta data.
Coupon Lines array Coupons line data. _Only the child fields are visible in the Zapier UI._
Coupon Lines —> Code any Coupon code.
Coupon Lines —> Meta Data array Meta data.
Set Paid boolean Define if the order is paid. It will set the status to processing and reduce stock items.

Update Order

Updates (modifies) an existing Order in WooCommerce.
Note: Resource ID is Required for Update Steps: An update action always requires a valid top-level ID to be specified. This ensures that your Zap knows which record to update. On the other hand, any non-top-level ID is optional. If you leave it empty, WooCommerce will create a new entry, such as a new Meta Data item. To help identify the correct Resource ID, you can add a Find step before your update step. The result of your Find step will contain the Resource ID, which you can then use in the Update step.
Update Input Fields
NAME TYPE DESCRIPTION
Existing ID integer Unique identifier for the resource. _Required_
Parent Id integer Parent order ID.
Status string Order status.
Currency string Currency the order was created with, in ISO format.
Customer Id integer User ID who owns the order. 0 for guests.
Customer Note string Note left by customer during checkout.
Billing object Billing address. _Only the child fields are visible in the Zapier UI._
Billing —> First Name string First name.
Billing —> Last Name string Last name.
Billing —> Company string Company name.
Billing —> Address 1 string Address line 1
Billing —> Address 2 string Address line 2
Billing —> City string City name.
Billing —> State string ISO code or name of the state, province or district.
Billing —> Postcode string Postal code.
Billing —> Country string Country code in ISO 3166-1 alpha-2 format.
Billing —> Email string Email address.
Billing —> Phone string Phone number.
Shipping object Shipping address. _Only the child fields are visible in the Zapier UI._
Shipping —> First Name string First name.
Shipping —> Last Name string Last name.
Shipping —> Company string Company name.
Shipping —> Address 1 string Address line 1
Shipping —> Address 2 string Address line 2
Shipping —> City string City name.
Shipping —> State string ISO code or name of the state, province or district.
Shipping —> Postcode string Postal code.
Shipping —> Country string Country code in ISO 3166-1 alpha-2 format.
Payment Method string Payment method ID.
Payment Method Title string Payment method title.
Transaction Id string Unique transaction ID.
Meta Data array Meta data. _Only the child fields are visible in the Zapier UI._
Meta Data —> Existing ID integer Meta ID. _Leave empty to create a new meta data record. Otherwise, enter an existing ID._
Meta Data —> Key string Meta key.
Meta Data —> Value any Meta value.
Line Items array Line items data. _Only the child fields are visible in the Zapier UI._
Line Items —> Existing ID integer Item ID. _Leave empty to create a new line items record. Otherwise, enter an existing ID._
Line Items —> Name any Product name.
Line Items —> Parent Name string Parent product name if the product is a variation.
Line Items —> Product Id any Product ID.
Line Items —> Variation Id integer Variation ID, if applicable.
Line Items —> Quantity integer Quantity ordered.
Line Items —> Tax Class string Tax class of product.
Line Items —> Subtotal string Line subtotal (before discounts).
Line Items —> Total string Line total (after discounts).
Line Items —> Meta Data array Meta data.
Shipping Lines array Shipping lines data. _Only the child fields are visible in the Zapier UI._
Shipping Lines —> Existing ID integer Item ID. _Leave empty to create a new shipping lines record. Otherwise, enter an existing ID._
Shipping Lines —> Method Title any Shipping method name.
Shipping Lines —> Method Id any Shipping method ID.
Shipping Lines —> Instance Id string Shipping instance ID.
Shipping Lines —> Total string Line total (after discounts).
Shipping Lines —> Meta Data array Meta data.
Fee Lines array Fee lines data. _Only the child fields are visible in the Zapier UI._
Fee Lines —> Existing ID integer Item ID. _Leave empty to create a new fee lines record. Otherwise, enter an existing ID._
Fee Lines —> Name any Fee name.
Fee Lines —> Tax Class string Tax class of fee.
Fee Lines —> Tax Status string Tax status of fee.
Fee Lines —> Total string Line total (after discounts).
Fee Lines —> Meta Data array Meta data.
Coupon Lines array Coupons line data. _Only the child fields are visible in the Zapier UI._
Coupon Lines —> Existing ID integer Item ID. _Leave empty to create a new coupon lines record. Otherwise, enter an existing ID._
Coupon Lines —> Code any Coupon code.
Coupon Lines —> Meta Data array Meta data.
Set Paid boolean Define if the order is paid. It will set the status to processing and reduce stock items.

Find Order

Searches for an existing Order in WooCommerce. Optionally create one if none are found. We recommend using the following search fields:
  • Search: Searches the Billing Address, Shipping Address, Billing Last Name or Billing Email fields for the specified string/term/phrase.
  • Order ID: Searches for the specified (numeric) order ID.
Tip: Search Sort Order: Searches return the first result found, and make it available in your Zap’s subsequent action step. Each search has a default sort order, so when defining your Search step, you can use the Order and Orderby fields to choose (for example) whether the most recent result or the oldest result is returned from your search.
Search Input Fields
NAME TYPE DESCRIPTION
Order Id string Limit search by ID.
Search string Limit results to those matching a string.
Modified After string Limit response to resources modified after a given ISO8601 compliant date.
Modified Before string Limit response to resources modified before a given ISO8601 compliant date.
Order string Order sort attribute ascending or descending.
Orderby string Sort collection by object attribute.
Parent array Limit result set to those of particular parent IDs.
Status array Limit result set to orders which have specific statuses.
Customer integer Limit result set to orders assigned a specific customer.
Product integer Limit result set to orders assigned a specific product.
Order Item Display Meta boolean Only show meta which is meant to be displayed for an order.
Include Meta array Limit meta_data to specific keys.
Exclude Meta array Ensure meta_data excludes specific keys.

Order Data

↑ Back to top

Order Data Structure

↑ Back to top
NAME TYPE DESCRIPTION
Id integer Unique identifier for the resource.
Parent Id integer Parent order ID.
Number string Order number.
Order Key string Order key.
Created via string Shows where the order was created.
Version string Version of WooCommerce which last updated the order.
Status string Order status.
Currency string Currency the order was created with, in ISO format.
Date Created date-time The date the order was created, in the site’s timezone.
Date Modified date-time The date the order was last modified, in the site’s timezone.
Discount Total string Total discount amount for the order.
Discount Tax string Total discount tax amount for the order.
Shipping Total string Total shipping amount for the order.
Shipping Tax string Total shipping tax amount for the order.
Cart Tax string Sum of line item taxes only.
Total string Grand total.
Total Tax string Sum of all taxes.
Prices Include Tax boolean True the prices included tax during checkout.
Customer Id integer User ID who owns the order. 0 for guests.
Customer Ip Address string Customer’s IP address.
Customer User Agent string User agent of the customer.
Customer Note string Note left by customer during checkout.
Billing object Billing address.
Billing —> First Name string First name.
Billing —> Last Name string Last name.
Billing —> Company string Company name.
Billing —> Address 1 string Address line 1
Billing —> Address 2 string Address line 2
Billing —> City string City name.
Billing —> State string ISO code or name of the state, province or district.
Billing —> Postcode string Postal code.
Billing —> Country string Country code in ISO 3166-1 alpha-2 format.
Billing —> Email string Email address.
Billing —> Phone string Phone number.
Shipping object Shipping address.
Shipping —> First Name string First name.
Shipping —> Last Name string Last name.
Shipping —> Company string Company name.
Shipping —> Address 1 string Address line 1
Shipping —> Address 2 string Address line 2
Shipping —> City string City name.
Shipping —> State string ISO code or name of the state, province or district.
Shipping —> Postcode string Postal code.
Shipping —> Country string Country code in ISO 3166-1 alpha-2 format.
Payment Method string Payment method ID.
Payment Method Title string Payment method title.
Transaction Id string Unique transaction ID.
Date Paid date-time The date the order was paid, in the site’s timezone.
Date Completed date-time The date the order was completed, in the site’s timezone.
Cart Hash string MD5 hash of cart items to ensure orders are not modified.
Meta Data array Meta data.
Meta Data —> Id integer Meta ID.
Meta Data —> Key string Meta key.
Meta Data —> Value any Meta value.
Line Items array Line items data.
Line Items —> Id integer Item ID.
Line Items —> Name any Product name.
Line Items —> Parent Name string Parent product name if the product is a variation.
Line Items —> Product Id any Product ID.
Line Items —> Variation Id integer Variation ID, if applicable.
Line Items —> Quantity integer Quantity ordered.
Line Items —> Tax Class string Tax class of product.
Line Items —> Subtotal string Line subtotal (before discounts).
Line Items —> Subtotal Tax string Line subtotal tax (before discounts).
Line Items —> Total string Line total (after discounts).
Line Items —> Total Tax string Line total tax (after discounts).
Line Items —> Taxes array Line taxes.
Line Items —> Meta Data array Meta data.
Line Items —> Sku string Product SKU.
Line Items —> Price number Product price.
Line Items —> Image object Properties of the main product image.
Tax Lines array Tax lines data.
Tax Lines —> Id integer Item ID.
Tax Lines —> Rate Code string Tax rate code.
Tax Lines —> Rate Id string Tax rate ID.
Tax Lines —> Label string Tax rate label.
Tax Lines —> Compound boolean Show if is a compound tax rate.
Tax Lines —> Tax Total string Tax total (not including shipping taxes).
Tax Lines —> Shipping Tax Total string Shipping tax total.
Tax Lines —> Meta Data array Meta data.
Shipping Lines array Shipping lines data.
Shipping Lines —> Id integer Item ID.
Shipping Lines —> Method Title any Shipping method name.
Shipping Lines —> Method Id any Shipping method ID.
Shipping Lines —> Instance Id string Shipping instance ID.
Shipping Lines —> Total string Line total (after discounts).
Shipping Lines —> Total Tax string Line total tax (after discounts).
Shipping Lines —> Taxes array Line taxes.
Shipping Lines —> Meta Data array Meta data.
Fee Lines array Fee lines data.
Fee Lines —> Id integer Item ID.
Fee Lines —> Name any Fee name.
Fee Lines —> Tax Class string Tax class of fee.
Fee Lines —> Tax Status string Tax status of fee.
Fee Lines —> Total string Line total (after discounts).
Fee Lines —> Total Tax string Line total tax (after discounts).
Fee Lines —> Taxes array Line taxes.
Fee Lines —> Meta Data array Meta data.
Coupon Lines array Coupons line data.
Coupon Lines —> Id integer Item ID.
Coupon Lines —> Code any Coupon code.
Coupon Lines —> Discount string Discount total.
Coupon Lines —> Discount Tax string Discount total tax.
Coupon Lines —> Meta Data array Meta data.
Refunds array List of refunds.
Refunds —> Id integer Refund ID.
Refunds —> Reason string Refund reason.
Refunds —> Total string Refund total.
Payment Url string Order payment URL.
Is Editable boolean Whether an order can be edited.
Needs Payment boolean Whether an order needs payment, based on status and order total.
Needs Processing boolean Whether an order needs processing before it can be completed.
> WooCommerce 8.5 Order Attribution Tracking Data:
>
ommerce 8.5 introduced an [Order Attribution Tracking](https://woocommerce.com/document/order-attribution-tracking/) feature to help store owners understand where their orders are coming from.

ou have enabled Order Attribution Tracking in your store, the data is stored in Order Meta Data, which makes it accessible in your **Order** Zaps via the following fields:

ta Data Wc Order Attribution Device Type 
ta Data Wc Order Attribution Referrer
ta Data Wc Order Attribution Session Count
ta Data Wc Order Attribution Session Entry
ta Data Wc Order Attribution Session Pages
ta Data Wc Order Attribution Session Start Time
ta Data Wc Order Attribution Source Type
ta Data Wc Order Attribution User Agent
ta Data Wc Order Attribution Utm Source

 data will be available in your Zaps for all orders created after you have enabled Order Attribution Tracking in your store.

Line Item in an Order Data Structure

↑ Back to top
NAME TYPE DESCRIPTION
Id string Combined Order ID and Product ID.
Order Id integer Unique identifier for the resource.
Order Parent Id integer Parent order ID.
Order Number string Order number.
Order Order Key string Order key.
Order Created via string Shows where the order was created.
Order Version string Version of WooCommerce which last updated the order.
Order Status string Order status.
Order Currency string Currency the order was created with, in ISO format.
Order Date Created date-time The date the order was created, in the site’s timezone.
Order Date Modified date-time The date the order was last modified, in the site’s timezone.
Order Discount Total string Total discount amount for the order.
Order Discount Tax string Total discount tax amount for the order.
Order Shipping Total string Total shipping amount for the order.
Order Shipping Tax string Total shipping tax amount for the order.
Order Cart Tax string Sum of line item taxes only.
Order Total string Grand total.
Order Total Tax string Sum of all taxes.
Order Prices Include Tax boolean True the prices included tax during checkout.
Order Customer Id integer User ID who owns the order. 0 for guests.
Order Customer Ip Address string Customer’s IP address.
Order Customer User Agent string User agent of the customer.
Order Customer Note string Note left by customer during checkout.
Order Billing object Billing address.
Order Billing —> First Name string First name.
Order Billing —> Last Name string Last name.
Order Billing —> Company string Company name.
Order Billing —> Address 1 string Address line 1
Order Billing —> Address 2 string Address line 2
Order Billing —> City string City name.
Order Billing —> State string ISO code or name of the state, province or district.
Order Billing —> Postcode string Postal code.
Order Billing —> Country string Country code in ISO 3166-1 alpha-2 format.
Order Billing —> Email string Email address.
Order Billing —> Phone string Phone number.
Order Shipping object Shipping address.
Order Shipping —> First Name string First name.
Order Shipping —> Last Name string Last name.
Order Shipping —> Company string Company name.
Order Shipping —> Address 1 string Address line 1
Order Shipping —> Address 2 string Address line 2
Order Shipping —> City string City name.
Order Shipping —> State string ISO code or name of the state, province or district.
Order Shipping —> Postcode string Postal code.
Order Shipping —> Country string Country code in ISO 3166-1 alpha-2 format.
Order Payment Method string Payment method ID.
Order Payment Method Title string Payment method title.
Order Transaction Id string Unique transaction ID.
Order Date Paid date-time The date the order was paid, in the site’s timezone.
Order Date Completed date-time The date the order was completed, in the site’s timezone.
Order Cart Hash string MD5 hash of cart items to ensure orders are not modified.
Order Meta Data array Meta data.
Order Meta Data —> Id integer Meta ID.
Order Meta Data —> Key string Meta key.
Order Meta Data —> Value any Meta value.
Line Id integer Item ID.
Line Name any Product name.
Line Parent Name string Parent product name if the product is a variation.
Line Product Id any Product ID.
Line Variation Id integer Variation ID, if applicable.
Line Quantity integer Quantity ordered.
Line Tax Class string Tax class of product.
Line Subtotal string Line subtotal (before discounts).
Line Subtotal Tax string Line subtotal tax (before discounts).
Line Total string Line total (after discounts).
Line Total Tax string Line total tax (after discounts).
Line Taxes array Line taxes.
Line Meta Data array Meta data.
Line Sku string Product SKU.
Line Price number Product price.
Line Image object Properties of the main product image.
Order Tax Lines array Tax lines data.
Order Tax Lines —> Id integer Item ID.
Order Tax Lines —> Rate Code string Tax rate code.
Order Tax Lines —> Rate Id string Tax rate ID.
Order Tax Lines —> Label string Tax rate label.
Order Tax Lines —> Compound boolean Show if is a compound tax rate.
Order Tax Lines —> Tax Total string Tax total (not including shipping taxes).
Order Tax Lines —> Shipping Tax Total string Shipping tax total.
Order Tax Lines —> Meta Data array Meta data.
Order Shipping Lines array Shipping lines data.
Order Shipping Lines —> Id integer Item ID.
Order Shipping Lines —> Method Title any Shipping method name.
Order Shipping Lines —> Method Id any Shipping method ID.
Order Shipping Lines —> Instance Id string Shipping instance ID.
Order Shipping Lines —> Total string Line total (after discounts).
Order Shipping Lines —> Total Tax string Line total tax (after discounts).
Order Shipping Lines —> Taxes array Line taxes.
Order Shipping Lines —> Meta Data array Meta data.
Order Fee Lines array Fee lines data.
Order Fee Lines —> Id integer Item ID.
Order Fee Lines —> Name any Fee name.
Order Fee Lines —> Tax Class string Tax class of fee.
Order Fee Lines —> Tax Status string Tax status of fee.
Order Fee Lines —> Total string Line total (after discounts).
Order Fee Lines —> Total Tax string Line total tax (after discounts).
Order Fee Lines —> Taxes array Line taxes.
Order Fee Lines —> Meta Data array Meta data.
Order Coupon Lines array Coupons line data.
Order Coupon Lines —> Id integer Item ID.
Order Coupon Lines —> Code any Coupon code.
Order Coupon Lines —> Discount string Discount total.
Order Coupon Lines —> Discount Tax string Discount total tax.
Order Coupon Lines —> Meta Data array Meta data.
Order Refunds array List of refunds.
Order Refunds —> Id integer Refund ID.
Order Refunds —> Reason string Refund reason.
Order Refunds —> Total string Refund total.
Order Payment Url string Order payment URL.
Order Is Editable boolean Whether an order can be edited.
Order Needs Payment boolean Whether an order needs payment, based on status and order total.
Order Needs Processing boolean Whether an order needs processing before it can be completed.
> WooCommerce 8.5 Order Attribution Tracking Data:
>
ommerce 8.5 introduced an [Order Attribution Tracking](https://woocommerce.com/document/order-attribution-tracking/) feature to help store owners understand where their orders are coming from.

ou have enabled Order Attribution Tracking in your store, the data is stored in Order Meta Data, which makes it accessible in your **Line Item in an Order** Zaps via the following fields:

der Meta Data Wc Order Attribution Device Type 
der Meta Data Wc Order Attribution Referrer
der Meta Data Wc Order Attribution Session Count
der Meta Data Wc Order Attribution Session Entry
der Meta Data Wc Order Attribution Session Pages
der Meta Data Wc Order Attribution Session Start Time
der Meta Data Wc Order Attribution Source Type
der Meta Data Wc Order Attribution User Agent
der Meta Data Wc Order Attribution Utm Source

 data will be available in your Zaps for all orders created after you have enabled Order Attribution Tracking in your store.
Data Fields May Differ in Your WooCommerce Store: WooCommerce Zapier utilises WooCommerce’s REST API. Data field names, descriptions, and values can vary from one WooCommerce store to another. Your store’s data, fields, and trigger rules may differ from this documentation due to any of the following:
  • WordPress versions and the locale/language used.
  • Your WooCommerce versions and the features enabled.
  • Your active WordPress plugins and WooCommerce extensions.
  • Any custom code that overrides or changes how the WooCommerce/WordPress REST API operates.
Note: The field definitions are generated using the following settings:
  • WordPress v6.4 with the en_US locale.
  • WooCommerce v8.5 with tax and coupon functionality enabled.
  • The WooCommerce Bookings, WooCommerce Memberships, and Woo Subscriptions plugins were active.

Order Note

↑ Back to top

Order Note

Order Notes are the notes attached to individual orders. They are used to keep track of internal notes, such as order status changes, fulfilment notes, or customer notes such as notes about a customer’s preferences, or order history. When viewing an existing order in WooCommerce, you can see the order notes in the Order notes section on the right of the screen.
WooCommerce Zapier Plugin Version 2.8 Required: Please ensure you update the WooCommerce Zapier plugin to version 2.8.0 to manage Order Notes.

Trigger Rules

↑ Back to top
A Trigger Rule defines an event (or multiple events) that will cause WooCommerce data to be sent to a Zapier Zap. The following trigger rules are available to trigger your Zaps when order note data in your WooCommerce store is added or deleted.

Order Note created

Triggers when an order note is added to an order.
Note: The Order Note created trigger rule will trigger for all order notes that are added (both customer notes and private notes).

Order Note deleted

Triggers when an order note is deleted.
Only the ID field is available: Due to limitations in how WooCommerce handles deleted events, only the ID of the deleted resource is sent to Zapier when using this trigger rule. No other data fields are available.

Actions and Searches

↑ Back to top
Heads Up: WooCommerce does not allow updating an order note.
An action is an event a Zap performs after it is triggered. Actions allow you to create new WooCommerce data from a Zap. Searches let you find existing WooCommerce data in a Zap, and then use it later in a subsequent step.

Create Order Note

Creates a new order note in WooCommerce, attached to an existing Order.
Tip: When creating an order note, if the Customer Note field is set to True, then the note will be emailed to the customer. If Customer Note is set to False, then the note will be private and only visible to store administrators.
Create Input Fields
NAME TYPE DESCRIPTION
Order Id integer The Order ID to add the note to. _Required_
Note string Order note content. _Required_
Customer Note boolean If true, the note will be shown to customers and they will be notified. If false, the note will be for admin reference only.
Added by User boolean If true, this note will be attributed to the current user. If false, the note will be attributed to the system.

Find Order Note

Searches for an existing order note in WooCommerce. Optionally create one if none are found.
Tip: Search Sort Order: Searches return the first result found, and make it available in your Zap’s subsequent action step. Each search has a default sort order, so when defining your Search step, you can use the Order and Orderby fields to choose (for example) whether the most recent result or the oldest result is returned from your search.
Search Input Fields
NAME TYPE DESCRIPTION
Order Note Id string Limit search by ID.
Order Id integer Limit results to those matching this Order ID.
Type string Limit result to customers or internal notes.
Search string Limit results to those matching a string.
Order string Order sort attribute ascending or descending.
Orderby string Sort collection by object attribute.

Order Note Data

↑ Back to top
NAME TYPE DESCRIPTION
Id integer Unique identifier for the resource.
Order Id integer Order ID
Author string Order note author.
Date Created date-time The date the order note was created, in the site’s timezone.
Note string Order note content.
Customer Note boolean If true, the note will be shown to customers and they will be notified. If false, the note will be for admin reference only.
Data Fields May Differ in Your WooCommerce Store: WooCommerce Zapier utilises WooCommerce’s REST API. Data field names, descriptions, and values can vary from one WooCommerce store to another. Your store’s data, fields, and trigger rules may differ from this documentation due to any of the following:
  • WordPress versions and the locale/language used.
  • Your WooCommerce versions and the features enabled.
  • Your active WordPress plugins and WooCommerce extensions.
  • Any custom code that overrides or changes how the WooCommerce/WordPress REST API operates.
Note: The field definitions are generated using the following settings:
  • WordPress v6.4 with the en_US locale.
  • WooCommerce v8.5 with tax and coupon functionality enabled.
  • The WooCommerce Bookings, WooCommerce Memberships, and Woo Subscriptions plugins were active.

Product

↑ Back to top
You can send Products data to Zapier, or you can create or update products from an external source.

Product Types

WooCommerce comes with multiple types of products out of the box. Please consult the following tables for details.
Info: Extensions can extend available data and introduce other product types. Please see the Plugin Compatibility chapter for details.
Integration Functionality by Product Type:
Product type Triggers Actions and Searches Order Context13
Simple product Yes Yes Yes
Grouped product Yes Yes N/A
External/Affiliate product Yes Yes N/A
Variable product Yes Yes Yes
Bookable product1 Yes Yes Yes
Simple subscription3 Yes Yes Yes
Variable subscription3 Yes Yes Yes
Data Availability by Product Type
Product type Inventory Shipping Attributes Variations
Simple product Yes Yes Yes N/A
Grouped product N/A N/A Yes N/A
External/Affiliate product N/A N/A Yes N/A
Variable product Yes Yes Yes Yes
Bookable product1 N/A Yes Yes N/A
Simple subscription3 Yes Yes Yes N/A
Variable subscription3 Yes Yes Yes Yes
Legends: Yes: Supported. N/A: Functionality or data is not provided by WooCommerce.
Product Data in Order Context
While every order contains one or more products as a line item, not all product data is included by default. Please compare the Order Data Structure or Line Item in an Order Data Structure with the Product Data Structure above for availability. If you need additional product data fields while working with an Order, consider adding a Find Product step to your Zap.
Variable Products
In WooCommerce, a product with variable attributes is constructed as multiple interconnected products. The parent product that connects everything and holds shared information, which you can edit in the WooCommerce dashboard, has a variable product type. For each variation, a separate product is created and stored as a product variation. This latter product holds selected attributes for the variable product. For example, an individual product variation has a price, SKU or stock level information for a particular attribute. In the Zapier interface, you can see IDs of linked variations in the variations field for a variable product. On the other hand, the variable product ID is visible in the parent_id field for a product variation.
Heads Up: You can’t edit a variation name directly in the WooCommerce dashboard. Instead, the name is automatically constructed with the used product attributes and the selected values.
Sending or Receiving a Variable Product
Triggers are supported for variable products as well as their product variations. They do not behave differently from any other supported product type.
Important: – When using the Product created or Product updated trigger rules with a variable product, every individual variation will be sent as a separate task alongside the parent product task.
Actions are also supported for individual variations. I.e., you can create, update and search for a variable product, as well as its individual product variations.
WooCommerce Zapier Plugin Version 2.6 Required: Please ensure you update the WooCommerce Zapier plugin to version 2.6.0 to use this functionality.
Variable Products as Order Line Item
In Order Triggers, when a line item represents a variable product, WooCommerce combines field data from the parent and the selected variation. While the line_items —> product_id (and some other field sources) are the variable product, most of the information is selected from the used product variation. For example, the actual used product ID is visible in the line_items —> variation_id. For Order Actions or Searches, you can add a variable product to an order as long you know the ID or SKU of a variation and the product already exists in your WooCommerce store.
Notable Order Field Sources:
Field Source
line_items —> product_id Variable product
line_items —> variation_id Product variation
line_items —> name Product variation
line_items —> price Product variation
line_items —> sku Product variation
line_items —> tax_class Variable product
Tip: If you want to use Zapier to create an order in WooCommerce for a variable product, consider using the individual variation’s SKU rather than variation ID.

Trigger Rules

↑ Back to top
A Trigger Rule defines an event (or multiple events) that will cause WooCommerce data to be sent to a Zapier Zap. The following trigger rules are available to trigger your Zaps when product data in your WooCommerce store is added, changed or deleted.

Product created

Triggers when a product is created.
Triggers for every individual product variation in a variable product, and the parent product as well.

Product deleted

Triggers when a product is deleted (trashed).
Only the ID field is available: Due to limitations in how WooCommerce handles deleted events, only the ID of the deleted resource is sent to Zapier when using this trigger rule. No other data fields are available.

Product restored

Triggers when an already trashed product is restored from the trash.

Product stock low

Triggers when an existing product or product variation’s stock quantity reaches the low stock threshold.
Tip: Configuring the low stock threshold: The default low stock threshold for your store can be configured in WooCommerce —> Settings —> Products —> Inventory then entering a value in the Low stock threshold field. The low stock threshold can also be configured on a per-product basis by editing the product in WooCommerce, and then:
  • For regular products, go to the Product Data —> Inventory —> Low stock threshold field and enter a value in the Low stock threshold field and save the product.
  • For individual variations, go to the Product Data —> Variations tab and for each variation enter a value in the Low stock threshold field and save each variation.
Stock management must be enabled for each product: The default stock management feature for your store can be configured in WooCommerceSettingsProductsInventory —> Manage stock checkbox. (Enabled by default). Stock management feature must be enabled for a product as well for this trigger rule to work:
  • For regular products, go to Product Data —> Inventory —> Stock management —> then ticking the Track stock quantity for this product and saving the product.
  • For individual variations, edit the product in WooCommerce, then go to Product Data —> Variations, then edit each variation and tick the Manage stock? checkbox and save each variation.
WooCommerce Zapier Plugin Version 2.6 Required: Please ensure you update the WooCommerce Zapier plugin to version 2.6.0 to use this functionality.

Product stock status changed

Product stock statuses in WooCommerce are an important aspect of product management in WooCommerce. The standard product stock statuses in WooCommerce are:
  • In stock
  • On backorder
  • Out of stock
If your product has stock management enabled, then the stock status of your product will change automatically based on the stock quantity of your product. Below is a full list of Product stock status changed trigger rules:
  • Product stock status changed (any status)
  • Product stock status changed to in stock
  • Product stock status changed to on backorder
  • Product stock status changed to out of stock
The Product stock status changed (any status) trigger rule will trigger every time an existing product changes status to any status. If you are interested in specific product stock status change(s) only, you may wish to use a more specific Product stock changed to … trigger rule.
Stock management must be enabled for each product: The default stock management feature for your store can be configured in WooCommerceSettingsProductsInventory —> Manage stock checkbox. (Enabled by default). Stock management feature must be enabled for a product as well for this trigger rule to work:
  • For regular products, go to Product Data —> Inventory —> Stock management —> then ticking the Track stock quantity for this product and saving the product.
  • For individual variations, edit the product in WooCommerce, then go to Product Data —> Variations, then edit each variation and tick the Manage stock? checkbox and save each variation.
WooCommerce Zapier Plugin Version 2.6 Required: Please ensure you update the WooCommerce Zapier plugin to version 2.6.0 to use this functionality.

Product updated

Triggers when a product is updated/edited/changed/modified.
Triggers for every individual product variation in a variable product, and the parent product as well.

Actions and Searches

↑ Back to top
An action is an event a Zap performs after it is triggered. Actions allow you to create new or update existing WooCommerce data from a Zap. Searches let you find existing WooCommerce data in a Zap, and then use it later in a subsequent step. The following actions are available for use in your Zaps to create, update or find products.
Line-Item Enabled Data Fields: Downloads, Categories, Images, Attributes, Meta Data: To specify multiple values for these field(s), the values must be sent in a line-item aware format. Please see here for details on how the Line Itemizer can be used to achieve this.

Create Product

Creates a new product or product variation in WooCommerce.
Creating a Variable Product
To create a variable product, set Type to variable or variable-subscription3, and specify one or more product Attributes with Variation set to true. For example, to create a variable product with a custom Size attribute, you would specify something like the following:
  • Type: variable
  • Attributes —> Name: Size
  • Attributes —> Variation: true
  • Attributes —> Options: Small, Medium, Large
If you already have a store-wide global attribute named Size, you can use that instead of creating a new custom attribute:
  • Type: variable
  • Attributes —> Name: pa_size (or whatever the slug of the global attribute is)
  • Attributes —> Variation: true
  • Attributes —> Options: Small, Medium, Large
Once the Create Product action has been run, you can then create product variation(s) using a subsequent Create Product action(s).
WooCommerce Zapier Plugin Version 2.6 Required: Please ensure you update the WooCommerce Zapier plugin to version 2.6.0 to use this functionality.
Creating a Variation
To create a product variation, you must already have its parent Variable Product or Variable Subscription Product3 created. In the Create Product step, set Type to variation or subscription_variation3, and then in the Parent Id field, enter the ID of the parent variable product that the variation should belong to:
  • Type: variation
  • Parent Id —> 123 (where 123 is the ID of the parent variable product)
  • Attributes —> Name: Size
  • Attributes —> Option: Small
The above example will create a new variation with a Size of Small.
WooCommerce Zapier Plugin Version 2.6 Required: Please ensure you update the WooCommerce Zapier plugin to version 2.6.0 to use this functionality.
Create Input Fields
NAME TYPE DESCRIPTION
Name string Product name.
Slug string Product slug.
Date Created date-time The date the product was created, in the site’s timezone.
Type string Product type.
Status string Product status (post status).
Featured boolean Featured product.
Catalog Visibility string Catalog visibility.
Description string Product description.
Short Description string Product short description.
Sku string Unique identifier.
Regular Price string Product regular price.
Sale Price string Product sale price.
Date on Sale from date-time Start date of sale price, in the site’s timezone.
Date on Sale to date-time End date of sale price, in the site’s timezone.
Virtual boolean If the product is virtual.
Downloadable boolean If the product is downloadable.
Downloads array List of downloadable files. _Only the child fields are visible in the Zapier UI._
Downloads —> Id string File ID.
Downloads —> Name string File name.
Downloads —> File string File URL.
Download Limit integer Number of times downloadable files can be downloaded after purchase.
Download Expiry integer Number of days until access to downloadable files expires.
External Url string Product external URL. Only for external products.
Button Text string Product external button text. Only for external products.
Tax Status string Tax status.
Tax Class string Tax class.
Manage Stock boolean Stock management at product level.
Stock Quantity integer Stock quantity.
Stock Status string Controls the stock status of the product.
Backorders string If managing stock, this controls if backorders are allowed.
Low Stock Amount integer Low Stock amount for the product.
Sold Individually boolean Allow one item to be bought in a single order.
Weight string Product weight (kg).
Dimensions object Product dimensions. _Only the child fields are visible in the Zapier UI._
Dimensions —> Length string Product length (cm).
Dimensions —> Width string Product width (cm).
Dimensions —> Height string Product height (cm).
Shipping Class string Shipping class slug.
Reviews Allowed boolean Allow reviews.
Post Password string Post password.
Upsell Ids array List of up-sell products IDs.
Cross Sell Ids array List of cross-sell products IDs.
Parent Id integer Product parent ID.
Purchase Note string Optional note to send the customer after purchase.
Categories array List of categories. _Only the child fields are visible in the Zapier UI._
Categories —> Id integer Category ID.
Tags array List of tags. _Only the child fields are visible in the Zapier UI._
Tags —> Id integer Tag ID.
Images array List of images. _Only the child fields are visible in the Zapier UI._
Images —> Id integer Image ID.
Images —> Src string Image URL.
Images —> Name string Image name.
Images —> Alt string Image alternative text.
Attributes array List of attributes. _Only the child fields are visible in the Zapier UI._
Attributes —> Id integer Attribute ID.
Attributes —> Name string Attribute name.
Attributes —> Position integer Attribute position.
Attributes —> Visible boolean Define if the attribute is visible on the “Additional information” tab in the product’s page.
Attributes —> Variation boolean Define if the attribute can be used as variation.
Attributes —> Options array List of available term names of the attribute.
Default Attributes array Defaults variation attributes. _Only the child fields are visible in the Zapier UI._
Default Attributes —> Id integer Attribute ID.
Default Attributes —> Name string Attribute name.
Default Attributes —> Option string Selected attribute term name.
Menu Order integer Menu order, used to custom sort products.
Meta Data array Meta data. _Only the child fields are visible in the Zapier UI._
Meta Data —> Key string Meta key.
Meta Data —> Value any Meta value.

Update Product

Updates (modifies) an existing product or production variation in WooCommerce. This action lets you change almost any aspect of an existing product. See the Update Product Data Fields section for a full list of fields that can be updated. If you would like to update the product’s pricing or stock quantity, we recommend using the dedicated Update Product Price or Update Product Stock Quantity actions instead. These separate actions also support relative price and stock quantity adjustments.
Note: Resource ID is Required for Update Steps: An update action always requires a valid top-level ID to be specified. This ensures that your Zap knows which record to update. On the other hand, any non-top-level ID is optional. If you leave it empty, WooCommerce will create a new entry, such as a new Meta Data item. To help identify the correct Resource ID, you can add a Find step before your update step. The result of your Find step will contain the Resource ID, which you can then use in the Update step.
Updating a Product Variation
To update a product variation, set the ID field to the individual variation’s ID.
Updating Variation Attributes: You must specify all or none of the Attributes fields for a variation. If any attribute is present, any other attributes that are not specified will be removed from the variation. WooCommerce Zapier Plugin Version 2.6 Required: Please ensure you update the WooCommerce Zapier plugin to version 2.6.0 to use this functionality.
Update Input Fields
NAME TYPE DESCRIPTION
Existing ID integer Unique identifier for the resource. _Required_
Name string Product name.
Slug string Product slug.
Date Created date-time The date the product was created, in the site’s timezone.
Type string Product type.
Status string Product status (post status).
Featured boolean Featured product.
Catalog Visibility string Catalog visibility.
Description string Product description.
Short Description string Product short description.
Sku string Unique identifier.
Regular Price string Product regular price.
Sale Price string Product sale price.
Date on Sale from date-time Start date of sale price, in the site’s timezone.
Date on Sale to date-time End date of sale price, in the site’s timezone.
Virtual boolean If the product is virtual.
Downloadable boolean If the product is downloadable.
Downloads array List of downloadable files. _Only the child fields are visible in the Zapier UI._
Downloads —> Existing ID string File ID. _Leave empty to create a new downloads record. Otherwise, enter an existing ID._
Downloads —> Name string File name.
Downloads —> File string File URL.
Download Limit integer Number of times downloadable files can be downloaded after purchase.
Download Expiry integer Number of days until access to downloadable files expires.
External Url string Product external URL. Only for external products.
Button Text string Product external button text. Only for external products.
Tax Status string Tax status.
Tax Class string Tax class.
Manage Stock boolean Stock management at product level.
Stock Quantity integer Stock quantity.
Stock Status string Controls the stock status of the product.
Backorders string If managing stock, this controls if backorders are allowed.
Low Stock Amount integer Low Stock amount for the product.
Sold Individually boolean Allow one item to be bought in a single order.
Weight string Product weight (kg).
Dimensions object Product dimensions. _Only the child fields are visible in the Zapier UI._
Dimensions —> Length string Product length (cm).
Dimensions —> Width string Product width (cm).
Dimensions —> Height string Product height (cm).
Shipping Class string Shipping class slug.
Reviews Allowed boolean Allow reviews.
Post Password string Post password.
Upsell Ids array List of up-sell products IDs.
Cross Sell Ids array List of cross-sell products IDs.
Parent Id integer Product parent ID.
Purchase Note string Optional note to send the customer after purchase.
Categories array List of categories. _Only the child fields are visible in the Zapier UI._
Categories —> Existing ID integer Category ID. _Leave empty to create a new categories record. Otherwise, enter an existing ID._
Tags array List of tags. _Only the child fields are visible in the Zapier UI._
Tags —> Existing ID integer Tag ID. _Leave empty to create a new tags record. Otherwise, enter an existing ID._
Images array List of images. _Only the child fields are visible in the Zapier UI._
Images —> Existing ID integer Image ID. _Leave empty to create a new images record. Otherwise, enter an existing ID._
Images —> Src string Image URL.
Images —> Name string Image name.
Images —> Alt string Image alternative text.
Attributes array List of attributes. _Only the child fields are visible in the Zapier UI._
Attributes —> Existing ID integer Attribute ID. _Leave empty to create a new attributes record. Otherwise, enter an existing ID._
Attributes —> Name string Attribute name.
Attributes —> Position integer Attribute position.
Attributes —> Visible boolean Define if the attribute is visible on the “Additional information” tab in the product’s page.
Attributes —> Variation boolean Define if the attribute can be used as variation.
Attributes —> Options array List of available term names of the attribute.
Default Attributes array Defaults variation attributes. _Only the child fields are visible in the Zapier UI._
Default Attributes —> Existing ID integer Attribute ID. _Leave empty to create a new default attributes record. Otherwise, enter an existing ID._
Default Attributes —> Name string Attribute name.
Default Attributes —> Option string Selected attribute term name.
Menu Order integer Menu order, used to custom sort products.
Meta Data array Meta data. _Only the child fields are visible in the Zapier UI._
Meta Data —> Existing ID integer Meta ID. _Leave empty to create a new meta data record. Otherwise, enter an existing ID._
Meta Data —> Key string Meta key.
Meta Data —> Value any Meta value.

Update Product Price

WooCommerce Zapier Plugin Version 2.6 Required: Please ensure you update the WooCommerce Zapier plugin to version 2.6.0 to use this functionality.
Modifies an existing product or product variation’s regular price or sale price in WooCommerce. This action targets a specific product or product variation by SKU or ID. It also supports the calculation of new (relative) prices by increasing or decreasing the prices by the specified amount or percentage. It also allows users to set a product’s sale price relative to the product’s regular price.
Note: You can use ID or SKU to identify a product to update in this action: A valid SKU or a valid ID can be used in your Zap to identify which existing product to update.
The following adjustment types are available for use in this action:
  • Set Regular Price To
  • Increase Regular Price By (fixed amount or percentage)
  • Decrease Regular Price By (fixed amount or percentage)
  • Set Sale Price To
  • Increase Sale Price By (fixed amount or percentage)
  • Decrease Sale Price By (fixed amount or percentage)
  • Set Sale Price to Regular Price Decreased By (fixed amount or percentage)
This action returns a subset of the product data fields. See the Update Product Price Data Fields section for more information.
Update Product Price Data Fields

Update Input Fields

↑ Back to top
NAME TYPE DESCRIPTION
Product or Variation Identifier string Select how to find the existing product or variation to update _Required_
Product Value string Input the SKU or ID of the product or variation to update _Required_
Adjustment Type string Choose how and what to modify the product’s price _Required_
Price Value string Enter a value to set, increase, or decrease the current price (fixed or %) _Required_

Data Structure

↑ Back to top
NAME TYPE DESCRIPTION
Id integer Unique identifier for the resource
Sku string Unique identifier
Price string Current product price
Regular Price string Product regular price
Sale Price string Product sale price
On Sale boolean Shows if the product is on sale

Update Product Stock Quantity

WooCommerce Zapier Plugin Version 2.5 Required: Please ensure you update the WooCommerce Zapier plugin to version 2.5.0 to use this Action.
Modifies an existing product or product variation’s stock quantity in WooCommerce.
Tip: Stock management must be enabled for each product: WooCommerce’s stock management feature must be enabled for each product you want to update using this action. This can be done by editing the product in WooCommerce, then going to Product Data —> Inventory —> Stock management —> then ticking the Track stock quantity for this product checkbox and saving. For individual variations, edit the product in WooCommerce, then go to Product Data —> Variations, then edit each variation and tick the Manage stock? checkbox and save.
This action targets a specific product or product variation by SKU or ID. It also supports the calculation of new (relative) stock quantity by increasing or reducing the current stock quantity by the specified amount.
Note: You can use ID or SKU to identify a product to update in this action: A valid SKU or a valid ID can be used in your Zap to identify which existing product to update.
The following adjustment types are available for use in this action:
  • Set Stock Quantity To
  • Increase Stock Quantity By
  • Reduce Stock Quantity By
This action returns a subset of the product data fields. See the Update Product Stock Quantity Data Fields section for more information. When this action runs, it will automatically set the relevant product’s Stock Status to In Stock or Out of Stock depending on the new stock quantity. If the product has backorders enabled, then the Stock Status will be set to On Backorder when the quantity goes to zero or negative
Update Product Stock Quantity Data Fields

Update Input Fields

↑ Back to top
NAME TYPE DESCRIPTION
Product or Variation Identifier string Select how to find the existing product or variation to update _Required_
Product Value string Input the SKU or ID of the product or variation to update _Required_
Adjustment Type string Choose how to modify the product’s stock quantity _Required_
Adjustment Value integer Enter a numeric value to set, increase, or reduce the current stock quantity _Required_

Data Structure

↑ Back to top
NAME TYPE DESCRIPTION
Id integer Unique identifier for the resource
Sku string Unique identifier
Stock Quantity integer Stock quantity
Stock Status string Controls the stock status of the product

Find Product

Searches for an existing product or product variation in WooCommerce. Optionally create one if none are found. All available search fields can be viewed here. We recommend using the following search fields:
  • SKU: Searches for the specified product SKU.
  • Product ID: Searches for the specified (numeric) product or variation ID.
  • Search: Searches the Product Name and Product Description fields for the specified string/term/phrase.
Finding Top-Level Products Only: By default, a Find Product step will search across all product types, including product variations. If you only want to find top-level products (i.e. not variations), then you can use the Parent Id search field and set it to 0 (zero). Tip: Finding Products from Orders: Please see here for some suggestions on how to find WooCommerce products from WooCommerce Order Line Items. Tip: Search Sort Order: Searches return the first result found, and make it available in your Zap’s subsequent action step. Each search has a default sort order, so when defining your Search step, you can use the Order and Orderby fields to choose (for example) whether the most recent result or the oldest result is returned from your search. WooCommerce Zapier Plugin Version 2.6 Required: Please ensure you update the WooCommerce Zapier plugin to version 2.6.0 to use this functionality.
Search Input Fields
NAME TYPE DESCRIPTION
Product Id string Limit search by ID.
Search string Limit results to those matching a string.
Modified After string Limit response to resources modified after a given ISO8601 compliant date.
Modified Before string Limit response to resources modified before a given ISO8601 compliant date.
Order string Order sort attribute ascending or descending.
Orderby string Sort collection by object attribute.
Parent array Limit result set to those of particular parent IDs.
Slug string Limit result set to products with a specific slug.
Status string Limit result set to products assigned a specific status.
Type string Limit result set to products assigned a specific type.
Sku string Limit result set to products with specific SKU(s). Use commas to separate.
Featured boolean Limit result set to featured products.
Category string Limit result set to products assigned a specific category ID.
Tag string Limit result set to products assigned a specific tag ID.
Shipping Class string Limit result set to products assigned a specific shipping class ID.
Attribute string Limit result set to products with a specific attribute. Use the taxonomy name/attribute slug.
Attribute Term string Limit result set to products with a specific attribute term ID (required an assigned attribute).
Tax Class string Limit result set to products with a specific tax class.
On Sale boolean Limit result set to products on sale.
Min Price string Limit result set to products based on a minimum price.
Max Price string Limit result set to products based on a maximum price.
Include Meta array Limit meta_data to specific keys.
Exclude Meta array Ensure meta_data excludes specific keys.
Stock Status string Limit result set to products with specified stock status.
Search Sku string Limit results to those with a SKU that partial matches a string.

Product Data

↑ Back to top
NAME TYPE DESCRIPTION
Id integer Unique identifier for the resource.
Name string Product name.
Slug string Product slug.
Permalink string Product URL.
Date Created date-time The date the product was created, in the site’s timezone.
Date Modified date-time The date the product was last modified, in the site’s timezone.
Type string Product type.
Status string Product status (post status).
Featured boolean Featured product.
Catalog Visibility string Catalog visibility.
Description string Product description.
Short Description string Product short description.
Sku string Unique identifier.
Price string Current product price.
Regular Price string Product regular price.
Sale Price string Product sale price.
Date on Sale from date-time Start date of sale price, in the site’s timezone.
Date on Sale to date-time End date of sale price, in the site’s timezone.
Price Html string Price formatted in HTML.
On Sale boolean Shows if the product is on sale.
Purchasable boolean Shows if the product can be bought.
Total Sales integer Amount of sales.
Virtual boolean If the product is virtual.
Downloadable boolean If the product is downloadable.
Downloads array List of downloadable files.
Downloads —> Id string File ID.
Downloads —> Name string File name.
Downloads —> File string File URL.
Download Limit integer Number of times downloadable files can be downloaded after purchase.
Download Expiry integer Number of days until access to downloadable files expires.
External Url string Product external URL. Only for external products.
Button Text string Product external button text. Only for external products.
Tax Status string Tax status.
Tax Class string Tax class.
Manage Stock boolean Stock management at product level.
Stock Quantity integer Stock quantity.
Stock Status string Controls the stock status of the product.
Backorders string If managing stock, this controls if backorders are allowed.
Backorders Allowed boolean Shows if backorders are allowed.
Backordered boolean Shows if the product is on backordered.
Low Stock Amount integer Low Stock amount for the product.
Sold Individually boolean Allow one item to be bought in a single order.
Weight string Product weight (kg).
Dimensions object Product dimensions.
Dimensions —> Length string Product length (cm).
Dimensions —> Width string Product width (cm).
Dimensions —> Height string Product height (cm).
Shipping Required boolean Shows if the product need to be shipped.
Shipping Taxable boolean Shows whether or not the product shipping is taxable.
Shipping Class string Shipping class slug.
Shipping Class Id string Shipping class ID.
Reviews Allowed boolean Allow reviews.
Post Password string Post password.
Average Rating string Reviews average rating.
Rating Count integer Amount of reviews that the product have.
Related Ids array List of related products IDs.
Upsell Ids array List of up-sell products IDs.
Cross Sell Ids array List of cross-sell products IDs.
Parent Id integer Product parent ID.
Purchase Note string Optional note to send the customer after purchase.
Categories array List of categories.
Categories —> Id integer Category ID.
Categories —> Name string Category name.
Categories —> Slug string Category slug.
Tags array List of tags.
Tags —> Id integer Tag ID.
Tags —> Name string Tag name.
Tags —> Slug string Tag slug.
Images array List of images.
Images —> Id integer Image ID.
Images —> Date Created date-time The date the image was created, in the site’s timezone.
Images —> Date Modified date-time The date the image was last modified, in the site’s timezone.
Images —> Src string Image URL.
Images —> Name string Image name.
Images —> Alt string Image alternative text.
Has Options boolean Shows if the product needs to be configured before it can be bought.
Attributes array List of attributes.
Attributes —> Id integer Attribute ID.
Attributes —> Name string Attribute name.
Attributes —> Position integer Attribute position.
Attributes —> Visible boolean Define if the attribute is visible on the “Additional information” tab in the product’s page.
Attributes —> Variation boolean Define if the attribute can be used as variation.
Attributes —> Options array List of available term names of the attribute.
Default Attributes array Defaults variation attributes.
Default Attributes —> Id integer Attribute ID.
Default Attributes —> Name string Attribute name.
Default Attributes —> Option string Selected attribute term name.
Variations array List of variations IDs.
Grouped Products array List of grouped products ID.
Menu Order integer Menu order, used to custom sort products.
Meta Data array Meta data.
Meta Data —> Id integer Meta ID.
Meta Data —> Key string Meta key.
Meta Data —> Value any Meta value.
Data Fields May Differ in Your WooCommerce Store: WooCommerce Zapier utilises WooCommerce’s REST API. Data field names, descriptions, and values can vary from one WooCommerce store to another. Your store’s data, fields, and trigger rules may differ from this documentation due to any of the following:
  • WordPress versions and the locale/language used.
  • Your WooCommerce versions and the features enabled.
  • Your active WordPress plugins and WooCommerce extensions.
  • Any custom code that overrides or changes how the WooCommerce/WordPress REST API operates.
Note: The field definitions are generated using the following settings:
  • WordPress v6.4 with the en_US locale.
  • WooCommerce v8.5 with tax and coupon functionality enabled.
  • The WooCommerce Bookings, WooCommerce Memberships, and Woo Subscriptions plugins were active.

Customer

↑ Back to top
The Customer resource represents a buyer who registers to your site. If you are relying on this resource, you can enforce registration by disabling Guest Checkout.
Tip: WooCommerce stores customer data alongside WordPress user data. If you customise WordPress Roles and Capabilities feature, make sure to not rename the Customer role, it may interfere with the plugin functionality.

Trigger Rules

↑ Back to top
A Trigger Rule defines an event (or multiple events) that will cause WooCommerce data to be sent to a Zapier Zap. The following trigger rules are available to trigger your Zaps when customer data in your WooCommerce store is added, changed or deleted.
What is a Customer?: A Customer in WooCommerce is someone with a user account to log in to your store. People purchasing as a guest (without logging into an account) are not considered customers.

Customer created

Triggers when:
  • a customer registers (creates an account) in your WooCommerce store.
  • a WordPress user account (with any role) is created.
Tip: For this to trigger, your WooCommerce store would normally be configured to allow customers to create an account. Note: This trigger rule does not trigger when someone purchases as a guest without registering for an account. Please use one of the Order trigger rules if you would like guest purchases to be sent to Zapier.

Customer deleted

Triggers when a customer is deleted.
Note: There is no trash functionality for customers (users) in WordPress. Only the ID field is available: Due to limitations in how WooCommerce handles deleted events, only the ID of the deleted resource is sent to Zapier when using this trigger rule. No other data fields are available.

Customer updated

Triggers when a customer (or any WordPress user) is updated/edited/changed/modified.

Actions and Searches

↑ Back to top
The following actions are available for use in your Zaps to create, update or find customers.
What is a Customer?: A Customer in WooCommerce is someone with a user account to log in to your store. People purchasing as a guest (without logging into an account) are not considered customers. Line-Item Enabled Data Field: Meta Data: To specify multiple values for these field(s), the values must be sent in a line-item aware format. Please see here for details on how the Line Itemizer can be used to achieve this.

Create Customer

Creates a new Customer in WooCommerce.
Create Input Fields
NAME TYPE DESCRIPTION
Email string New user email address. _Required_
First Name string Customer first name.
Last Name string Customer last name.
Username string New user username.
Password password New user password.
Billing object List of billing address data. _Only the child fields are visible in the Zapier UI._
Billing —> First Name string First name.
Billing —> Last Name string Last name.
Billing —> Company string Company name.
Billing —> Address 1 string Address line 1
Billing —> Address 2 string Address line 2
Billing —> City string City name.
Billing —> State string ISO code or name of the state, province or district.
Billing —> Postcode string Postal code.
Billing —> Country string ISO code of the country.
Billing —> Email string Email address.
Billing —> Phone string Phone number.
Shipping object List of shipping address data. _Only the child fields are visible in the Zapier UI._
Shipping —> First Name string First name.
Shipping —> Last Name string Last name.
Shipping —> Company string Company name.
Shipping —> Address 1 string Address line 1
Shipping —> Address 2 string Address line 2
Shipping —> City string City name.
Shipping —> State string ISO code or name of the state, province or district.
Shipping —> Postcode string Postal code.
Shipping —> Country string ISO code of the country.
Shipping —> Phone string Phone number.
Meta Data array Meta data. _Only the child fields are visible in the Zapier UI._
Meta Data —> Key string Meta key.
Meta Data —> Value any Meta value.

Update Customer

Updates (modifies) an existing Customer in WooCommerce.
Note: Resource ID is Required for Update Steps: An update action always requires a valid top-level ID to be specified. This ensures that your Zap knows which record to update. On the other hand, any non-top-level ID is optional. If you leave it empty, WooCommerce will create a new entry, such as a new Meta Data item. To help identify the correct Resource ID, you can add a Find step before your update step. The result of your Find step will contain the Resource ID, which you can then use in the Update step.
Update Input Fields
NAME TYPE DESCRIPTION
Existing ID integer Unique identifier for the resource. _Required_
Email string The email address for the customer.
First Name string Customer first name.
Last Name string Customer last name.
Username string Customer login name.
Password password Customer password.
Billing object List of billing address data. _Only the child fields are visible in the Zapier UI._
Billing —> First Name string First name.
Billing —> Last Name string Last name.
Billing —> Company string Company name.
Billing —> Address 1 string Address line 1
Billing —> Address 2 string Address line 2
Billing —> City string City name.
Billing —> State string ISO code or name of the state, province or district.
Billing —> Postcode string Postal code.
Billing —> Country string ISO code of the country.
Billing —> Email string Email address.
Billing —> Phone string Phone number.
Shipping object List of shipping address data. _Only the child fields are visible in the Zapier UI._
Shipping —> First Name string First name.
Shipping —> Last Name string Last name.
Shipping —> Company string Company name.
Shipping —> Address 1 string Address line 1
Shipping —> Address 2 string Address line 2
Shipping —> City string City name.
Shipping —> State string ISO code or name of the state, province or district.
Shipping —> Postcode string Postal code.
Shipping —> Country string ISO code of the country.
Shipping —> Phone string Phone number.
Meta Data array Meta data. _Only the child fields are visible in the Zapier UI._
Meta Data —> Existing ID integer Meta ID. _Leave empty to create a new meta data record. Otherwise, enter an existing ID._
Meta Data —> Key string Meta key.
Meta Data —> Value any Meta value.

Find Customer

Searches for an existing Customer in WooCommerce. Optionally create one if none are found. All available search fields can be viewed below. We recommend using the following search fields:
  • Email: Searches for the specified customer email address.
  • Search: Searches the Customer Username, Customer Email, Customer URL, Customer Display Name fields for the specified string/term/phrase.
  • Customer ID: Searches for the specified (numeric) customer ID.
User Roles: The default search behaviour when searching for Customers is to limit the search to users with the “Customer” Role. However, if you want to broaden the result, please select another item in the dropdown. For example, you can choose “All” to search for every user of the WooCommerce store, including administrators. Consult the search fields table for available Roles. WordPress Multisite: If you are using the Create WooCommerce Customer if it doesn’t exist yet option in your Find Customer Zap, and you are also using WordPress multisite, please read the following. The following error can occur if an email address exists in your multisite network, but isn’t assigned as a customer on an individual site in your network:
Communication error. 400 Bad Request. registration-error-email-exists An account is already registered with your email address. Please log in.
This is a limitation in how Multisite is designed, and how WooCommerce itself is designed to work with multisite. WordPress Multisite stores user (and thus customer) accounts in one place (network-wide), and is then added to an individual site in your network when required. If you encounter this error, the workaround is to go to WordPress DashboardSide MenuUsersAdd New and manually add the user with a Customer role to your sub-site. Tip: Search Sort Order: Searches return the first result found, and make it available in your Zap’s subsequent action step. Each search has a default sort order, so when defining your Search step, you can use the Order and Orderby fields to choose (for example) whether the most recent result or the oldest result is returned from your search.
Search Input Fields
NAME TYPE DESCRIPTION
Customer Id string Limit search by ID.
Search string Limit results to those matching a string.
Order string Order sort attribute ascending or descending.
Orderby string Sort collection by object attribute.
Email string Limit result set to resources with a specific email.
Role string Limit result set to resources with a specific role.

Customer Data

↑ Back to top
NAME TYPE DESCRIPTION
Id integer Unique identifier for the resource.
Date Created date-time The date the customer was created, in the site’s timezone.
Date Modified date-time The date the customer was last modified, in the site’s timezone.
Email string The email address for the customer.
First Name string Customer first name.
Last Name string Customer last name.
Role string Customer role.
Username string Customer login name.
Billing object List of billing address data.
Billing —> First Name string First name.
Billing —> Last Name string Last name.
Billing —> Company string Company name.
Billing —> Address 1 string Address line 1
Billing —> Address 2 string Address line 2
Billing —> City string City name.
Billing —> State string ISO code or name of the state, province or district.
Billing —> Postcode string Postal code.
Billing —> Country string ISO code of the country.
Billing —> Email string Email address.
Billing —> Phone string Phone number.
Shipping object List of shipping address data.
Shipping —> First Name string First name.
Shipping —> Last Name string Last name.
Shipping —> Company string Company name.
Shipping —> Address 1 string Address line 1
Shipping —> Address 2 string Address line 2
Shipping —> City string City name.
Shipping —> State string ISO code or name of the state, province or district.
Shipping —> Postcode string Postal code.
Shipping —> Country string ISO code of the country.
Shipping —> Phone string Phone number.
Is Paying Customer boolean Is the customer a paying customer?
Avatar Url string Avatar URL.
Meta Data array Meta data.
Meta Data —> Id integer Meta ID.
Meta Data —> Key string Meta key.
Meta Data —> Value any Meta value.
Data Fields May Differ in Your WooCommerce Store: WooCommerce Zapier utilises WooCommerce’s REST API. Data field names, descriptions, and values can vary from one WooCommerce store to another. Your store’s data, fields, and trigger rules may differ from this documentation due to any of the following:
  • WordPress versions and the locale/language used.
  • Your WooCommerce versions and the features enabled.
  • Your active WordPress plugins and WooCommerce extensions.
  • Any custom code that overrides or changes how the WooCommerce/WordPress REST API operates.
Note: The field definitions are generated using the following settings:
  • WordPress v6.4 with the en_US locale.
  • WooCommerce v8.5 with tax and coupon functionality enabled.
  • The WooCommerce Bookings, WooCommerce Memberships, and Woo Subscriptions plugins were active.

Coupon

↑ Back to top
Only available if the Coupon functionality is enabled in your WooCommerce store. (Enabled by default).

Trigger Rules

↑ Back to top
A Trigger Rule defines an event (or multiple events) that will cause WooCommerce data to be sent to a Zapier Zap. The following trigger rules are available to trigger your Zaps when coupon data in your WooCommerce store is added, changed or deleted.

Coupon created

Triggers when a coupon is created.

Coupon deleted

Triggers when a coupon is deleted (trashed).
Only the ID field is available: Due to limitations in how WooCommerce handles deleted events, only the ID of the deleted resource is sent to Zapier when using this trigger rule. No other data fields are available.

Coupon restored

Triggers when an already trashed coupon is restored from the trash.

Coupon updated

Triggers when a coupon is updated/edited/changed/modified.

Actions and Searches

↑ Back to top
The following actions are available for use in your Zaps to create, update or find coupons.
Line-Item Enabled Data Field: Meta Data: To specify multiple values for these field(s), the values must be sent in a line-item aware format. Please see here for details on how the Line Itemizer can be used to achieve this.

Create Coupon

Creates a new Coupon in WooCommerce. A common use case of this action is to automatically create a unique coupon code for each customer that joins your mailing list. To achieve this, in your Zap’s Create Coupon action, you would set the Email Restrictions data field to your customer’s email address from the Trigger (step 1) part of your Zap: Email Restrictions Example When automatically creating Coupons in Zaps, it’s usually best to use simple, unique alphanumeric coupon codes. You can add a Code by Zapier step to your Zap which automatically generates an alphanumeric coupon code (a-z, 0-9 and hyphens only) based on the customer’s email address: Code by Zapier Example Input Data:
  • customer —> User Email Address From Step 1 in Your Zap (or any other uniquely identifiable information such as a customer name).
// Generate an alphanumeric coupon code
// (a-z, 0-9 and hyphens) based on the input.
return { slug: input.customer.replace(/[^A-Za-z0-9-]+/g, "") };
You can then use the result of this Code by Zapier step in your Create Coupon action: Create Coupon Code Example
Tip: Using the WooCommerce URL Coupons Extension?: Please see here for some suggestions.
Create Input Fields
NAME TYPE DESCRIPTION
Code string Coupon code. _Required_
Amount string The amount of discount. Should always be numeric, even if setting a percentage.
Status string The status of the coupon. Should always be draft, published, or pending review
Discount Type string Determines the type of discount that will be applied.
Description string Coupon description.
Date Expires date-time The date the coupon expires, in the site’s timezone.
Individual Use boolean If true, the coupon can only be used individually. Other applied coupons will be removed from the cart.
Product Ids array List of product IDs the coupon can be used on.
Excluded Product Ids array List of product IDs the coupon cannot be used on.
Usage Limit integer How many times the coupon can be used in total.
Usage Limit per User integer How many times the coupon can be used per customer.
Limit Usage to X Items integer Max number of items in the cart the coupon can be applied to.
Free Shipping boolean If true and if the free shipping method requires a coupon, this coupon will enable free shipping.
Product Categories array List of category IDs the coupon applies to.
Excluded Product Categories array List of category IDs the coupon does not apply to.
Exclude Sale Items boolean If true, this coupon will not be applied to items that have sale prices.
Minimum Amount string Minimum order amount that needs to be in the cart before coupon applies.
Maximum Amount string Maximum order amount allowed when using the coupon.
Email Restrictions array List of email addresses that can use this coupon.
Meta Data array Meta data. _Only the child fields are visible in the Zapier UI._
Meta Data —> Key string Meta key.
Meta Data —> Value any Meta value.

Update Coupon

Updates (modifies) an existing Coupon in WooCommerce.
Note: Resource ID is Required for Update Steps: An update action always requires a valid top-level ID to be specified. This ensures that your Zap knows which record to update. On the other hand, any non-top-level ID is optional. If you leave it empty, WooCommerce will create a new entry, such as a new Meta Data item. To help identify the correct Resource ID, you can add a Find step before your update step. The result of your Find step will contain the Resource ID, which you can then use in the Update step.
Update Input Fields
NAME TYPE DESCRIPTION
Existing ID integer Unique identifier for the resource. _Required_
Code string Coupon code.
Amount string The amount of discount. Should always be numeric, even if setting a percentage.
Status string The status of the coupon. Should always be draft, published, or pending review
Discount Type string Determines the type of discount that will be applied.
Description string Coupon description.
Date Expires date-time The date the coupon expires, in the site’s timezone.
Individual Use boolean If true, the coupon can only be used individually. Other applied coupons will be removed from the cart.
Product Ids array List of product IDs the coupon can be used on.
Excluded Product Ids array List of product IDs the coupon cannot be used on.
Usage Limit integer How many times the coupon can be used in total.
Usage Limit per User integer How many times the coupon can be used per customer.
Limit Usage to X Items integer Max number of items in the cart the coupon can be applied to.
Free Shipping boolean If true and if the free shipping method requires a coupon, this coupon will enable free shipping.
Product Categories array List of category IDs the coupon applies to.
Excluded Product Categories array List of category IDs the coupon does not apply to.
Exclude Sale Items boolean If true, this coupon will not be applied to items that have sale prices.
Minimum Amount string Minimum order amount that needs to be in the cart before coupon applies.
Maximum Amount string Maximum order amount allowed when using the coupon.
Email Restrictions array List of email addresses that can use this coupon.
Meta Data array Meta data. _Only the child fields are visible in the Zapier UI._
Meta Data —> Existing ID integer Meta ID. _Leave empty to create a new meta data record. Otherwise, enter an existing ID._
Meta Data —> Key string Meta key.
Meta Data —> Value any Meta value.

Find Coupon

Searches for an existing Coupon in WooCommerce. Optionally create one if none are found. All available search fields can be viewed here. We recommend using the following search fields:
  • Code: Searches for the specified coupon code.
  • Search: Searches the Coupon Name and Coupon Description fields for the specified string/term/phrase.
  • Coupon ID: Searches for the specified (numeric) coupon ID.
Tip: Search Sort Order: Searches return the first result found, and make it available in your Zap’s subsequent action step. Each search has a default sort order, so when defining your Search step, you can use the Order and Orderby fields to choose (for example) whether the most recent result or the oldest result is returned from your search.
Search Input Fields
NAME TYPE DESCRIPTION
Coupon Id string Limit search by ID.
Search string Limit results to those matching a string.
Modified After string Limit response to resources modified after a given ISO8601 compliant date.
Modified Before string Limit response to resources modified before a given ISO8601 compliant date.
Order string Order sort attribute ascending or descending.
Orderby string Sort collection by object attribute.
Code string Limit result set to resources with a specific code.

Coupon Data

↑ Back to top
NAME TYPE DESCRIPTION
Id integer Unique identifier for the object.
Code string Coupon code.
Amount string The amount of discount. Should always be numeric, even if setting a percentage.
Status string The status of the coupon. Should always be draft, published, or pending review
Date Created date-time The date the coupon was created, in the site’s timezone.
Date Modified date-time The date the coupon was last modified, in the site’s timezone.
Discount Type string Determines the type of discount that will be applied.
Description string Coupon description.
Date Expires date-time The date the coupon expires, in the site’s timezone.
Usage Count integer Number of times the coupon has been used already.
Individual Use boolean If true, the coupon can only be used individually. Other applied coupons will be removed from the cart.
Product Ids array List of product IDs the coupon can be used on.
Excluded Product Ids array List of product IDs the coupon cannot be used on.
Usage Limit integer How many times the coupon can be used in total.
Usage Limit per User integer How many times the coupon can be used per customer.
Limit Usage to X Items integer Max number of items in the cart the coupon can be applied to.
Free Shipping boolean If true and if the free shipping method requires a coupon, this coupon will enable free shipping.
Product Categories array List of category IDs the coupon applies to.
Excluded Product Categories array List of category IDs the coupon does not apply to.
Exclude Sale Items boolean If true, this coupon will not be applied to items that have sale prices.
Minimum Amount string Minimum order amount that needs to be in the cart before coupon applies.
Maximum Amount string Maximum order amount allowed when using the coupon.
Email Restrictions array List of email addresses that can use this coupon.
Used by array List of user IDs (or guest email addresses) that have used the coupon.
Meta Data array Meta data.
Meta Data —> Id integer Meta ID.
Meta Data —> Key string Meta key.
Meta Data —> Value any Meta value.
Data Fields May Differ in Your WooCommerce Store: WooCommerce Zapier utilises WooCommerce’s REST API. Data field names, descriptions, and values can vary from one WooCommerce store to another. Your store’s data, fields, and trigger rules may differ from this documentation due to any of the following:
  • WordPress versions and the locale/language used.
  • Your WooCommerce versions and the features enabled.
  • Your active WordPress plugins and WooCommerce extensions.
  • Any custom code that overrides or changes how the WooCommerce/WordPress REST API operates.
Note: The field definitions are generated using the following settings:
  • WordPress v6.4 with the en_US locale.
  • WooCommerce v8.5 with tax and coupon functionality enabled.
  • The WooCommerce Bookings, WooCommerce Memberships, and Woo Subscriptions plugins were active.

Booking

↑ Back to top
The Booking resource represents a booked timeslot, as described in the WooCommerce Bookings plugin. See the Bookings documentation for more details. Please see the Product chapter for information about the Bookable product. Please see the announcement post for some examples of how you could use WooCommerce Booking data in your Zaps.
Only available if the WooCommerce Bookings plugin is installed.: You may choose Booking in the Zapier.com interface without installing the WooCommerce Bookings plugin, however, the functionality will not work without WooCommerce Bookings, which is sold separately by WooCommerce. The minimum required WooCommerce Bookings version is 1.15.55. Please ensure you are using WooCommerce Zapier plugin version 2.2.0 or later.

Trigger Rules

↑ Back to top
The following trigger rules are available to trigger your Zaps when booking data in your WooCommerce store is added, changed or deleted.

Booking cancelled

Triggers when a booking is cancelled. Either by the customer, an administrator or automatically if the order is not finished.

Booking created

Triggers when a booking is first created.
Note: The Booking created trigger rule will trigger when a customer adds a bookable product to their cart. Before they proceed to the checkout to complete and pay for their order. If you would like to trigger your Zap only when you receive a paid booking, then consider using the Booking ordered trigger rule instead.

Booking deleted

Triggers when a booking is deleted (trashed).
Only the ID field is available: Due to limitations in how WooCommerce handles deleted events, only the ID of the deleted resource is sent to Zapier when using this trigger rule. No other data fields are available.

Booking ordered

Triggers when an order is placed containing a booking, which is the same time that the Order created trigger rule.

Booking restored

Triggers when an already trashed booking is restored from the trash.

Booking status changed

Booking statuses are an important part of the booking processing and fulfilment flow in WooCommerce. More details on the booking status life cycle in WooCommerce can be found in the WooCommerce Bookings documentation. The Booking status changed (any status) trigger rule will trigger every time a booking changes status to any status, including when a booking is first created. If you are interested in specific status change(s) only, you may wish to use a more specific Booking status changed to … trigger rule. Below is a full list of Booking status changed trigger rules:
  • Booking status changed (any status)
  • Booking status changed to Cancelled
  • Booking status changed to Complete
  • Booking status changed to Confirmed
  • Booking status changed to In Cart
  • Booking status changed to Paid
  • Booking status changed to Pending Confirmation
WooCommerce Zapier Plugin Version 2.4 Required: Please ensure you update the WooCommerce Zapier plugin to version 2.4.0 or later to use these Trigger Rules. WooCommerce Zapier version 2.4.0 renamed Booking status changed to Booking status changed (any status) to make it more clear that this trigger rule will trigger for any status change.

Booking updated

Triggers when a booking is updated/edited/changed/modified, including any status change.

Actions and Searches

↑ Back to top
Not available.

Booking Data

↑ Back to top
NAME TYPE DESCRIPTION
Id integer Unique identifier for the resource
All Day boolean A boolean describing if the booking is for an entire day.
Cost string Total booking cost.
Customer Id integer ID of customer that purchased the booking.
Date Created date-time The time the booking was created.
Date Modified date-time The time the booking was last updated.
Date End date-time The end time of the booking.
Google Calendar Event Id string A unique ID of a synced booking event to Google Calendar.
Order Id integer The order ID linked to the booking.
Order Item Id integer The unique order line item ID of the booking.
Parent Id integer The unique item ID of the parent post.
Person Counts array The number of persons by person type within the booking.
Product Id integer The unique product ID linked to the booking.
Resource Id integer The unique resource ID linked to the booking.
Date Start date-time The start time of the booking.
Status string The current status of the booking.
Local Timezone string The local timezone used when the booking was purchased.
Data Fields May Differ in Your WooCommerce Store: WooCommerce Zapier utilises WooCommerce’s REST API. Data field names, descriptions, and values can vary from one WooCommerce store to another. Your store’s data, fields, and trigger rules may differ from this documentation due to any of the following:
  • WordPress versions and the locale/language used.
  • Your WooCommerce versions and the features enabled.
  • Your active WordPress plugins and WooCommerce extensions.
  • Any custom code that overrides or changes how the WooCommerce/WordPress REST API operates.
Note: The field definitions are generated using the following settings:
  • WordPress v6.4 with the en_US locale.
  • WooCommerce v8.5 with tax and coupon functionality enabled.
  • The WooCommerce Bookings, WooCommerce Memberships, and Woo Subscriptions plugins were active.

Membership Plan

↑ Back to top

Membership Plan

The Membership Plan resource is a collection of settings and conditions according to which customers can gain access to restricted content, products, and member-only discounts, among other benefits. This resource is described in the WooCommerce Memberships plugin. For more details, see the WooCommerce Memberships Plans documentation.
Other Membership Resource: In addition to Membership Plans, there is another resource that can be accessed in the Zapier Integration: Only available if the WooCommerce Memberships plugin is installed: You may choose Membership Plan or User Membership in the Zapier.com interface without installing the WooCommerce Memberships plugin, however, the functionality will not work without WooCommerce Memberships, which is sold separately by WooCommerce. The minimum required WooCommerce Memberships version is 1.25.0. WooCommerce Zapier Plugin Version 2.10 Required: Please ensure you update the WooCommerce Zapier plugin to version 2.10.0 to use this functionality.

Trigger Rules

↑ Back to top
The following trigger rules are available to activate your Zaps when membership plan data in your WooCommerce store is added, changed, or deleted.

Membership Plan Created

Triggers when a new membership plan is created.

Membership Plan Deleted

Triggers when a membership plan is deleted (trashed).
Only the ID field is available: Due to limitations in how WooCommerce handles deleted events, only the ID of the deleted resource is sent to Zapier when using this trigger rule. No other data fields are available.

Membership Plan Restored

Triggers when a previously trashed membership plan is restored from the trash.

Membership Plan Updated

Triggers when a membership plan is updated/edited/changed/modified, including when a plan is created, changes status, or is restored from the trash.

Actions and Searches

↑ Back to top
Only the search action can be used in your Zaps with the membership plans resource.

Find Membership Plan

Searches for an existing Membership Plan in WooCommerce. Does not support creation.
Tip: Search Sort Order: Searches return the first result found, and make it available in your Zap’s subsequent action step. Each search has a default sort order, so when defining your Search step, you can use the Order and Orderby fields to choose (for example) whether the most recent result or the oldest result is returned from your search.
Search Input Fields
NAME TYPE DESCRIPTION
Membership Plan Id string Limit search by ID.
Name string Limit results to those with the specified plan name.
Order string Order sort attribute ascending or descending.
Orderby string Sort collection by object attribute.

Membership Plan Data

↑ Back to top
NAME TYPE DESCRIPTION
Id integer Unique identifier of the membership plan.
Name string Membership plan name.
Slug string Membership plan slug.
Status string Membership plan status.
Access Method string Membership plan access method.
Has Subscription boolean Marks a membership plan that has at least one subscription product that can give access upon purchase. _Only available if the Woo Subscriptions plugin is installed._
Has Subscription Installment boolean Marks a membership plan whose duration is not bound to a tied subscription, but where the subscription handles installment billing. _Only available if the Woo Subscriptions plugin is installed._
Access Product Ids array List of products that can grant access to the membership plan.
Access Length Type string Duration type of the membership.
Subscription Access Length integer Membership plan access duration in seconds, when tied to a subscription. _Only available if the Woo Subscriptions plugin is installed._
Subscription Access Length Type string Duration type of the membership plan when access is tied to a subscription. _Only available if the Woo Subscriptions plugin is installed._
Access Length integer Membership plan access duration in seconds.
Access Start Date date-time The date when access will start, in the site timezone.
Access End Date date-time The set date when access will end for fixed-length membership plans, in the site timezone.
Subscription Access Start Date date-time The date when access will start, when tied to a subscription, in the site timezone. _Only available if the Woo Subscriptions plugin is installed._
Subscription Access End Date date-time The set date when access will end for fixed-length membership plans tied to a subscription, in the site timezone. _Only available if the Woo Subscriptions plugin is installed._
Date Created date-time The date when the membership plan was created, in the site timezone.
Date Modified date-time The date when the membership plan was last updated, in the site timezone.
Meta Data array Membership plan additional meta data.
Meta Data —> Id integer Meta ID.
Meta Data —> Key string Meta key.
Meta Data —> Value any Meta value.
Some fields are only available if the Woo Subscriptions plugin is installed: The following membership plan fields are available only if the Woo Subscriptions plugin is installed:
  • Has Subscription
  • Has Subscription Installment
  • Subscription Access Length
  • Subscription Access Length Type
  • Subscription Access Start Date
  • Subscription Access End Date
If Woo Subscriptions is not installed, these fields will not be available. Data Fields May Differ in Your WooCommerce Store: WooCommerce Zapier utilises WooCommerce’s REST API. Data field names, descriptions, and values can vary from one WooCommerce store to another. Your store’s data, fields, and trigger rules may differ from this documentation due to any of the following:
  • WordPress versions and the locale/language used.
  • Your WooCommerce versions and the features enabled.
  • Your active WordPress plugins and WooCommerce extensions.
  • Any custom code that overrides or changes how the WooCommerce/WordPress REST API operates.
Note: The field definitions are generated using the following settings:
  • WordPress v6.4 with the en_US locale.
  • WooCommerce v8.5 with tax and coupon functionality enabled.
  • The WooCommerce Bookings, WooCommerce Memberships, and Woo Subscriptions plugins were active.

User Membership

↑ Back to top

User Membership

The User Membership resource is created when a customer gains access to a membership. Each user membership is linked to one user and one membership plan only. Additionally, a membership has a status and a start date. This resource is described in the WooCommerce Memberships plugin. For more details, see the WooCommerce Memberships User Memberships documentation.
Other Membership Resource: In addition to User Memberships, there is another resource that can be accessed in the Zapier Integration: Only available if the WooCommerce Memberships plugin is installed: You may choose Membership Plan or User Membership in the Zapier.com interface without installing the WooCommerce Memberships plugin, however, the functionality will not work without WooCommerce Memberships, which is sold separately by WooCommerce. The minimum required WooCommerce Memberships version is 1.25.0. WooCommerce Zapier Plugin Version 2.10 Required: Please ensure you update the WooCommerce Zapier plugin to version 2.10.0 to use this functionality.

Trigger Rules

↑ Back to top
The following trigger rules are available to activate your Zaps when user membership data in your WooCommerce store is added, changed, or deleted.

User Membership Created

Triggers when a new user membership is created.

User Membership Deleted

Triggers when a user membership is permanently deleted.
Only the ID field is available: Due to limitations in how WooCommerce handles deleted events, only the ID of the deleted resource is sent to Zapier when using this trigger rule. No other data fields are available.

User Membership status changed

User Membership statuses are an important part of the membership processing and tracking in WooCommerce. A user membership’s status can be changed by a store owner, a member, or an automatically scheduled event3, such as renewals or expiration. More details on the user membership statuses in WooCommerce can be found in the User Membership Statuses documentation. The User Membership status changed (any status) trigger rule will trigger every time a user membership’s status changes to any status. It will always be triggered on status changes, regardless of what initiated the status change. If you are interested in specific status change(s) only, you may wish to use a more specific User Membership status changed to … trigger rule. Below is a full list of User Membership status changed trigger rules:
  • User Membership status changed (any status)
  • User Membership status changed to Active
  • User Membership status changed to Cancelled
  • User Membership status changed to Complimentary
  • User Membership status changed to Delayed
  • User Membership status changed to Expired
  • User Membership status changed to Free Trial*
  • User Membership status changed to Paused
  • User Membership status changed to Pending Cancellation
  • Only available if the Woo Subscriptions plugin is installed: The User Membership status changed to Free Trial trigger rule is available only if the Woo Subscriptions plugin is installed.

User Membership Transferred

Triggers when a user membership is transferred from one user to another.

User Membership Updated

Triggers when a user membership is updated, including any status change.

Actions and Searches

↑ Back to top
The following actions are available for use in your Zaps to create, update, or find user memberships.

Create User Membership

Creates a new user membership in WooCommerce.
Create Input Fields
NAME TYPE DESCRIPTION
Customer Id integer Unique identifier of the user the membership belongs to. _Required_
Plan Id integer Unique identifier of the plan the user membership grants access to. _Required_
Status string User membership status.
Order Id integer Unique identifier of the order that grants access.
Subscription Id integer Unique identifier of a subscription the user membership is tied to. _Only available if the Woo Subscriptions plugin is installed._
Installment Plan boolean Flag whether the user membership is using a subscription for installments.
Product Id integer Unique identifier of the purchased product, or its variation, that grants access.
Profile Fields array User membership profile fields. _Only the child fields are visible in the Zapier UI._
Profile Fields —> Slug string Profile field slug.
Profile Fields —> Value any Profile field value.
Meta Data array User membership additional meta data. _Only the child fields are visible in the Zapier UI._
Meta Data —> Key string Meta key.
Meta Data —> Value any Meta value.

Update User Membership

Updates an existing user membership in WooCommerce.
Note: Resource ID is Required for Update Steps: An update action always requires a valid top-level ID to be specified. This ensures that your Zap knows which record to update. On the other hand, any non-top-level ID is optional. If you leave it empty, WooCommerce will create a new entry, such as a new Meta Data item. To help identify the correct Resource ID, you can add a Find step before your update step. The result of your Find step will contain the Resource ID, which you can then use in the Update step.
Update Input Fields
NAME TYPE DESCRIPTION
Existing ID integer Unique identifier of a user membership. _Required_
Customer Id integer Unique identifier of the user the membership belongs to.
Plan Id integer Unique identifier of the plan the user membership grants access to.
Status string User membership status.
Order Id integer Unique identifier of the order that grants access.
Subscription Id integer Unique identifier of a subscription the user membership is tied to. _Only available if the Woo Subscriptions plugin is installed._
Installment Plan boolean Flag whether the user membership is using a subscription for installments.
Product Id integer Unique identifier of the purchased product, or its variation, that grants access.
Profile Fields array User membership profile fields. _Only the child fields are visible in the Zapier UI._
Profile Fields —> Slug string Profile field slug.
Profile Fields —> Value any Profile field value.
Meta Data array User membership additional meta data. _Only the child fields are visible in the Zapier UI._
Meta Data —> Existing ID integer Meta ID. _Leave empty to create a new meta data record. Otherwise, enter an existing ID._
Meta Data —> Key string Meta key.
Meta Data —> Value any Meta value.

Find User Membership

Searches for an existing user membership in WooCommerce. Optionally create one if none are found.
Tip: Search Sort Order: Searches return the first result found, and make it available in your Zap’s subsequent action step. Each search has a default sort order, so when defining your Search step, you can use the Order and Orderby fields to choose (for example) whether the most recent result or the oldest result is returned from your search.
Search Input Fields
NAME TYPE DESCRIPTION
User Membership Id string Limit search by ID.
Search string Limit results to those matching a string.
Status string Limit results to user memberships of a specific status.
Plan string Limit results to user memberships for a specific plan (matched by ID or slug).
Customer string Limit results to user memberships belonging to a specific customer (matched by ID, login name or email address).
Order Id integer Limit results to user memberships related to a specific order (matched by ID).
Product Id integer Limit results to user memberships granted after the purchase of a specific product (matched by ID).
Subscription Id integer Limit results to user memberships linked to a specific subscription (matched by ID). _Only available if the Woo Subscriptions plugin is installed._
Order string Order sort attribute ascending or descending.
Orderby string Sort collection by object attribute.

User Membership Data

↑ Back to top
NAME TYPE DESCRIPTION
Id integer Unique identifier of the user membership.
Customer Id integer Unique identifier of the user the membership belongs to.
Plan Id integer Unique identifier of the plan the user membership grants access to.
Status string User membership status.
Order Id integer Unique identifier of the order that grants access.
Product Id integer Unique identifier of the purchased product, or its variation, that grants access.
Date Created date-time The date when the user membership is created, in the site timezone.
Start Date date-time The date when the user membership starts being active, in the site timezone.
End Date date-time The date when the user membership ends, in the site timezone.
Paused Date date-time The date when the user membership was last paused, in the site timezone.
Cancelled Date date-time The date when the user membership was cancelled, in the site timezone.
View Url string The URL pointing to the Members Area to view the membership.
Profile Fields array User membership profile fields.
Profile Fields —> Slug string Profile field slug.
Profile Fields —> Value any Profile field value.
Meta Data array User membership additional meta data.
Meta Data —> Id integer Meta ID.
Meta Data —> Key string Meta key.
Meta Data —> Value any Meta value.
Subscription Id integer Unique identifier of a subscription the user membership is tied to. _Only available if the Woo Subscriptions plugin is installed._
Only available if the Woo Subscriptions plugin is installed: The Subscription Id user membership field is available only if the Woo Subscriptions plugin is installed. Data Fields May Differ in Your WooCommerce Store: WooCommerce Zapier utilises WooCommerce’s REST API. Data field names, descriptions, and values can vary from one WooCommerce store to another. Your store’s data, fields, and trigger rules may differ from this documentation due to any of the following:
  • WordPress versions and the locale/language used.
  • Your WooCommerce versions and the features enabled.
  • Your active WordPress plugins and WooCommerce extensions.
  • Any custom code that overrides or changes how the WooCommerce/WordPress REST API operates.
Note: The field definitions are generated using the following settings:
  • WordPress v6.4 with the en_US locale.
  • WooCommerce v8.5 with tax and coupon functionality enabled.
  • The WooCommerce Bookings, WooCommerce Memberships, and Woo Subscriptions plugins were active.

Subscription

↑ Back to top
The Subscription resource represents a recurring payment as described in the Woo Subscriptions plugin. See the Subscriptions documentation for more details. Please see the Products chapter for Simple subscription and Variable subscription information. The availability of data fields and behaviour for the “Variable subscription” product are similar to the WooCommerce built-in variable products. For details, please see the Variable Products chapter.
Only available if the Woo Subscriptions plugin is installed.: You may choose Subscription in the Zapier.com interface without installing the Woo Subscriptions plugin, however, the functionality will not work without Woo Subscriptions, which is sold separately by WooCommerce. The minimum required Woo Subscriptions version is 4.2.0. Other Subscription resources: Subscriptions also have other (child) resources that can be accessed in Zapier Integration:

Trigger Rules

↑ Back to top
The following trigger rules are available to trigger your Zaps when subscription data in your WooCommerce store is added, changed or deleted.

Subscription created

Triggers when a subscription is created.
Triggers for both paid and unpaid subscriptions: The Subscription created trigger rule will trigger for every new subscription (both paid and unpaid). See the tip below if you would like to perform a Zap for successful (paid) subscriptions only. How to trigger paid subscription signups only: If you would like to trigger your Zap only when a paid subscription is created, you can use the following Zap setup:
  • Zap Step 1: Use the Subscription status changed to Active trigger rule.
  • Zap Step 2: A WooCommerce Find Order step:
    • Order ID equals 1. Parent ID (the subscriptions’ Parent ID)
    • This will find the order that created the subscription.
  • Zap Step 3: A Formatter by Zapier step, with the Date / Time Event and Compare Dates Transform:
    • Start Date equals 2. Date Created (the order’s Date Created from Step 2)
    • End Date Value equals 1. Subscription Date Paid (the Subscription Date Paid from Step 1)
    • This will calculate the number of days between the original order date and the subscription date paid.
  • Zap Step 4: A Filter step:
    • Only continue if :
      • 3. Output Days
      • (Text) Exactly matches
      • 0
  • Zap Step 5: Your desired action.
The above setup should mean that the Zap only triggers when a subscription is first paid for. It should filter out subsequent subscription renewals, which also change a subscription’s status to Active. This setup works because the date_paid subscription field changes to a new date every time the subscription renews, so steps 2 to 4 in the above Zap setup should mean that the Zap only continues for the initial payment (when the Subscription first changes status to active).

Subscription deleted

Triggers when a subscription is deleted (trashed).
Only the ID field is available: Due to limitations in how WooCommerce handles deleted events, only the ID of the deleted resource is sent to Zapier when using this trigger rule. No other data fields are available.

Subscription renewal failed

Triggers when a subscription has just had a renewal payment fail.
Note: This is not triggered for failed payments on the initial order or a switch order. It is only triggered for failed payments on renewal orders.

Subscription renewed

Triggers when a subscription renewal payment is completed successfully. It is triggered for both automatic and manual renewal payments.
Important: This is not triggered for payments on the initial order or a switch order. It is only triggered for successful payments on renewal orders.

Subscription status changed

Subscription statuses are an important part of the subscription processing and fulfilment flow in WooCommerce. A subscription’s status can be changed by a store owner, subscriber or an automatically scheduled events, like renewals or expiration. More details on the subscription status life cycle in WooCommerce can be found in the Subscription Status Guide documentation. The Subscription status changed (any status) trigger rule will trigger every time a subscription changes status to any status, including when a subscription is first created. It will always be triggered on status changes, regardless of what initiated the status change. If you are interested in specific status change(s) only, you may wish to use a more specific Subscription status changed to … trigger rule. Below is a full list of Subscription status changed trigger rules:
  • Subscription status changed (any status)
  • Subscription status changed to Active
  • Subscription status changed to Cancelled
  • Subscription status changed to Expired
  • Subscription status changed to On hold
  • Subscription status changed to Pending Cancellation
WooCommerce Zapier Plugin Version 2.4 Required: Please ensure you update the WooCommerce Zapier plugin to version 2.4.0 or later to use these Trigger Rules. WooCommerce Zapier version 2.4.0 renamed Subscription status changed to Subscription status changed (any status) to make it more clear that this trigger rule will trigger for any status change.

Subscription switched

Triggers when a user upgrades or downgrades their subscription from the My Account page.
Note: Triggered when the switch order status changes to processing or completed and runs after all the switching and updating has happened.

Subscription updated

Triggers when a subscription is updated/edited/changed/modified/renewed/failed, including any status change.

Actions and Searches

↑ Back to top
The following actions are available for use in your Zaps to create, update or find subscriptions.
Line-Item Enabled Data Fields: Coupon Lines, Shipping Lines, Line Items, Removed Line Items: To specify multiple values for these field(s), the values must be sent in a line-item aware format. Please see here for details on how the Line Itemizer can be used to achieve this.

Create Subscription

Creates a new Subscription in WooCommerce.
Create Input Fields
NAME TYPE DESCRIPTION
Parent Id integer Parent order ID.
Status string Order status.
Currency string Currency the order was created with, in ISO format.
Customer Id integer User ID who owns the order. 0 for guests.
Billing object Billing address. _Only the child fields are visible in the Zapier UI._
Billing —> First Name string First name.
Billing —> Last Name string Last name.
Billing —> Company string Company name.
Billing —> Address 1 string Address line 1.
Billing —> Address 2 string Address line 2.
Billing —> City string City name.
Billing —> State string ISO code or name of the state, province or district.
Billing —> Postcode string Postal code.
Billing —> Country string Country code in ISO 3166-1 alpha-2 format.
Billing —> Email string Email address.
Billing —> Phone string Phone number.
Shipping object Shipping address. _Only the child fields are visible in the Zapier UI._
Shipping —> First Name string First name.
Shipping —> Last Name string Last name.
Shipping —> Company string Company name.
Shipping —> Address 1 string Address line 1.
Shipping —> Address 2 string Address line 2.
Shipping —> City string City name.
Shipping —> State string ISO code or name of the state, province or district.
Shipping —> Postcode string Postal code.
Shipping —> Country string Country code in ISO 3166-1 alpha-2 format.
Payment Method string Payment method ID.
Payment Method Title string Payment method title.
Set Paid boolean Define if the order is paid. It will set the status to processing and reduce stock items.
Transaction Id string Unique transaction ID.
Customer Note string Note left by customer during checkout.
Line Items array Line items data. _Only the child fields are visible in the Zapier UI._
Line Items —> Product Id any Product ID.
Line Items —> Variation Id integer Variation ID, if applicable.
Line Items —> Quantity integer Quantity ordered.
Line Items —> Subtotal string Line subtotal (before discounts).
Line Items —> Subtotal Tax string Line subtotal tax (before discounts).
Line Items —> Total string Line total (after discounts).
Line Items —> Total Tax string Line total tax (after discounts).
Shipping Lines array Shipping lines data. _Only the child fields are visible in the Zapier UI._
Shipping Lines —> Method Title any Shipping method name.
Shipping Lines —> Method Id any Shipping method ID.
Shipping Lines —> Total string Line total (after discounts).
Fee Lines array Fee lines data. _Only the child fields are visible in the Zapier UI._
Fee Lines —> Name any Fee name.
Fee Lines —> Tax Class string Tax class of fee.
Fee Lines —> Tax Status string Tax status of fee.
Fee Lines —> Total string Line total (after discounts).
Fee Lines —> Total Tax string Line total tax (after discounts).
Coupon Lines array Coupons line data. _Only the child fields are visible in the Zapier UI._
Coupon Lines —> Code any Coupon code.
Coupon Lines —> Discount string Discount total.
Transition Status string The status to transition the subscription to. Unlike the “status” param, this will calculate and update the subscription dates.
Billing Interval integer The number of billing periods between subscription renewals.
Billing Period string Billing period for the subscription.
Payment Details object Subscription payment details. _Only the child fields are visible in the Zapier UI._
Payment Details —> Method Id string Payment gateway ID.
Start Date date-time The subscription’s start date.
Trial End Date date-time The subscription’s trial date
Next Payment Date date-time The subscription’s next payment date.
End Date date-time The subscription’s end date.
Removed Line Items array Removed line items data. _Note: Always ignored._ _Only the child fields are visible in the Zapier UI._
Removed Line Items —> Product Id any Product ID. _Note: Always ignored._
Removed Line Items —> Variation Id integer Variation ID, if applicable. _Note: Always ignored._
Removed Line Items —> Quantity integer Quantity ordered. _Note: Always ignored._
Removed Line Items —> Subtotal string Line subtotal (before discounts). _Note: Always ignored._
Removed Line Items —> Subtotal Tax string Line subtotal tax (before discounts). _Note: Always ignored._
Removed Line Items —> Total string Line total (after discounts). _Note: Always ignored._
Removed Line Items —> Total Tax string Line total tax (after discounts). _Note: Always ignored._

Update Subscription

Updates (modifies) an existing Subscription in WooCommerce.
Note: Resource ID is Required for Update Steps: An update action always requires a valid top-level ID to be specified. This ensures that your Zap knows which record to update. On the other hand, any non-top-level ID is optional. If you leave it empty, WooCommerce will create a new entry, such as a new Meta Data item. To help identify the correct Resource ID, you can add a Find step before your update step. The result of your Find step will contain the Resource ID, which you can then use in the Update step.
Update Input Fields
NAME TYPE DESCRIPTION
Existing ID integer Unique identifier for the resource. _Required_
Parent Id integer Parent order ID.
Status string Order status.
Currency string Currency the order was created with, in ISO format.
Customer Id integer User ID who owns the order. 0 for guests.
Billing object Billing address. _Only the child fields are visible in the Zapier UI._
Billing —> First Name string First name.
Billing —> Last Name string Last name.
Billing —> Company string Company name.
Billing —> Address 1 string Address line 1.
Billing —> Address 2 string Address line 2.
Billing —> City string City name.
Billing —> State string ISO code or name of the state, province or district.
Billing —> Postcode string Postal code.
Billing —> Country string Country code in ISO 3166-1 alpha-2 format.
Billing —> Email string Email address.
Billing —> Phone string Phone number.
Shipping object Shipping address. _Only the child fields are visible in the Zapier UI._
Shipping —> First Name string First name.
Shipping —> Last Name string Last name.
Shipping —> Company string Company name.
Shipping —> Address 1 string Address line 1.
Shipping —> Address 2 string Address line 2.
Shipping —> City string City name.
Shipping —> State string ISO code or name of the state, province or district.
Shipping —> Postcode string Postal code.
Shipping —> Country string Country code in ISO 3166-1 alpha-2 format.
Payment Method string Payment method ID.
Payment Method Title string Payment method title.
Set Paid boolean Define if the order is paid. It will set the status to processing and reduce stock items.
Transaction Id string Unique transaction ID.
Customer Note string Note left by customer during checkout.
Line Items array Line items data. _Only the child fields are visible in the Zapier UI._
Line Items —> Existing ID integer Item ID. _Leave empty to create a new line items record. Otherwise, enter an existing ID._
Line Items —> Product Id any Product ID.
Line Items —> Variation Id integer Variation ID, if applicable.
Line Items —> Quantity integer Quantity ordered.
Line Items —> Subtotal string Line subtotal (before discounts).
Line Items —> Subtotal Tax string Line subtotal tax (before discounts).
Line Items —> Total string Line total (after discounts).
Line Items —> Total Tax string Line total tax (after discounts).
Shipping Lines array Shipping lines data. _Only the child fields are visible in the Zapier UI._
Shipping Lines —> Existing ID integer Item ID. _Leave empty to create a new shipping lines record. Otherwise, enter an existing ID._
Shipping Lines —> Method Title any Shipping method name.
Shipping Lines —> Method Id any Shipping method ID.
Shipping Lines —> Total string Line total (after discounts).
Fee Lines array Fee lines data. _Only the child fields are visible in the Zapier UI._
Fee Lines —> Existing ID integer Item ID. _Leave empty to create a new fee lines record. Otherwise, enter an existing ID._
Fee Lines —> Name any Fee name.
Fee Lines —> Tax Class string Tax class of fee.
Fee Lines —> Tax Status string Tax status of fee.
Fee Lines —> Total string Line total (after discounts).
Fee Lines —> Total Tax string Line total tax (after discounts).
Coupon Lines array Coupons line data. _Only the child fields are visible in the Zapier UI._
Coupon Lines —> Existing ID integer Item ID. _Leave empty to create a new coupon lines record. Otherwise, enter an existing ID._
Coupon Lines —> Code any Coupon code.
Coupon Lines —> Discount string Discount total.
Transition Status string The status to transition the subscription to. Unlike the “status” param, this will calculate and update the subscription dates.
Billing Interval integer The number of billing periods between subscription renewals.
Billing Period string Billing period for the subscription.
Payment Details object Subscription payment details. _Only the child fields are visible in the Zapier UI._
Payment Details —> Method Id string Payment gateway ID.
Start Date date-time The subscription’s start date.
Trial End Date date-time The subscription’s trial date
Next Payment Date date-time The subscription’s next payment date.
End Date date-time The subscription’s end date.
Removed Line Items array Removed line items data. _Note: Always ignored._ _Only the child fields are visible in the Zapier UI._
Removed Line Items —> Existing ID integer Item ID. _Note: Always ignored._ _Leave empty to create a new removed line items record. Otherwise, enter an existing ID._
Removed Line Items —> Product Id any Product ID. _Note: Always ignored._
Removed Line Items —> Variation Id integer Variation ID, if applicable. _Note: Always ignored._
Removed Line Items —> Quantity integer Quantity ordered. _Note: Always ignored._
Removed Line Items —> Subtotal string Line subtotal (before discounts). _Note: Always ignored._
Removed Line Items —> Subtotal Tax string Line subtotal tax (before discounts). _Note: Always ignored._
Removed Line Items —> Total string Line total (after discounts). _Note: Always ignored._
Removed Line Items —> Total Tax string Line total tax (after discounts). _Note: Always ignored._

Find Subscription

Searches for an existing Subscription in WooCommerce. Optionally create one if none are found. All available search fields can be viewed here. We recommend using the following search fields:
  • Search: Searches the Billing Address, Shipping Address, Billing Last Name or Billing Email fields for the specified string/term/phrase.
  • Subscription ID: Searches for the specified (numeric) subscription ID.
Tip: Search Sort Order: Searches return the first result found, and make it available in your Zap’s subsequent action step. Each search has a default sort order, so when defining your Search step, you can use the Order and Orderby fields to choose (for example) whether the most recent result or the oldest result is returned from your search.
Search Input Fields
NAME TYPE DESCRIPTION
Subscription Id string Limit search by ID.
Search string Limit results to those matching a string.
Order string Order sort attribute ascending or descending.
Orderby string Sort collection by object attribute.
Status string Limit result set to orders assigned a specific status.
Customer integer Limit result set to orders assigned a specific customer.
Product integer Limit result set to orders assigned a specific product.

Subscription Data

↑ Back to top
Known Issues with Subscription Dates: The following subscription date fields have incorrect values and should not be used:
  • Date Created
  • Date Modified
  • Start Date
  • Trial End Date
  • Next Payment Date
  • End Date
The values for these fields do not take into account the timezone offset of the store. For example, if the store is in the UTC+2 timezone, the Date Modified field will be 2 hours earlier than it should be.
NAME TYPE DESCRIPTION
Id integer Unique identifier for the resource.
Parent Id integer Parent order ID.
Status string Order status.
Order Key string Order key.
Number string Order number.
Currency string Currency the order was created with, in ISO format.
Version string Version of WooCommerce which last updated the order.
Prices Include Tax boolean True the prices included tax during checkout.
Date Created date-time The date the order was created, as GMT.
Date Modified date-time The date the order was last modified, as GMT.
Customer Id integer User ID who owns the order. 0 for guests.
Discount Total string Total discount amount for the order.
Discount Tax string Total discount tax amount for the order.
Shipping Total string Total shipping amount for the order.
Shipping Tax string Total shipping tax amount for the order.
Cart Tax string Sum of line item taxes only.
Total string Grand total.
Total Tax string Sum of all taxes.
Billing object Billing address.
Billing —> First Name string First name.
Billing —> Last Name string Last name.
Billing —> Company string Company name.
Billing —> Address 1 string Address line 1.
Billing —> Address 2 string Address line 2.
Billing —> City string City name.
Billing —> State string ISO code or name of the state, province or district.
Billing —> Postcode string Postal code.
Billing —> Country string Country code in ISO 3166-1 alpha-2 format.
Billing —> Email string Email address.
Billing —> Phone string Phone number.
Shipping object Shipping address.
Shipping —> First Name string First name.
Shipping —> Last Name string Last name.
Shipping —> Company string Company name.
Shipping —> Address 1 string Address line 1.
Shipping —> Address 2 string Address line 2.
Shipping —> City string City name.
Shipping —> State string ISO code or name of the state, province or district.
Shipping —> Postcode string Postal code.
Shipping —> Country string Country code in ISO 3166-1 alpha-2 format.
Payment Method string Payment method ID.
Payment Method Title string Payment method title.
Transaction Id string Unique transaction ID.
Customer Ip Address string Customer’s IP address.
Customer User Agent string User agent of the customer.
Created via string Shows where the order was created.
Customer Note string Note left by customer during checkout.
Date Completed date-time The date the order was completed, in the site’s timezone.
Date Paid date-time The date the order was paid, in the site’s timezone.
Cart Hash string MD5 hash of cart items to ensure orders are not modified.
Line Items array Line items data.
Line Items —> Id integer Item ID.
Line Items —> Name any Product name.
Line Items —> Sku string Product SKU.
Line Items —> Product Id any Product ID.
Line Items —> Variation Id integer Variation ID, if applicable.
Line Items —> Quantity integer Quantity ordered.
Line Items —> Tax Class string Tax class of product.
Line Items —> Price string Product price.
Line Items —> Subtotal string Line subtotal (before discounts).
Line Items —> Subtotal Tax string Line subtotal tax (before discounts).
Line Items —> Total string Line total (after discounts).
Line Items —> Total Tax string Line total tax (after discounts).
Line Items —> Taxes array Line taxes.
Line Items —> Meta array Line item meta data.
Tax Lines array Tax lines data.
Tax Lines —> Id integer Item ID.
Tax Lines —> Rate Code string Tax rate code.
Tax Lines —> Rate Id string Tax rate ID.
Tax Lines —> Label string Tax rate label.
Tax Lines —> Compound boolean Show if is a compound tax rate.
Tax Lines —> Tax Total string Tax total (not including shipping taxes).
Tax Lines —> Shipping Tax Total string Shipping tax total.
Shipping Lines array Shipping lines data.
Shipping Lines —> Id integer Item ID.
Shipping Lines —> Method Title any Shipping method name.
Shipping Lines —> Method Id any Shipping method ID.
Shipping Lines —> Total string Line total (after discounts).
Shipping Lines —> Total Tax string Line total tax (after discounts).
Shipping Lines —> Taxes array Line taxes.
Fee Lines array Fee lines data.
Fee Lines —> Id integer Item ID.
Fee Lines —> Name any Fee name.
Fee Lines —> Tax Class string Tax class of fee.
Fee Lines —> Tax Status string Tax status of fee.
Fee Lines —> Total string Line total (after discounts).
Fee Lines —> Total Tax string Line total tax (after discounts).
Fee Lines —> Taxes array Line taxes.
Coupon Lines array Coupons line data.
Coupon Lines —> Id integer Item ID.
Coupon Lines —> Code any Coupon code.
Coupon Lines —> Discount string Discount total.
Coupon Lines —> Discount Tax string Discount total tax.
Refunds array List of refunds.
Refunds —> Id integer Refund ID.
Refunds —> Reason string Refund reason.
Refunds —> Total string Refund total.
Billing Interval integer The number of billing periods between subscription renewals.
Billing Period string Billing period for the subscription.
Start Date date-time The subscription’s start date.
Trial End Date date-time The subscription’s trial date
Next Payment Date date-time The subscription’s next payment date.
End Date date-time The subscription’s end date.
Resubscribed from string The subscription’s original subscription ID if this is a resubscribed subscription.
Resubscribed Subscription string The subscription’s resubscribed subscription ID.
Removed Line Items array Removed line items data. _Note: Always empty._
Removed Line Items —> Id integer Item ID. _Note: Always empty._
Removed Line Items —> Name any Product name. _Note: Always empty._
Removed Line Items —> Sku string Product SKU. _Note: Always empty._
Removed Line Items —> Product Id any Product ID. _Note: Always empty._
Removed Line Items —> Variation Id integer Variation ID, if applicable. _Note: Always empty._
Removed Line Items —> Quantity integer Quantity ordered. _Note: Always empty._
Removed Line Items —> Tax Class string Tax class of product. _Note: Always empty._
Removed Line Items —> Price string Product price. _Note: Always empty._
Removed Line Items —> Subtotal string Line subtotal (before discounts). _Note: Always empty._
Removed Line Items —> Subtotal Tax string Line subtotal tax (before discounts). _Note: Always empty._
Removed Line Items —> Total string Line total (after discounts). _Note: Always empty._
Removed Line Items —> Total Tax string Line total tax (after discounts). _Note: Always empty._
Removed Line Items —> Taxes array Line taxes. _Note: Always empty._
Removed Line Items —> Meta array Removed line item meta data. _Note: Always empty._
Data Fields May Differ in Your WooCommerce Store: WooCommerce Zapier utilises WooCommerce’s REST API. Data field names, descriptions, and values can vary from one WooCommerce store to another. Your store’s data, fields, and trigger rules may differ from this documentation due to any of the following:
  • WordPress versions and the locale/language used.
  • Your WooCommerce versions and the features enabled.
  • Your active WordPress plugins and WooCommerce extensions.
  • Any custom code that overrides or changes how the WooCommerce/WordPress REST API operates.
Note: The field definitions are generated using the following settings:
  • WordPress v6.4 with the en_US locale.
  • WooCommerce v8.5 with tax and coupon functionality enabled.
  • The WooCommerce Bookings, WooCommerce Memberships, and Woo Subscriptions plugins were active.

Subscription Note

↑ Back to top

Subscription Note

Subscription Notes are the notes attached to individual subscriptions. They behave in the same way as Order Notes. They are used to keep track of internal notes, such as subscription status changes, fulfilment notes, or customer notes such as notes about a customer’s preferences, or subscription history. When viewing an existing subscription in WooCommerce, you can see the subscription notes in the Subscription notes section on the right of the screen.
Only available if the Woo Subscriptions plugin is installed.: You may choose Subscription in the Zapier.com interface without installing the Woo Subscriptions plugin, however, the functionality will not work without Woo Subscriptions, which is sold separately by WooCommerce. The minimum required Woo Subscriptions version is 4.2.0. WooCommerce Zapier Plugin Version 2.9 Required: Please ensure you update the WooCommerce Zapier plugin to version 2.9.0 to manage Subscription Notes.

Trigger Rules

↑ Back to top
A Trigger Rule defines an event (or multiple events) that will cause WooCommerce data to be sent to a Zapier Zap. The following trigger rules are available to trigger your Zaps when subscription note data in your WooCommerce store is added or deleted.

Subscription Note created

Triggers when a subscription note is added to a subscription.
Note: The Subscription Note created trigger rule will trigger for all subscription notes that are added (both customer notes and private notes).

Subscription Note deleted

Triggers when a subscription note is deleted.
Only the ID field is available: Due to limitations in how WooCommerce handles deleted events, only the ID of the deleted resource is sent to Zapier when using this trigger rule. No other data fields are available.

Actions and Searches

↑ Back to top
Heads Up: WooCommerce does not allow updating a subscription note.
An action is an event a Zap performs after it is triggered. Actions allow you to create new WooCommerce data from a Zap. Searches let you find existing WooCommerce data in a Zap, and then use it later in a subsequent step.

Create Subscription Note

Creates a new subscription note in WooCommerce, attached to an existing Subscription.
Tip: When creating a subscription note, if the Customer Note field is set to True, then the note will be emailed to the customer. If Customer Note is set to False, then the note will be private and only visible to store administrators.
Create Input Fields
NAME TYPE DESCRIPTION
Subscription Id integer The Subscription ID to add the note to. _Required_
Note string Order note content. _Required_
Customer Note boolean If true, the note will be shown to customers and they will be notified. If false, the note will be for admin reference only.
Added by User boolean If true, this note will be attributed to the current user. If false, the note will be attributed to the system.

Find Subscription Note

Searches for an existing subscription note in WooCommerce. Optionally create one if none are found.
Tip: Search Sort Order: Searches return the first result found, and make it available in your Zap’s subsequent action step. Each search has a default sort order, so when defining your Search step, you can use the Order and Orderby fields to choose (for example) whether the most recent result or the oldest result is returned from your search.
Search Input Fields
NAME TYPE DESCRIPTION
Subscription Note Id string Limit search by ID.
Subscription Id integer Limit results to those matching this Subscription ID.
Type string Limit result to customers or internal notes.
Search string Limit results to those matching a string.
Order string Order sort attribute ascending or descending.
Orderby string Sort collection by object attribute.

Subscription Note Data

↑ Back to top
NAME TYPE DESCRIPTION
Id integer Unique identifier for the resource.
Subscription Id integer Subscription ID
Author string Order note author.
Date Created date-time The date the order note was created, in the site’s timezone.
Note string Order note content.
Customer Note boolean If true, the note will be shown to customers and they will be notified. If false, the note will be for admin reference only.
Data Fields May Differ in Your WooCommerce Store: WooCommerce Zapier utilises WooCommerce’s REST API. Data field names, descriptions, and values can vary from one WooCommerce store to another. Your store’s data, fields, and trigger rules may differ from this documentation due to any of the following:
  • WordPress versions and the locale/language used.
  • Your WooCommerce versions and the features enabled.
  • Your active WordPress plugins and WooCommerce extensions.
  • Any custom code that overrides or changes how the WooCommerce/WordPress REST API operates.
Note: The field definitions are generated using the following settings:
  • WordPress v6.4 with the en_US locale.
  • WooCommerce v8.5 with tax and coupon functionality enabled.
  • The WooCommerce Bookings, WooCommerce Memberships, and Woo Subscriptions plugins were active.

Plugin Interface

↑ Back to top
The WooCommerce Zapier user interface is completely redesigned in version 2. If you are upgrading from version 1, please go to the Plugin Interface Changes chapter to see what’s changed and the Migrating Legacy Feeds chapter for instructions on how to migrate your existing Feeds and Zaps to the new method. The information below describes the screens and interfaces that you see in your WooCommerce/WordPress dashboard.

Task History

You can find the Task history in your WordPress Dashboard —> Side Menu —> WooCommerce —> Zapier screen —> Task History tab. This is the main place to see every incoming and outgoing task/request for WooCommerce Zapier. This includes any time that your WooCommerce store’s data is sent to one of your Zapier Zaps or any time that Zapier creates or updates data in your WooCommerce store via one of your Zaps. Task History The Task History screen also supports filtering by status and/or searching task history records. You can filter by status (Successful or Errored), or search Task Messages and Error Codes.
WooCommerce Zapier Plugin Version 2.10 Required: Please ensure you update the WooCommerce Zapier plugin to version 2.10.0 to use this functionality. Task Errors: If you see any tasks with an Error status, please consult the Error Codes chapter for further guidance. Task History Error

Resource History

Every supported Resource screen (except for Customer) has a WooCommerce Zapier History metabox, located at the bottom of the screen when viewing/editing the Resource. For example, when you are editing an item, you can see the Task History for that particular item. Resource History You can disable (hide) this metabox by clicking the Screen Options button on the top right corner and deselecting the WooCommerce Zapier History under the Boxes section and then applying (saving) the screen options.
Note: There is no dedicated “Customer” screen in WooCommerce. WooCommerce stores customers in the WordPress User screen.

Legacy Feeds

Available only if you have upgraded to version 2 from the previous 1.x version
Location: WordPress Dashboard —> Side Menu —> WooCommerce —> Zapier screen —> Legacy Feeds tab. If you have upgraded from the 1.x version, and you haven’t yet migrated your Zaps, you can see all existing Legacy Zapier Feeds. There is no option in version 2 to create a new Zapier Feed, but you can still edit and/or delete your existing one if you need to. Legacy Feed
Legacy Feeds and Zaps must be migrated by 30 April 2022: All Legacy Feeds and Zaps must be migrated to the new WooCommerce Zapier app before 30 April 2022 (2 years after version 2 was released). Any Zaps using the WooCommerce (Legacy) app after this date are no longer supported.
Please refer to the Migration Guide for details on how to migrate these legacy Zaps.
Note: When you delete your last Legacy Feed and empty the trash, the Legacy Feeds tab will disappear from WooCommerce and will no longer be accessible.

Status Screen

You can keep track of the overall status of the Zapier integration by going to the WordPress Dashboard —> Side Menu —> WooCommerce —> Status screen and then scrolling to the WooCommerce Zapier section towards the bottom of the screen. You can see a detailed explanation of each row if you hover over the question mark with your pointer. Status Screen This information is also used by WooCommerce Zapier Support when you contact us.
Troubleshooting: This is the perfect place to start investigating if you encounter any errors in the plugin. For further reference, please see the Troubleshooting Tips chapter.

Logs

↑ Back to top
To see the Zapier integration logs, go to your WordPress Dashboard —> Side Menu —> WooCommerce —> Status screen —> Logs tab and select the newest log whose name starts with woocommerce-zapier. To view the log, you need to press the View button. This plugin uses WooCommerce’s facilities for logging. For more information on that, please see the Understanding the WooCommerce System Status Report documentation. The WooCommerce Extension, by default, only logs significant errors that occurred within the plugin. You can enable detailed logging in the Settings Screen.
Note: The log file may be not exist if the plugin recently installed, or there are no recent errors/logs.

Plugin Settings

↑ Back to top
Location: WordPress Dashboard —> Side Menu —> WooCommerce —> Settings screen —> Zapier tab. Currently, the only setting available for the WooCommerce Zapier plugin is to enable or disable the detailed logging. If you are experiencing a problem with your integration (or technical support asks you to), you can turn on detailed logging with the Enable Detailed Logging checkbox. See the Logs chapter on how to access and view the Zapier Integration logs.

Application Passwords

↑ Back to top
To create a WooCommerce Zapier-specific password, go to the WordPress Dashboard —> Side Menu —> Users —> Profile screen. Scroll to the Application Passwords section, which is halfway down the screen. It looks like this: WordPress Application Password Settings Enter a name into the New Application Password Name input (for example WooCommerce Zapier) and press the Add New Application Password button. WordPress generates a randomly chosen application password. Make sure that you save it in a safe location, as WordPress will not display it again. Once you have created one, the screen should look like this: WordPress Application Password Settings With an Application Password Created You can generate a new one or delete it later independently from your usual WordPress user account password. You will use this new Application Password when Authenticating WooCommerce Zapier.
Can’t see the Application Passwords settings in WordPress?:
  • Ensure you are using WordPress version 5.6 or later.
  • If you are using any other security plugins, review their settings to ensure they haven’t disabled the Application Passwords feature.
  • If you are using the Wordfence Security plugin, ensure application passwords aren’t disabled.
  • If you are still unable to create an Application Password, you can use your regular WordPress password.
Changing or Deleting Passwords: If you delete an application password that you are actively using, your Zapier Integration will stop working. You will need to provide a valid, active password in Zapier.com, either an Application Password or a WordPress account password.

Other WooCommerce Screens

↑ Back to top
The following lists consist of various WooCommerce screens, which expose different parts of the inner workings of the WooCommerce Zapier plugin to the admin interface. The WooCommerce Zapier extension depends on multiple WooCommerce core functionality, including REST API and Action Scheduler. WooCommerce allows site administrators to inspect and/or modify these, however, in normal use, there should be no need for you to do so because it is managed automatically for you.
Attention: The following information is for reference only. Please be aware, that modifying the WooCommerce Extension behaviour manually is unsupported, and may break the Zapier Integration functionality.
REST API
WordPress Dashboard —> Side Menu —> WooCommerce —> Settings screen —> Advanced tab —> REST API
Lists the REST API Keys that allow other applications to authenticate with WooCommerce. You can find the Zapier integration authentication keys here, along with the other manually or automatically generated ones.
WooCommerce Zapier keys always start with Zapier - API Read/Write text, followed by the creation date. Upon removing a connection in Zapier’s My Apps page, the REST API keys are automatically removed (revoked) from this list as well.
The number of used WooCommerce Zapier REST API authentication keys is also displayed on the Status Screen.
Note:
The creation dates on the REST API keys screen and the My Apps page may be different. For example, the plugin automatically monitors and revokes duplicated keys for a user if the key is not used for 30 days.
Webhooks
WordPress Dashboard —> Side Menu —> WooCommerce —> Settings screen —> Advanced tab —> Webhooks
For each outgoing connection (Trigger), the plugin creates a webhook in WooCommerce.
These webhooks have the name of WooCommerce Zapier. Webhooks are created automatically when you turn “ON” a Zap, and they are deleted when you turn “OFF” a Zap in the Zapier.com interface.
In normal usage, you should have one active WooCommerce Zapier webhook for each active Zap that has WooCommerce as a trigger.
Danger:
Removing an active webhook stops sending data to Zapier.<br>
Please see the [Webhook Missing or Disabled](#webhook-missing-or-disabled) chapter in troubleshooting how to fix it.

info
When a Zap is disabled, either because of a problem occurring or manually, the corresponding WooCommerce webhook will be removed. Upon turning the Zap "ON" again, the corresponding webhook will be created again.
Action Scheduler
WordPress Dashboard —> Side Menu —> WooCommerce —> Status screen —> Scheduled Actions tab
There are two different types of scheduled actions in the WooCommerce Zapier plugin: sending data via webhooks and utility tasks.
  • The webhook-related tasks have a Hook name of woocommerce_deliver_webhook_async and the argument has a related webhook_id. If you notice Pending woocommerce_deliver_webhook_async tasks, this means that data is queued to be sent to Zapier, but hasn’t been sent yet. You can safely click the Run link on each of these to force the data to be sent immediately.
  • Utility tasks are the wc_zapier_history_cleanup and the wc_zapier_key_cleanup. Both should be in the Pending section all the time, and these should be left as-is. In the Complete section, you can see the previously completed actions.

Frequently Asked Questions (FAQs)

↑ Back to top

Why Are My Zaps Are Not Being Sent?

↑ Back to top
See the explanation and solution in the No Data is Being Sent to Zapier chapter.

Can I Add Multiple WooCommerce Installations to My Zapier Account?

↑ Back to top
Yes, you can.
Info: You need to install the WooCommerce Zapier plugin on each of the WooCommerce sites, which typically means purchasing multiple subscriptions for the Zapier Integration so each site can be eligible for updates and support. Each of those sites can be connected to the same Zapier account if you wish.

Do I Need the WooCommerce Legacy API?

↑ Back to top
WooCommerce Zapier does not use WooCommerce’s Legacy REST API, which has been disabled by default for new WooCommerce installations since WooCommerce version 3.4.
Info: WooCommerce announced in October 2023 that the Legacy REST API will be removed starting with version 9.0. Because we have never used that API, we fully expect our plugin to be compatible with version 9.0.

Can I authenticate with Application Passwords?

↑ Back to top
Yes! The Zapier Integration does not distinguish between normal WordPress user passwords and WordPress Application Passwords. We strongly recommend using a WordPress Application Password, if you are using WordPress 5.6 or later, as this maximises compatibility with security plugins and services. Alternatively. you can use the Application Passwords plugin with older WordPress versions, but third-party compatibility is not guaranteed. See the Plugin Interface chapter for details on how to set up an application-specific password.

Can I Use WordPress Multisite?

↑ Back to top
Yes, WordPress multisite is supported! To connect WooCommerce Zapier to an individual site in a WordPress multisite network, you need to authenticate using a Super Admin user account. You need a separate authentication for each site in your network.
Why is a Super Admin account necessary?: In WordPress Multisite, regular administrators of an individual site can’t edit users (and therefore customers) on the site. You can use the Application Passwords feature to create a unique password for each site in your multisite network.
An individual WooCommerce Zap can’t be used by multiple individual sites in a multisite network. Instead, you will need separate Zaps for each site. To streamline this process, you can duplicate a Zap once you have created it for the first site. When duplicating, you only need to switch the WooCommerce authentication/account to the other site. We also suggest setting up a Server Cron Job for each sub-site on your network that uses WooCommerce Zapier.
Tip: You can read about creating and managing a multisite network on WordPress.org in the Create A Network article.

Can I Use a Separate Zap for Each Product in an Order?

↑ Back to top
Yes! Please see here for details.

Can I Use Variable Products and/or Variations?

↑ Back to top
Yes, variable products and individual variations are fully supported. Please see the Product Actions and Variable Products sections for full details.
WooCommerce Zapier Plugin Version 2.6 Required: Please ensure you update the WooCommerce Zapier plugin to version 2.6.0 to use this functionality.

What About Order Line Items?

↑ Back to top
The WooCommerce Zapier plugin includes line item support since version 1.9.0. This includes having full support for handling arrays (lists) of data (such as multiple order line items). Multiple line items can be used in supported action. For example, you can create an itemised invoice in Quickbooks or Xero with multiple (separate) line items, provided that both Apps support line items. Alternatively, you can use the Line Item in an Order trigger. The same is true for all the other “array” type fields. For example in an order the downloadable_files and the notes fields.
Warning: Zapier can support line items for specific apps but does not do so by default, so you’ll want to check to see if the action you want to pair with WooCommerce Zapier has line item support. Most often line item support relates to invoicing and financial apps, but some other apps do have support as well. Please be careful while setting up the Line Item in an Order trigger. Tasks can be stopped and Zap can be disabled if the order doesn’t have a line item. This typically does not happen on a production site but can be common during development.

I Changed My Website’s URL or Domain Name, What Do I Need to Do?

↑ Back to top
After changing the URL of your website, please go to Zapier’s My Apps screen, and locate your existing WooCommerce authentication. Click the Reconnect button and re-authenticate with your WooCommerce store’s new URL. This tells Zapier to communicate with your new URL rather than the old URL. After doing so, we recommend then going to Zapier’s My Zaps screen and editing and reviewing each WooCommerce Zap and testing them to confirm that they are still working as expected.
What Happens if I Did Not Change My Zapier Authentication?: Change site Domain:
  • The site continuously sends data to Zapier.
  • When you edit a Zap, Zapier runs to an error (because of the old missing URL), and your site stops sending data.
  • Your site could not receive any data, and all of your actions will fail.
Copy the site to a new URL:
  • Both the old and the new site send data to Zapier.
  • Only your old site receives data.
  • When you edit a Zap, Zapier notifies the old site about the change, but your new site stops sending data.

Can I Access Subscription Meta Data?

↑ Back to top
The Subscription resource3 doesn’t natively support accessing a subscription’s meta data. However, there is a workaround. In your Zap, find the associated order for the subscription, as this order is typically for the initial payment, which often contains the required metadata. For example:
  • Step 1. WooCommerce app —> Subscription Resource, and Subscription created Trigger Rule.
  • Step 2. WooCommerce app —> Find Order action, where the “Order ID” equals the value from the parent_id field from the newly created Subscription in Step 1. This finds the original order for the subscription that was just created.
Your subsequent Zap step(s) can then use the data from the Order step (Step 2), rather than the Subscription step (Step 1).

Can I Receive Booking Data?

↑ Back to top
Yes, the Booking resource1 supports sending booking data from your store to Zapier. See options in Trigger Rules. It does not support creating or updating Bookings via Zaps, because WooCommerce Bookings itself does not natively support creating or updating Bookings via their REST API endpoints. If you would like us to add Booking actions as a feature, please see the Can This Extension Do [feature]? section for how to request it.

Can I Access Membership Data?

↑ Back to top
Yes, the Membership Plan and the User Membership resources2 support sending membership data from your store to Zapier. It supports creating or updating User Memberships via Zaps, but not for Membership Plans, as WooCommerce Memberships does not natively support creating or updating Membership Plans via their REST API endpoints.

Can This Extension Do [feature]?

↑ Back to top
New features are added to this extension based on customer demand. We recommend searching for your idea on the WooCommerce Zapier Feature Requests board.
  • If your idea has already been suggested, please add your vote for it.
  • If your idea hasn’t already been suggested, post your idea on the Ideas Forum so that others can vote on your idea.
We review WooCommerce Zapier Ideas Forum suggestions regularly and use the votes to understand how many customers are interested in the ideas posted. We then take this into account when planning future releases of WooCommerce Zapier.

How Can I Change the Format of the Order Date Field?

↑ Back to top
By default, the Order Date field is supplied in a universal timestamp format (ISO 8601 as per Zapier’s specification). If required, the date/time format can be changed in your Zap by adding a Formatter action to your Zap. For further reference, see the Formatter chapter. Example Date Formatter

Can I Send Previous (Historical) Data to Zapier?

↑ Back to top
After you install and configure WooCommerce Zapier, your Zap(s) you can transfer your data missed through an existing Zap.

What Data is Sent to or Received from Zapier?

↑ Back to top
Please see the Resources page for full details and Data Field Definitions.

Is My Data Secure?

↑ Back to top
WooCommerce Zapier always sends and receives your WooCommerce over an HTTPS encrypted connection, which allows a secure connection between your WooCommerce installation and the Zapier.com service. Your WooCommerce store requires an SSL certificate for this secure connection to operate. Please see System Requirements for more details. We also recommend familiarizing yourself with Zapier Legal. Please see the GDPR Compliance chapter for more information on data privacy.

What Data Do You Store?

↑ Back to top
We, the developers of WooCommerce Zapier do not access, transfer or store any of your customer data whatsoever. The WooCommerce Extension stores information on all the incoming or outgoing connections. Everything else is transferred as soon as possible from/to Zapier. The data is temporarily stored in memory and/or in a WordPress temporary table. Please see the GDPR Compliance chapter for more information on data privacy.

What Data Do You Collect?

↑ Back to top
We, the developer of the Zapier Integration (OM4) do not transfer or store any of your customer data whatsoever. In the event of a support request, we request the WooCommerce status information and may request access to your WooCommerce store and Zapier account. The WooCommerce Extension is designed to collect and send (or receive) supported Resources data to (or from) the Zapier service. You can see all the data in the Field Definitions tables. Please see the GDPR Compliance chapter for more information on data privacy.

What Data Do You Share?

↑ Back to top
The WooCommerce Zapier Extension communicates directly between your WooCommerce store and Zapier. For reference, here are the Zapier Privacy Policy and Automattic (WooCommerce) Privacy Policy pages. Please see the GDPR Compliance chapter for more information on data privacy.

Troubleshooting

↑ Back to top

Troubleshooting Tips

↑ Back to top
Always use the latest plugin version: Please ensure that you have updated to the latest version of the WooCommerce Zapier plugin.

Initial Setup

If you have issues during the initial set up of a Zap in Zapier, please refer to the Authentication Errors chapter below, or Zapier’s Troubleshooting documentation.

Once You’re Up and Running

Once your initial setup and configuration are completed and your WooCommerce Zapier integration(s) are running, most of the time if a problem occurs, it will be shown in your Zapier.com Task History screen. If you experience stopped or halted tasks, please view the task details to decide what to do next. For further information, see the Task History chapter. If it is an error, you can usually find the related information in your WordPress Dashboard’s Task History screen. From there you can navigate to the actual Resource and inspect its WooCommerce Zapier History box, or you can review the Logs in your WordPress dashboard.

Issues with Zaps

If you are having other problems with a Zap that you have created, we recommend contacting Zapier Support. They are usually the best people to help you with any issues that you have within the Zapier dashboard, Zap configuration and/or behaviour.

General WooCommerce Issues

If you encounter errors or issues in WooCommerce, first visit the WooCommerce Status Screen to identify and troubleshoot errors, or look at the Logs. If you need further support, please don’t hesitate to Contact Us and send a support request.

Enabling Detailed Logging

To help troubleshoot and identify the exact cause of an issue, our support team may ask you to do the following:
  1. Please go to your WordPress Dashboard —> Side Menu —> WooCommerce —> Settings screen —> Zapier tab, and then tick the Enable Detailed Logging checkbox and Save changes.
This allows our support team to see detailed information about your store, and will usually help us resolve an issue.

Install or Update Issues

If you are having problems installing or updating the WooCommerce Zapier plugin to the latest version:
  1. Go to your WordPress Dashboard —> Side Menu —> WooCommerce —> Extensions —> My Subscriptions screen and verify that your woocommerce.com account is connected and WooCommerce Zapier license is active.
  2. On your WordPress Dashboard —> Side Menu —> WooCommerce —> Extensions —> My Subscriptions screen, click the Update button to force a refresh of your account data from Woo.
  3. Go to your WordPress Dashboard —> Side Menu —> Updates screen, and click the Check Again button to force WordPress to check for updates again.
  4. The WooCommerce Zapier plugin update should now show on the Updates screen. Select it and click Update Plugins to install the update.
  5. If you still encounter problems, disconnect and reconnect your Woo account connection. To do this, go back to your WordPress Dashboard —> Side Menu —> WooCommerce —> Extensions —> My Subscriptions screen, and hover over the Connected to woocommerce.com option and click Disconnect. Click Connect and follow the prompts, then retry steps 2-4 above.
  6. If you still encounter problems, please submit a ticket here and choose the Manage my WooCommerce.com account option so that the Woo support team can assist.

Authentication Issues

↑ Back to top
Below are some common errors and issues that can occur when you are Authenticating via the Zapier.com Zap Editor interface.

Authentication Dialogue

When you create your first WooCommerce Zap, you will be asked to choose your WooCommerce account. The authentication process involves the Zapier.com service connecting to your WooCommerce store using your WordPress administrator username and password. Please ensure you complete the authentication dialogue window correctly:
  • In the WordPress Site Address (URL) field, enter the URL to your WordPress website’s home (front) page. Be sure the URL starts with https:// and does not include the trailing slash. For example: https://example.com If in doubt, go to the WordPress Dashboard —> Side Menu —> Settings —> General screen and copy the Site Address (URL) field value and paste it into the WordPress Site Address (URL) field in the authentication dialogue window.
  • In the WordPress Username field, enter your administrator username or email address that you use when logging into the WordPress dashboard.
  • In the WordPress Application Password field, create an Application Password for your WordPress administrator account, and enter it here.
    Use a WordPress Application Password:
    Using an application password (rather than your regular password) improves compatibility with security-related plugins and services. See details in the [Security Plugins](#security-plugins) chapter.
    
    To set up an Application Password, go to **WordPress Dashboard** --> **Side Menu** --> **Users** --> **Profile** screen and press the "Add New Application Password" button. Please [see here for details](#application-passwords).
    
    Can't see the Application Passwords settings in WordPress? Please [see here for suggestions](#application-passwords).
    
    rnatively, if you are unable to create an Application Password, you can use your regular WordPress password.
    
    Example Authentication dialog
Click the Yes, Continue button to complete the process.

Authentication Errors

If you encounter an error whilst authenticating, please make a note of the red error message that you see in the Zapier Authentication popup window, and click on the error message below for the next steps.
WooCommerce returned “The username and/or password you supplied is incorrect.”. Error code: “woocommerce_rest_cannot_authorize” on https://example.com.: WooCommerce returned “This user does not have the correct permissions.”. Error code: “woocommerce_rest_cannot_authorize” on https://example.com.:
  1. Your WordPress username and password was accepted when authenticating, however your user account does not have the necessary permissions. Specifically, you do not have permission to read WooCommerce webhooks. Valid for application-specific passwords as well for account passwords, as the Application Passwords feature does not change user permissions.
  2. Your website has a security solution or firewall that is blocking authentication attempts. For example, Cloudflare’s Web Application Firewall.
WooCommerce returned “Sorry, you cannot list resources.”. Error code: “woocommerce_rest_cannot_view” on https://example.com: WooCommerce accepted your username and password, however there is an issue authenticating with the WooCommerce REST API. “The WooCommerce Zapier plugin is missing or WordPress pretty permalinks may not be configured correctly. File Not Found” response received. HTTP status: “404” on https://example.com.: A HTTP 404 (File Not Found) error was encountered when authenticating.
  • Please ensure you complete the authentication dialogue window correctly.
  • Ensure the Site Address (URL) that you entered is correct. It must be the full canonical URL of your WordPress website’s home (front) page, excluding a trailing slash. It should not be the URL to your WooCommerce shop page. If in doubt, go to the WordPress Dashboard —> Side Menu —> Settings —> General screen and copy the Site Address (URL) field value and paste it into the Site Address (URL) field in the authentication dialogue window.
  • Make sure you have installed the WooCommerce Zapier plugin.
  • Ensure that you have the latest version installed.
  • Ensure you have your WordPress permalink settings other than the default (see the requirements the System Requirements chapter).
  • Go to your WordPress Dashboard —> Side Menu —> Settings —> Permalinks screen and click Save to flush your permalinks.
Authentication response starts with a BOM character.: At least one file in your WordPress website has a special byte-order mark (BOM) character in it. This causes every request to your website to contain a mostly invisible BOM character at the beginning of every response. This invalid character doesn’t usually cause an issue for web browsers, however, it does cause an issue for apps (such as WooCommerce Zapier) that use the WooCommerce REST API for communicating with your website. In our experience, the most likely cause is that the offending character is at the very beginning (or end) of your wp-config.php file. Or possibly it is at the very beginning and end of a plugin or theme file that you have installed. This BOM character article has some suggestions on which text editors you can use to help you find this character. It may also be necessary to temporarily switch to a default WordPress theme and deactivate all plugins (except WooCommerce and WooCommerce Zapier), and then reactivate them one-by-one to determine which one is causing the problem. These general WordPress/WooCommerce configuration issues need to be solved for WooCommerce Zapier (and other REST API based integrations) to work correctly. You can test your site with the W3C Internationalization Checker. Authentication response parse failed.: Your WooCommerce store did not respond with valid JSON when authenticating. Authentication response is missing required information.: Your WooCommerce store isn’t responding as with a valid authentication message. HTTPS (secure) connection required.:
  • Make sure you’re communicating to your WooCommerce store via HTTPS, and the URL you enter starts with https://.
  • If your WooCommerce store does not support HTTPS, please contact your website host or web developer.
Sorry, your connection isn’t secure. Please use TLS (HTTPS) to continue.: – Review the SSL Check Failing information to resolve this issue. “Moved Permanently” response received. HTTP status: “301” on https://example.com.: A HTTP redirect was encountered when authenticating. Other redirect error variations:
  • “Multiple Choices” response received. HTTP status: “300” on https://example.com
  • “Moved Permanently” response received. HTTP status: “301” on https://example.com
  • “Found” response received. HTTP status: “302” on https://example.com
  • “See Other” response received. HTTP status: “303” on https://example.com
  • “Not Modified” response received. HTTP status: “304” on https://example.com
  • “Use Proxy” response received. HTTP status: “305” on https://example.com
  • “Temporary Redirect” response received. HTTP status: “307” on https://example.com
  • “Permanent Redirect” response received. HTTP status: “308” on https://example.com
Solutions:
  • Ensure the Site Address (URL) that you entered is correct. It must be the full canonical URL of your WordPress website’s home (front) page, excluding a trailing slash.
  • Ensure that you don’t have any plugins or custom code that is enforcing a trailing slash on your website URLs.
  • Check for redirection plugins, including the redirects configured in the redirection plugin.
  • Check information about security plugins.
  • Try to disable any third-party plugins, particularly redirection plugins.
“Bad Request” response received. HTTP status: “400” on https://example.com.: “Not Acceptable” response received. HTTP status: “406” on https://example.com.: Your website is hosted with WordPress.com, or it is using Jetpack’s WordPress.com Secure Sign On (SSO) feature. Please follow these instructions to authenticate successfully. Request to /wc-zapier-auth/v1/authenticate failed, reason: read ECONNRESET: There is a network-level communication issue between the Zapier service and your website that is preventing the authentication request from succeeding. Specifically, the TCP connection between zapier.com and your website was unexpectedly closed. The underlying cause of this problem is typically outside of the control of WooCommerce Zapier, and we, unfortunately, aren’t able to resolve it for you.
  • Your web host or web server has some kind of firewall or security appliance that is preventing the authentication request from completing.
    • Contact your web hosting provider and point them to our authentication request documentation so that they can ensure their network and server(s) are not blocking WooCommerce Zapier authentication requests.
    • Migrate your website to another hosting provider, wait for the DNS changes to propagate, and then try authenticating again.
  • An HTTPS/SSL configuration issue exists. Review the SSL Check Failing information to potentially resolve this issue.
  • Please contact us if you are unable to resolve this issue.
If you continue to encounter an authentication or communication error, and you are sure your username and password are correct, then it is likely you have a security-related service or plugin on your website that is preventing Zapier from authenticating with your WooCommerce store. See the Compatibility Issues chapter for more details. If the above suggestions do not resolve your issue, please contact support for further assistance.

Using Detailed Logging to Determine the Reason for an Authentication Failure

If you still are unable to identify the cause of your authentication issues, please try the following:
  1. Ensure that you have the latest version of WooCommerce Zapier installed. You will need to be running version 2.0.2 or newer to complete the following steps.
  2. Enable detailed logging by going to your WordPress Dashboard —> Side Menu —> WooCommerce —> Settings screen —> Zapier tab, and then tick the Enable Detailed Logging checkbox and Save changes.
  3. Return the to Zap Editor on Zapier.com, and try and re-authenticate.
  4. The authentication attempt will likely fail again, however, this time a detailed reason why it failed will be recorded in your WooCommerce logs.
  5. Go to your WordPress Dashboard —> Side Menu —> WooCommerce —> Status screen —> Logs tab and select the newest log whose name starts with woocommerce-zapier. Press the View button.
  6. The log should contain an Authentication attempt failed or Authentication validation failed message, along with a detailed reason that should help you determine the problem.
If you solved the issue, that’s great! If you’re not able to solve the issue yourself, please contact support and be sure to include the red error message from step 3 and the logged error message from step 6.
Tip: Please be sure to disable detailed logging once you have successfully authenticated.

Compatibility Issues

↑ Back to top
Network-connected devices, configurations or other software can interfere and cause problems with the communication between your store and Zapier.com. Including but not limited are CDNs, Load Balancers, firewalls, or server software or specific configurations. If you’re using WordPress 5.6 or later, ensure you are utilising the Application Password feature for maximum compatibility. Please see the Security Plugins chapter for details on various third-party plugins.

Hosting Providers

Security settings in the following hosting providers are known to cause issues when authenticating.
WordPress.com Secure Sign On
If you are using Jetpack’s WordPress.com Secure Sign On feature, you will likely be logging in to your website’s dashboard using your WordPress.com email address and password. To successfully authenticate Zapier with your WooCommerce store, you need to use an Application Password:
  1. Log into WordPress.com.
  2. Switch to your site in the side menu.
  3. Go to the Side Menu —> Jetpack —> Dashboard, and click the Settings button in the top right corner.
  4. Inspect the status of the Allow users to log in to this site using WordPress.com accounts toggle.
  5. If the toggle is
    1. Off: you can navigate WordPress Dashboard —> Side Menu —> Users —> Profile page.
    2. On: you need to manually type https://<YOUR SITE NAME>/wp-admin/profile.php URL in your browser. Use your site URL, not wordpress.com to access your WordPress profile page.
  6. Note your Username, as you need to use this username when authenticating later.
  7. Create an Application Password as described here.
  8. Return to Zapier.com and authenticate again, but instead of using your wordpress.com credentials, you will use:
    • Your username from step 6 above.
    • Your password from step 7 above.
Congratulations, you have successfully authenticated your WooCommerce store with Zapier. You will continue to log into your WordPress Dashboard (wp-admin) using your WordPress.com email address and password, but whenever you authenticate your WooCommerce store with Zapier, you will use your application-specific password or WordPress username/password from the above steps.
Cloudflare Web Application Firewall (WAF)
If you are using Cloudflare’s Web Application Firewall feature, you will likely need to whitelist the WooCommerce Zapier REST API endpoints. Please see the WAF documentation and the WooCommerce Zapier developer documentation.

Security Plugins

See Plugin Compatibility for supported security plugin information. If you have a plugin installed that prevents the connection between Zapier.com and your site, please try temporarily disabling the security plugin(s), authenticating, and then re-enabling the security feature(s) once you have successfully authenticated.

Two-Factor Authentication

The WooCommerce Zapier Integration is generally compatible with most security plugins that enforce two-factor authentication (2FA), provided that you are using the WordPress Application Password feature. Please use an application-specific password if you encounter a problem. Alternatively, consult the security plugin’s documentation as they may have their own application-specific password feature, and use that when authenticating WooCommerce with Zapier. Please see the Security Plugins chapter for a list of known compatibility statuses.

Whitelisting

It isn’t usually feasible or practical to whitelist Zapier’s IP addresses, because they use Amazon AWS, which means the authentication attempts that come from IP addresses are regularly changing. However, you can set it for the plugin API Endpoints.

Incompatible Plugins

Please review the list of incompatible plugins in case one of those isn’t causing your authentication issues.

Issues with Tasks

↑ Back to top

Errored Tasks

Task errors can occur for a wide variety of reasons, but you can always see the exact reason when you open your task history and look at the error message. Here is an example of a task error: Example Errored Task The most common errors related to the WooCommerce Zapier plugin:
Error message(s) Possible Solution(s)
Management of Product Prices is not available. Please update the WooCommerce Zapier plugin to version 2.6 or later. If you want to use the new Update Product Price action, ensure you are running the latest WooCommerce Zapier plugin (version 2.6.0 or newer).
Management of Product Stock Quantities is not available. Please update the WooCommerce Zapier plugin to version 2.5 or later. If you want to use the new Update Product Stock Quantity action, ensure you are running the latest WooCommerce Zapier plugin (version 2.5.0 or newer).
Bookings are not enabled. Please update the WooCommerce Zapier plugin to version 2.2 or later and ensure the WooCommerce Bookings plugin is installed and configured correctly. If you want to use the Bookings Resource, install and activate the WooCommerce Bookings plugin and ensure you are running the latest WooCommerce Zapier plugin (version 2.2.0 or newer).
Memberships are not enabled. Please update the WooCommerce Zapier plugin to version 2.10 or later and ensure the WooCommerce Memberships plugin is installed and configured correctly. If you want to use the Membership Plan, or User Membership Resources, install and activate the WooCommerce Memberships plugin and ensure you are running the latest WooCommerce Zapier plugin (version 2.10.0 or newer).
Coupons are not enabled. Please make sure the feature or plugin is configured correctly on… Please enable Coupons in the WooCommerce Settings by following those instructions.
Subscriptions are not enabled. Please make sure the feature or plugin is configured correctly on… If you want to use the Subscription Resource, install and activate the Woo Subscriptions plugin.
Sorry, you cannot view this resource. Error code: woocommerce_rest_cannot_view on https://example.com… Your WooCommerce webhook is misconfigured. See here for suggestions.
Create Resource response parse failed. Update Resource response parse failed. Search Resource response parse failed. List Resource response parse failed. Your WooCommerce store’s WooCommerce REST API isn’t responding with valid JSON, so your task has been halted. Ensure your website is publicly accessible, including disabling any “Coming Soon” or “Maintenance Mode” plugins. Enable detailed logging and review the REST API logs to see what unexpected data is being returned. Check for incompatible plugins. Review the REST API Issues guide. Please contact support for further assistance. Once the issue has been resolved, replay your halted task(s).
Hook Resource response parse failed. Your WooCommerce store’s webhook mechanism is sending invalid JSON to Zapier, so your task has been errored.
  • [Ensure your website is publicly accessible](#coming-soon-or-maintenance-mode), including disabling any “Coming Soon” or “Maintenance Mode” plugins.
  • [Review the WooCommerce Webhook Delivery Logs](https://woocommerce.com/document/webhooks/#webhook-logs).
  • Review the [REST API Issues](#rest-api-issues) guide.
  • Please [contact support](https://docs.om4.io/woocommerce-zapier/support/) for further assistance.
                                                                                                                                                                                            |

Halted Tasks

Most of the time when a Zapier task is halted, this is the expected behaviour. For example, if you use a Filter by Zapier step] and the incoming data does not match what your filter criteria. Another common reason why a task is halted is that WooCommerce cannot perform the specific task on the Resource. Every halted task has a detailed reason that you can refer to on the task details page. For example for the latter, the task will be halted if you are trying to create a new coupon with a coupon code that already exists: Example Halted Task Example Reason in Halted Task Detail
Info: There are many possible reasons why a Zapier task can’t be completed. The WooCommerce Zapier plugin handles these cases for you to prevent introducing a problem in WooCommerce and always provides a detailed explanation on the task details page.

Resource Sent with Wrong Status

WooCommerce Zapier uses Action Scheduler, which is a WooCommerce core feature that needs to be working correctly for WooCommerce Zapier to send data to Zapier. This means that data is not sent immediately to Zapier. Instead, the data is queued to be sent asynchronously in the background. This helps ensure that your customers don’t experience a slow checkout process. It also allows the extension to send the data if there is an error communicating with Zapier. A typical delay is between ten seconds and one minute, but the delay can be much longer in a staging/testing/development environment or sites with extremely low traffic. If a Resource status changes during scheduling and sending to Zapier, WooCommerce will send the Resource with the new status information to Zapier. Furthermore, if you are using the Order status changed (any status) or the Subscription status changed (any status) trigger rules, in this case, Zapier will receive the same data multiple times.
Info: There is an automatic de-duplication implemented in the Zapier platform, to prevent fire multiple tasks. Please Contact Us if you are experiencing the above problem.

Data not Sending or Delayed

↑ Back to top
Common causes of data not sending to Zapier:

Webhook Issues

WooCommerce Zapier uses WooCommerce’s built-in webhook mechanism to send data to Zapier.
Webhook Missing or Disabled
If WooCommerce encounters an error when sending data to Zapier, it will automatically disable the webhook, which stops future data from being sent to that Zap. Please go to the WooCommerce Webhooks screen, and look for any disabled WooCommerce Zapier webhooks. If you find any, please edit each one and change them to active so the new data can be sent to Zapier. If a WooCommerce Zapier webhook is missing or has been accidentally deleted, please go to Zapier.com and turn your WooCommerce Zap(s) off and on again, which will recreate the webhook in WooCommerce.
Note: WooCommerce can disable a webhook if it continuously fails to deliver. If a webhook was unexpectedly disabled, please search the Webhook ID in the Failed Tasks in the Action Scheduler to determine the reason.
Webhook Payload Issues
WooCommerce’s webhooks are created automatically by WooCommerce Zapier, and they are tied to the WordPress user that created them. If that WordPress user account is deleted, the webhook(s) assigned to that user will stop working. Similarly, if the WordPress user is still present but their permissions have changed (for example, being changed from an Administrator to a Contributor), the webhook(s) will also stop working. Both of these cases will result in:
  • Zapier Tasks stopped with the following error message: Sorry, you cannot view this resource. Error code: woocommerce_rest_cannot_view on https://example.com.
  • An Unexpected WP_Error payload for Webhook error message being logged in the WooCommerce Zapier Logs.
Follow these steps to resolve the problem:
  1. Visit the Zapier website to view your WooCommerce app’s connections.
  2. Click on the 3 dots next to your connection(s), then click Reconnect.
  3. Follow the prompts to reauthenticate your WooCommerce account. See our Zapier Authentication documentation for more information on how to authenticate.
  4. Repeat the above steps for each WooCommerce connection that you have listed.
  5. Once you have re-authenticated, go to the WooCommerce Zaps screen and turn each of your WooCommerce Zap(s) off and on again. This will recreate each webhook in WooCommerce.
  6. (Optional) You can send any missing data retrospectively. The above error logs will list each Resource ID (such as an Order ID or Product ID) so you know which records to transfer.
If you have a different ERROR message logged or displaying in your Zapier Task History, please Contact Us for further assistance, and include a full copy of your WooCommerce Zapier Logs.

Action Scheduler

WooCommerce Zapier uses Action Scheduler, which is a WooCommerce core feature that needs to be working correctly for WooCommerce Zapier to send data to Zapier. This means that data is not sent immediately to Zapier. Instead, the data is queued to be sent asynchronously in the background. This helps ensure that your customers don’t experience a slow checkout process. It also allows the extension to send the data if there is an error communicating with Zapier. A typical delay is between ten seconds and one minute, but the delay can be much longer in a staging/testing/development environment or sites with extremely low traffic. The WooCommerce Action Scheduler facility uses WordPress’ built-in Cron for scheduling. This means it will only work correctly if your WordPress Cron is working correctly and subsequently WooCommerce Zapier’s ability to send data to Zapier. Action Scheduler has a dedicated website. Also, you can find further information in this article on how to troubleshoot the Action Scheduler queue or WordPress Cron execution issues.
Pending Tasks
On the Action Scheduler screen, you can check the Pending tasks by clicking on the Pending filter. Look for tasks with a hook name of woocommerce_deliver_webhook_async. If you have one or more, it means that queued trigger data hasn’t been sent yet. You can manually run Pending tasks from that screen, but if tasks remain pending, you will need to identify why the Action Scheduler queue isn’t automatically processing tasks. Usually, the origin of the problem is a malfunction in the WordPress Cron system. See the WordPress Cron chapter for more details. If the problem persists, go to your Logs screen and look for any errors in the recent logs, it may have information that helps identify the problem.
Failed Tasks
To check for Failed tasks, go to your Action Scheduler screen, then click on the Failed filter (if it doesn’t exist, you don’t have failed tasks). There you can search for your Resource by ID (such as an Order ID or Product ID) to confirm if the Resource was sent to Zapier or not in the first place. Unfortunately, there is no option to resend a failed task. Please see the Transferring Existing Data Using a Zap chapter if you want to send previously failed data. If the timeout is the reason, this often occurs when Action Scheduler has too many jobs, and the allowed time limit for PHP is not enough. (The default setting is 30 seconds.) To overcome this limitation, you need to modify the PHP max_execution_time settings in your hosting environment. If you can, please set it to at least 120 seconds. You can tweak the Action Scheduler behaviour further with the Action Scheduler High Volume plugin.
Important: The Action Scheduler High Volume plugin only works correctly if your max_execution_time PHP settings are at least 120 seconds.
If you have failed tasks or the Action Scheduler High Volume plugin can’t solve the issue, please Contact Us and copy the log column and include it when you send a support request.

WordPress Cron

If your data is being sent to Zapier erratically, or if your data is being sent slowly or in a delayed fashion, you may have a problem with the WordPress Cron system. If your WordPress installation’s cron system isn’t working correctly, WooCommerce Zapier will not work correctly either. The WP Crontrol plugin can help pinpoint cron issues. First, it tests the WordPress Cron spawner on your site and reports the error message if it fails. Also, you can check it manually by going to the WordPress Dashboard —> Side Menu —> Tools —> Cron Events screen and looking for the “Next Run” columns. If the dates are mostly in the past, especially multiple days or more, your WordPress Cron is not working as expected.
Tip: You can test yourself if the WordPress Cron can run by opening the site WP-Cron endpoint in your browser. For example, https://example.com/wp-cron.php. After that page is loaded, go back and reload the Cron Events screen. If the “Next Run” columns are not changed, your WordPress Installation has a deeper problem. Otherwise, you can use the Server Cron Job or Uptime Services solutions.

Alternate Cron

If your Zaps are receiving an error message such as rest_api_unavailable or The Rest API is unavailable. when WooCommerce data is sent to Zapier, you may affect this known issue with WooCommerce core itself, which causes the rest_api_unavailable error to occur when delivering data via webhooks. This affects WooCommerce Zapier and any other services that rely on WooCommerce’s webhooks facility. The problem only occurs when you use WordPress’ ALTERNATE_WP_CRON feature. Until WooCommerce core fixes the issue in WooCommerce itself, it is necessary to disable ALTERNATE_WP_CRON on your site. This WordPress article explains where this constant is defined. Therefore, removing that line from your wp-config.php file is necessary.

Server Cron Job

Do not configure a cron job for both Action Scheduler and WordPress Cron.: If your WordPress Cron is working correctly, you only need to configure the cron job for Action Scheduler. Otherwise, we recommend configuring for WordPress Cron itself.
This is the recommended approach for reliable and timely delivery of your WooCommerce data to Zapier. If your server has WP-CLI installed, we suggest setting up a cron job that processes the Action Scheduler/WordPress Cron queue, for example:

Action Scheduler

↑ Back to top
cd /path/to/wordpress/ && wp action-scheduler run

WordPress Cron

↑ Back to top
cd /path/to/wordpress/ && wp cron event run --due-now

Without WP-CLI

↑ Back to top
cd /path/to/wordpress/ && php wp-cron.php?doing_wp_cron
(where /path/to/WordPress/ is the path to your WordPress installation). If your cron configuration is working as expected, you can disable WordPress’ default WP-Cron behaviour by adding the following line to the wp-config.php file:
define('DISABLE_WP_CRON', true);
Your web host can usually assist with setting up this cron job. If you are interested, see here for more details on Action Scheduler WP-CLI commands. See here for the WP-CLI cron command.
Using WordPress Multisite: The above server cron job will execute for your multisite network’s main (primary) site. To use WooCommerce Zapier on multiple sites within a multisite network, you will need a separate server cron job for each site (with a different --url= parameter for each). For example:

Action Scheduler

↑ Back to top
cd /path/to/wordpress/ && wp --url=example.com/au action-scheduler run
cd /path/to/wordpress/ && wp --url=example.com/uk action-scheduler run
cd /path/to/wordpress/ && wp --url=example.com/us action-scheduler run

WordPress Cron

↑ Back to top
cd /path/to/wordpress/ && wp --url=example.com/au cron event run --due-now
cd /path/to/wordpress/ && wp --url=example.com/uk cron event run --due-now
cd /path/to/wordpress/ && wp --url=example.com/us cron event run --due-now
(where example.com is the URL of the individual site running WooCommerce Zapier, minus the https:// prefix). If you aren’t sure which values to use for the --url= parameters, please run a wp site list command on your server and use the URL column to determine the URL for each site. Test Your Cron Job: We suggest logging into your server via SSH and running them manually to confirm that you have the correct command(s) for your cron job(s). A working command should output something such as:

Action Scheduler

↑ Back to top
Success: 2 scheduled tasks completed.

WordPress Cron

↑ Back to top
Success: Executed a total of 2 cron events.
If you receive another response such as a `command not found, we suggest contacting your web host to confirm that WP-CLI is installed on your server.

Uptime Services

A less technical solution is to create a free Pingdom or UptimeRobot account and point it to your site’s WP-Cron endpoint. For example, https://example.com/wp-cron.php?doing_wp_cron. This should make WordPress Cron fire regularly (from every 30 seconds using Pingdom to every 5 minutes using UptimeRobot).
Using WordPress Multisite: If you use WooCommerce Zapier on multiple sites in your multisite network, you will need an uptime check for each wp-cron.php page. For example:
- https://example.com/au/wp-cron.php?doing_wp_cron
- https://example.com/uk/wp-cron.php?doing_wp_cron
- https://example.com/us/wp-cron.php?doing_wp_cron

PayPal Payment Processor

If you are using PayPal payments on your store, please ensure that PayPal Instant Payment Notification (IPN) is properly configured. Please go to your WordPress Dashboard —> Side Menu —> WooCommerce —> Settings screen —> Payments tab and click on PayPal. Ensure that the Receiver Email setting is correct and matches your PayPal email address. Alternatively, you can enable Payment Data Transfer (PDT) in your WooCommerce dashboard. The PayPal Standard documentation has a section about how to enable PDT.

REST API Issues

The REST API is how Zapier communicates with your WooCommerce store to send and receive data, so your WooCommerce store’s REST API must be operational and working correctly. We have listed some of the most common error messages that you may encounter when using WooCommerce Zapier with a WooCommerce store with REST API configuration issues:
  • Authentication response parse failed.
  • Authentication response is missing required information.
  • Create Resource response parse failed
  • Update Resource response parse failed
  • Search Resource response parse failed
  • List Resource response parse failed
  • Hook Resource response parse failed
  • WooCommerce returned "..."
  • WooCommerce returned "There has been a critical error on this website. Learn more about troubleshooting WordPress."
  • Webhook Subscribe response parse failed.
  • Webhook Unsubscribe response parse failed.
  • We’re having trouble loading 'Trigger Rule' data (WooCommerce returned "...".)
  • We’re having trouble loading 'Trigger Rule' data (This user does not have the correct permissions.)
  • We’re having trouble loading 'Trigger Rule' data (WooCommerce returned "There has been a critical error on this website. Learn more about troubleshooting WordPress.")
  • Trigger Rule response parse failed.
  • Input Fields response parse failed.

WooCommerce REST API

If your WooCommerce REST API is not working correctly, please consult the Getting Started with the REST API guide for details on how to verify that your REST API is working correctly.
Info: To connect Zapier, you don’t need to install an extra REST Auth plugin or manage REST API keys or Webhooks in your store. The integration automatically handles those for you.

Coming Soon or Maintenance Mode

The most common cause is a simple one: your WooCommerce store isn’t publicly accessible because you have a “Coming Soon” or “Maintenance Mode” plugin active. Please try deactivating it, and ensure that people can view/visit your website without needing to log in to WordPress.

Invalid or Untrusted SSL Certificates

Your website must also have a valid and trusted SSL certificate installed for Zapier to communicate with your WooCommerce store. If you encounter an error message such as certificate verify failed, it usually means that the Zapier service isn’t able to successfully connect to your WooCommerce store because it uses an SSL certificate that was issued from a Certificate Authority that Zapier doesn’t trust. Please consult this Zapier guide and this Zapier guide for further instructions, and if the problem persists please contact Zapier support for assistance.

Debug Output

WordPress or PHP debug output can render REST API responses invalid, so make sure the WP_DEBUG_DISPLAY constant is set to false in your site’s wp-config.php file:
define( 'WP_DEBUG_DISPLAY', false );
Please see here for more details.

SSL Check Failing

For the WooCommerce REST API authentication process to work correctly, your website must be configured to use SSL correctly. If your status screen shows SSL as red (No), then you will be unable to authenticate your WooCommerce store with Zapier: SSL Check Failing Example Often this issue results in one of the following error messages when you authenticate your WooCommerce store with Zapier:
  • Sorry, your connection isn’t secure. Please use TLS (HTTPS) to continue.
  • Sorry, you cannot list resources.
Also, if you review your WooCommerce Zapier logs, you will likely see the following error message:
CRITICAL: Authentication validation failed via ping. TLS (HTTPS) required.
To resolve this issue, you will need to contact your web host and let them know that WordPress core’s is_ssl() function is returning false during WooCommerce REST API requests, and ask them to resolve this for you. Often it is an indication that your website’s SSL/HTTPS configuration isn’t correct. You can also go here and perform an SSL Server Test for your website. This test can often identify common SSL misconfigurations that may need to be fixed by your web hosting provider for WooCommerce Zapier to work correctly.

WooCommerce REST API Authentication

If you are still receiving the Sorry, you cannot list resources. error message after trying the above steps, then this usually means that WooCommerce’s REST API is unable to authenticate using a standard consumer key and secret, which means that WooCommerce Zapier is unable to work as expected. For WooCommerce Zapier to operate correctly, your website must have a working WooCommerce REST API. This is listed in our System Requirements. You can check whether your WooCommerce REST API authentication mechanism is working by following this documentation which explains how to create a consumer key and secret, and then test if your REST API is working by querying the https://example.com/wp-json/wc/v3/orders?consumer_key=XXXX&consumer_secret=XXXX endpoint to confirm that it returns an HTTP 200 OK response and not an HTTP 401 Unauthorized response. If the response is 401, then please review our list of known incompatible and conflicting plugins. If you are still receiving a 401 response, please use a separate staging/test environment to temporarily switch to a default WordPress theme and deactivate all plugins (except WooCommerce), and then try authenticating to your test environment. If it works, then you can reactivate your plugins one by one to determine which one is causing the authentication problem. If authentication still isn’t working with only the WooCommerce plugin active, then this indicates that WooCommerce core’s built-in REST API authentication isn’t working as it should. Please log into your Woo account and submit a support request to the WooCommerce core support team so that they can investigate and identify why WooCommerce core’s REST API query parameter authentication mechanism isn’t working as expected.

Other Resources to Assist With REST API Issues

Here are some other great resources that may also be helpful:

Zapier Service Outages

From time to time, the Zapier.com service may have an outage or a period of downtime. This can cause delays or occasionally skipped or errored tasks. Please be patient, up until the issue is resolved by Zapier and do not attempt to resubmit data. If all Zapier services are working normally, you can start collecting information on what data missing. To identify which data you need to resubmit, first look at the Zapier Task History page, and search for any errors. You can replay a task from this page. If you still have missing data, because they have not arrived at Zapier at all, you can resend them with specific triggers. For further reference see transferring data through an existing Zap chapter.
Tip: For the current Zapier service status information, please visit the Zapier Status page.

Compatibility

↑ Back to top

WooCommerce Feature Compatibility

↑ Back to top
WooCommerce core contains some experimental and opt-in features that may affect the behaviour of WooCommerce Zapier. Below is a list of these features and their compatibility with WooCommerce Zapier.

Cart and Checkout Blocks

WooCommerce Zapier version 2.10 or later includes support for the Cart & Checkout Blocks feature. If you are using WooCommerce Zapier version 2.9 or earlier, you must update to version 2.10 or later before enabling the new block-based Checkout in WooCommerce. After doing so, your WooCommerce Zaps should continue to work.
WooCommerce Memberships does not support Cart and Checkout Blocks: Although WooCommerce Zapier fully supports the new Cart and Checkout Blocks feature in WooCommerce, you cannot use it together with the WooCommerce Memberships plugin, as it is not compatible with that feature.
For the best possible experience, please ensure you are using the latest versions of your WooCommerce plugin and extensions before enabling the new cart/checkout in WooCommerce.
Plugin Minimum Version For Cart/Checkout Blocks
WooCommerce Zapier Version 2.10 or higher
WooCommerce Version 7.6 or higher
Please consult the Cart & Checkout Blocks documentation for further information.
New Draft Order Status: WooCommerce’s new Checkout results in orders being created with a Draft (checkout-draft) status. If you are using Order Triggers or Actions, we recommend reviewing your Zap configuration to ensure that your Zaps continue to work as expected with the new Draft order status.

High-Performance Order Storage (HPOS)

WooCommerce Zapier version 2.7 and later includes support for WooCommerce’s High-Performance Order Storage (HPOS) feature. If you are using WooCommerce Zapier version 2.6 or earlier, you must update to version 2.7 or later before enabling HPOS in WooCommerce. After doing so, your WooCommerce Zaps should continue to work with or without enabling HPOS. For the best possible HPOS experience, please ensure you are using the latest versions of your WooCommerce plugin and extensions before enabling HPOS in WooCommerce.
Plugin Minimum Version For HPOS
WooCommerce Zapier Version 2.7 or higher
WooCommerce Version 7.8 or higher
Woo Subscriptions Version 5.3 or higher3
Legacy Feeds are not compatible with HPOS: If you are using a Legacy Feed (created before version 2.0), it will not be compatible with HPOS. You must migrate your Legacy Feeds and Zaps before enabling HPOS in WooCommerce.

Order Attribution

WooCommerce 8.5 introduced an Order Attribution Tracking feature to help store owners understand where their orders are coming from. This data is included in the Order data sent to Zapier. Please see Order Data Fields documentation for more information.

WooCommerce Extension Compatibility

↑ Back to top
With thousands of WooCommerce extensions, addons and plugins available for WooCommerce, and a similar amount of integrations for Zapier, it can be challenging to know if they are compatible with WooCommerce Zapier. Below is a list of WooCommerce Extensions and plugins that are supported, compatible, and partially compatible with WooCommerce Zapier. Also listed are security plugins that may interfere with WooCommerce Zapier, as well as partially compatible integrations.
Tip: If a WordPress plugin or Zapier Integration that you are using isn’t listed below, it doesn’t necessarily mean it is or isn’t compatible. You can always purchase the WooCommerce Zapier extension and use the 30-day money-back guarantee to try it yourself.

Supported Plugins

↑ Back to top
The following WooCommerce extensions are actively supported by WooCommerce Zapier:

WooCommerce Bookings

Compatibility with the WooCommerce Bookings plugin was added in version 2.2 of WooCommerce Zapier. You must be running at WooCommerce Bookings version 1.15.55 or later. If you have WooCommerce Bookings installed, you can use Bookings data in your Zaps (Triggers only). More on how to use Bookings in WooCommerce Zapier.

WooCommerce Memberships

Compatibility with the WooCommerce Memberships plugin was added in version 2.10 of WooCommerce Zapier. You must be running WooCommerce Memberships version 1.25.0 or later, and PHP version 7.4 or later. If you have WooCommerce Memberships installed, you can use Membership data in your Zaps, including Membership Plan and User Membership.

Woo Subscriptions

Compatibility with the Woo Subscriptions plugin was added in version 1.6 of WooCommerce Zapier. You must be running at Woo Subscriptions version 4.2.0 or later. If you have Woo Subscriptions installed, you can use Subscription data in your Zaps (Triggers and Actions). More on how to use Subscriptions in WooCommerce Zapier.

Checkout Field Editor

Compatibility with the WooCommerce Checkout Field Editor plugin was added in version 1.1 of WooCommerce Zapier. Any additional checkout fields added to your store by the WooCommerce Checkout Field Editor plugin will be sent to Zapier, allowing you to use your custom checkout fields in your Zaps that use any Order trigger events. You may also wish to view the Checkout Field Editor documentation.

Compatible Plugins

↑ Back to top
Below is a list of WooCommerce extensions that are compatible with WooCommerce Zapier.

Sequential Order Numbers Pro

WooCommerce Zapier is compatible with the WooCommerce Sequential Order Numbers Pro plugin since version 1.1. If using the WooCommerce Sequential Order Numbers Pro plugin, we recommend using the number data field (not the id data field) in your Zap Triggers. See the Order Data Fields documentation for full details on the number field. You may also wish to view the Sequential Order Numbers Pro documentation.

WooCommerce Order Status Manager

Custom order statuses created with the Order Status Manager extension are supported in the Order data Status field when using Order triggers and actions However, a dedicated Trigger Rule for Order status changed to … is not available for created custom order statuses. If you would like to trigger a Zap when an order changes to a custom status, we’d recommend using the Order status changed (any status) trigger rule, which triggers every time an order changes status (including changing to or from a custom order status).

WooCommerce Pre-Orders

Compatibility with the WooCommerce Pre-Orders plugin is included. You typically need to use the Order status changed (any status) trigger rule, which will fire whenever an order changes status. You can use this together with a filter to act only when an order changes status to pre-ordered: Pre-Order Filter Example See the documentation on filters for more information. You may also wish to view the WooCommerce Pre-Orders documentation.

Groups for WooCommerce

Whilst we haven’t extensively tested these plugins together, we do know of users who are using them successfully. If you are encountering memory exhausted errors when using WooCommerce Zapier and Groups for WooCommerce, please update it to version 1.7.3 which includes a fix that prevents an infinite recursion bug in WooCommerce core. You may also wish to view the Groups for WooCommerce documentation.

WooCommerce Gravity Forms Add-Ons

WooCommerce Zapier includes support for the Gravity Forms Add-Ons extension. The Gravity Forms Add-Ons data is sent to Zapier as part of the line_items meta_data field, allowing it to be used in Zap filters.
Note: Please keep in mind that the Zapier Zap editor won’t be aware of your additional Gravity Forms product fields until an order is placed on your WooCommerce store for that product. After that, you can open the Zap Editor and you should see your Gravity Forms fields along with the standard fields.

URL Coupons

WooCommerce Zapier lets you create new Coupons in Zaps (using the Create Coupon action). If you are using the URL Coupons Extension, you can automatically configure the URL Coupons settings (such as Unique URL and Page Redirect) for the coupon when it is created via a Zap: The Resulting Coupon in WooCommerce To achieve this, in your Zap’s Create Coupon action, use the Meta Data List field to add a new the _wc_url_coupons_unique_url metadata record. You would typically set the value of this field to the Slug output from the suggested Code by Zapier step: Set Coupon Unique URL Meta Data
Important: Please be sure to read the URL Coupons documentation which describes important things to consider when setting Coupon URLs.
If you would also like to set the Page Redirect attribute for the coupon, you can do so by adding two additional meta data records to your create coupon action:
  • _wc_url_coupons_redirect_page_type set to page.
  • _wc_url_coupons_redirect_page set to the page ID of your choice.
Set Coupon Page Redirect Page ID Metadata The result is a newly created coupon in WooCommerce with all three URL coupon settings automatically configured: New Coupon with URL Coupon Settings Configured

Uncanny Toolkit for LearnDash

Communication with an application-specific password is not affected by this plugin, but the Front End Login feature causes issues when authenticating with the normal WordPress account password. Please deactivate this feature if you are not authenticated with a WordPress Application password.

Security Plugins

↑ Back to top
To avoid interfering with security plugins in general, please ensure that you are using WordPress Application Passwords to connect your store.
Use Application Passwords: To set up an Application Password, go to WordPress Dashboard —> Side Menu —> Users —> Profile screen and press the “Add New Application Password” button. Please see here for details.

Jetpack

When using Jetpack with WordPress 5.6 or later, the majority of the Jetpack plugin features are compatible with WooCommerce Zapier, however, there are several areas where you need to be aware of to make the two plugins work together. If you are using the Brute Force Attack Protection (formerly Protect) feature, you need to authenticate WooCommerce Zapier using an application-specific password. Otherwise, please consult the Jetpack Protect documentation for assistance. If you are using the WordPress.com Secure Sign On feature, use a WordPress Application Password feature when authenticating. Please see here for details on how to successfully authenticate.

Wordfence Security

Wordfence Security is a very popular security plugin that is commonly used with WooCommerce Zapier.
WooCommerce Zapier Plugin Version 2.3 Required: Please ensure you update the WooCommerce Zapier plugin to version 2.3.0 or later. WordPress 5.6 Required: Please ensure you’re using WordPress 5.6 or later.
To successfully authenticate with two-factor authentication enabled, you need to use a WordPress Application Password (not your regular WordPress password) when authenticating. Please also ensure that the WordPress Dashboard —> Side Menu —> Wordfence —> All Options —> Disable WordPress application passwords checkbox is not ticked (i.e., application passwords need to be enabled and not disabled). You may still experience difficulties authenticating if you are using Wordfence’s Brute Force Protection. Moreover, you may need to whitelist the WooCommerce Zapier REST API endpoints. You can find the list of the plugin endpoints inside our Developer Documentation. !!! Tip To see if Wordfence is interfering with the communication, please go to WordPress Dashboard —> Side Menu —> Wordfence —> Tools —> Live Traffic and review the live traffic logs to identify the specific reason for the failure.
For busy stores, you may need to use the **Show Advanced Filters** --> `User Agent = Zapier` option to only see Zapier authentication logs.

iThemes Security

iThemes Security does not interfere with WooCommerce Zapier if you are using a WordPress Application Password. Alternatively, with older WordPress versions, iThemes Security has its own application-specific password solution, so when authenticating, please ensure that you use that application-specific password rather than your account password.

WP Rocket

This plugin has a feature that forces trailing slash for any URLs, which is not compatible with the authentication mechanism in WooCommerce Zapier. To avoid problems with it, please the remove trailing slash functionality or disable it for the Integration endpoints. Refer to the WP Rocket Documentation for how to do this.

JWT Auth

The JWT Auth plugin forces its authentication method to all REST API requests (including WooCommerce Zapier). This interferes with the WooCommerce Zapier’s Actions functionality. It also prevents Trigger sample data from working. The solution is to add WooCommerce Zapier’s endpoints to the JWT Auth plugin’s whitelist so that JWT authentication is not applied to WooCommerce Zapier’s endpoints.
Whitelist Example:
add_filter( 'jwt_auth_whitelist', function ( $endpoints ) {
    return array(
        '/wc-zapier-auth/*',
        '/wp-json/wc-zapier/*',
    );
} );

Other Security Plugins

The following plugins can cause authentication errors when connecting with a WordPress account password:

Partially Compatible Plugins

↑ Back to top
Below is a list of plugins that are partially compatible with WooCommerce Zapier.

WooCommerce Product Add-Ons

WooCommerce Zapier includes support for the Product Add-Ons extension. The Product Add-Ons data is sent to Zapier as part of the line_items and meta_data fields, allowing them to be used in Zap filters. We don’t recommend using the Product Add-Ons data in Zap templates unless all of your products have the same add-on fields available. This is because a Zap requires a predictable set of data fields coming through for every order line item.
Warning: The Product Add-Ons extension stores addon price information in the meta key field, which can result in a different key value from order to order, making the key name unpredictable and difficult to use in Zap actions.

WooCommerce Deposits

The WooCommerce Deposits extension can cause problems when retrieving sample order data from WooCommerce when using the Zapier.com Zap editor. This is because WooCommerce Deposits creates future-dated orders that have a status of scheduled-payment, so when WooCommerce Zapier loads the most recent orders to display as sample data, the future-dated scheduled-payment orders are listed first. This makes it difficult to display useful orders in the Zap editor when setting up your Zap. The workaround is to temporarily trash these Scheduled Payment orders, set up your Zap, and then restore the orders:
  1. Go to the WordPress Dashboard —> Side Menu —> WooCommerce —> Orders screen, then filter by Scheduled.
  2. Select all the Scheduled orders, then Bulk actions —> Move to Trash.
  3. Return to the Zapier.com Zap Editor, then in your Trigger step, click Test Trigger, then click the Dropdown list and click the Load More button to retrieve your most recent order data from your store. This sample data should now contain recent valid orders (rather than future-dated scheduled payment orders).
  4. Select a recent order from the dropdown, then complete the setup of your Zap and turn it on.
  5. Return to WordPress Dashboard —> Side Menu —> WooCommerce —> Orders, filter by Trashed.
  6. Select all trashed orders, then Bulk actions —> Restore to reinstate the Scheduled Payment orders.

Fancy Product Designer

Some WooCommerce Zapier users have reported success when using the Fancy Product Designer plugin, whereas others have encountered issues. The Fancy Product Designer data is sent to Zapier as part of the line_items —> meta_data fields, allowing them to be used in Zaps.
Warning: This plugin is prone to storing vast amounts of information, which can lead to the data exceeding the current limitation of the Zapier platform (6MB) for Order or Product triggers. When this happens, you may be unable to create a Zap or the corresponding task will fail. One possible solution for preventing this from happening is filtering out the outgoing data in WooCommerce, as described in the Modifying or Extending Data and Fields chapter.

WooCommerce Composite Products

The WooCommerce Composite Products extension can cause WooCommerce Zapier Create Product actions to fail with an Configuration" (composite_scenarios__configuration) is missing. error message. To resolve this, please update Composite Products to version 8.1.1 (or newer).
Heads Up: It is not possible to create Composite Products via a Create Product action.

Incompatible Plugins

↑ Back to top
Below is a list of plugins that are not currently compatible with WooCommerce Zapier.

WP-SpamShield

The WP-SpamShield plugin is known to cause issues when authenticating. Having this plugin active may cause you to receive either of the following error messages:
Sorry, this user does not have the correct permissions.
ERROR: Sorry, there was an error. Please be sure JavaScript and Cookies are enabled in your browser and try again.
Please deactivate the plugin and try again.

WP Content Copy Protection & No Right Click

This plugin is known to cause issues when authenticating. Please deactivate the plugin and try again.

WooCommerce Real-time Notifications for new orders

This plugin is known to cause issues when authenticating, with the following error message:
Sorry, you cannot list resources.
Please deactivate the plugin and try again.

Partially Compatible Integrations

↑ Back to top
Below is a list of Zapier Integrations that are partially compatible with WooCommerce Zapier.

Gmail

Info: The following constraints only apply to consumer Gmail account accounts (emails ending with @gmail.com or @googlemail.com. See details in this help document.
Google is restricting Gmail Integrations usage. Only the approved apps can receive information. Unfortunately, the WooCOmmerce Zapier is not on the list. If you have a consumer Gmail account and configure Gmail as a trigger and WooCommerce as an action, you will see the following error: Gmail has some additional requirements Sending data from WooCommerce to Gmail is not restricted.

GDPR Compliance

↑ Back to top

WooCommerce Extension and Zapier App

↑ Back to top
You can typically achieve General Data Protection Regulation (GDPR) compliance whilst using WooCommerce Zapier, and we have provided some information below to help get you started. Zapier Integration consists of a WooCommerce plugin (installed on your website) and a Zapier App (hosted on Zapier.com), working together to connect WooCommerce to Zapier and Zapier to WooCommerce.

WordPress

↑ Back to top
The Zapier Integration is a WordPress plugin, and to operate needs WordPress WooCommerce to be installed. If you need GDPR compliance, you can usually achieve it with your WordPress installation. For reference see the Your WordPress.com Site and the GDPR page in wordpress.com, which can be adapted to self-hosted WordPress sites as well.

WooCommerce

↑ Back to top
Here is WooCommerce’s GDPR Guide for related settings, and you can read the compliance in their blog post.
Tip: If you are using WordPress version 4.9.6 or newer, we provide a snippet about the integration and Zapier service, that you can include in your privacy policy page. Go to your WordPress Dashboard —> Side Menu —> Settings —> Privacy screen, and follow the Check out our guide link to access it.

Zapier

↑ Back to top
You can find out Zapier’s GPR compliance information in their support documentation.

Third-Party Services Used in Your Zaps

↑ Back to top
You will also need to consider the GDPR implications of the third-party services that you use in your Zaps, as these may handle customer data and will need to be evaluated carefully. The sole purpose of the Zapier Integration is to transfer data between services.

Legal Advice

↑ Back to top
Please note that the above suggestions are not legal advice, and we strongly recommend consulting with a GDPR expert to help ensure that your store and business are GDPR compliant.

Uninstall

↑ Back to top

Deactivation

↑ Back to top
Deactivating the WooCommerce Zapier plugin will prevent all existing WooCommerce Zaps from working. Your WooCommerce store will no longer send data to Zapier and will be unable to process incoming connections from your Zaps. Your existing Zap(s) stay intact, however they will not work anymore. All of your WooCommerce Triggers will not produce any new tasks, and all of your Actions will return an error the next time a Zapier task is performed.

Uninstallation

↑ Back to top
The default behaviour for uninstalling (deactivating and deleting) the plugin is to keep your WooCommerce Zapier data in the WooCommerce store. If you like, you can delete and reinstall the WooCommerce Extension many times. Your WooCommerce Zapier settings and data will not be lost. This is especially helpful while troubleshooting your WooCommerce store. If you decide to uninstall the WooCommerce Zapier plugin and you don’t plan to use it anymore, the recommended order of action is to go to Zapier.com and delete all WooCommerce Zaps in Zapier first and then uninstall the plugin. Also, you can permanently remove all WooCommerce Zapier data from WooCommerce too (see below).

Remove All Data

If you want, you can completely remove all WooCommerce Zapier data during uninstall. This includes settings, Task History, scheduled action(s), WooCommerce Zapier Webhook(s) and REST API Authentication key(s). To permanently delete all plugin data upon uninstall, you need to add the following line to your wp-config.php file:
define("WC_ZAPIER_REMOVE_ALL_DATA", true);
After you have done this, go to your WordPress Dashboard —> Side Menu —> Plugins screen and deactivate and delete the WooCommerce Zapier plugin. Once done, you can remove the WC_ZAPIER_REMOVE_ALL_DATA line from your wp-config.php file. Refer to WordPress’ Editing wp-config.php documentation for further information on how to edit your config.
Note: If you’re using the Application Passwords feature, you need to manually delete passwords created for Zapier communication. Please see in the Plugin Interface chapter where to find it. Uninstalling the WooCommerce Extension will not remove your Zaps and data on Zapier, even if you choose to delete all data from WooCommerce.

Glossary

↑ Back to top
Action
Incoming connection. See Connection Types.
Application Password
App-specific password feature built-in to WordPress 5.6 and later.
Connection
An actual communication between your WooCommerce store and a Zapier Zap. In this documentation, we are using a couple of related terms of connection.
Connection Types
Incoming or Outgoing. Describes the direction of the data flow observed from the WooCommerce store perspective. Incoming connections are referred to as Actions, outgoing connections are referred to as Triggers.
Resource
Represents a specific type of WooCommerce data. For example, an Order, a Product, a Customer.
Trigger
Outgoing connection. See Connection Types.
Trigger Rule
A rule that defines an event (or multiple events) that will cause WooCommerce data to be sent to a Zapier Zap.
WooCommerce Extension
Part of the integration that operates inside a WooCommerce store. This is the WooCommerce Zapier plugin that you have installed on your WooCommerce store.
Zap
Zapier Zap is a connection configuration between Zapier and other services, including your store. See Connection.
Zapier App
Part of the integration that operates inside the zapier.com. This is the interface you see when using the WooCommerce app in a Zap. See Zap.
Zapier Feed
A legacy term used to describe a specific connection between Zapier and WooCommerce before version 2.

Error Codes

↑ Back to top
The Task History screen on your WooCommerce store shows all Trigger and Action tasks, as well as any errors that may have occurred. The Task History screen is located at WordPress DashboardWooCommerceZapierTask History. Errored tasks are shown with a red Error status: Hovering over the Error Task will show the error code, and clicking on the Get Help link will take you to the relevant error documentation. An Errored Task Each error has a unique error code, which can be used to identify the cause of the error.
WooCommerce Zapier Plugin Version 2.10 Required: Please ensure you update the WooCommerce Zapier plugin to version 2.10.0 to use this functionality.

Common Error Codes

↑ Back to top
The most commonly occurring error codes are listed below, along with solutions to resolve them.

action_scheduler_failure

These errors occur when a Trigger in WooCommerce attempts to send data to zapier.com, but the Action Scheduler action encounters an error. View the Task History record that has the Error status, and more details about the error will be available in the Message column. Click on the relevant error message below for the next steps.
Action Scheduler Failure: action marked as failed after 300 seconds. Unknown error occurred. Check server, PHP and database error logs to diagnose cause.: Action Scheduler was unable to complete the task within 300 seconds. Consult the Failed Tasks documentation.

http_request_failed

This occurs when a Trigger in WooCommerce attempts to send data to zapier.com, but the request fails. View the Task History record that has the Error status, and more details about the error will be available in the Message column. Click on the relevant error message below for the next steps.
Communication error with zapier.com: cURL error 28: Operation timed out after x milliseconds with 0 bytes received: The network connection between your website and zapier.com timed out. This can occur if:
  • Your website is under heavy load, or if your website is hosted on a slow server.
  • Zapier.com is having availability issues.
  • Consult the Zapier Service Outages documentation.

rest_missing_callback_param

This occurs when a required field is missing from the data sent to a WooCommerce Create action. View the Task History record that has the Error status, and more details about the error will be available in the Message column. Edit your Zap’s Create action step, and ensure that all required fields are populated with valid values.

trigger_error_response

This occurs when a Trigger in WooCommerce attempts to send data to zapier.com, but zapier.com responds with an unexpected error. Click on the relevant error message below for the next steps. This can occur if Zapier.com is having availability issues. View the Task History record that has the Error status, and more details about the error will be available in the Message column. Consult the Zapier Service Outages documentation.

woocommerce_rest_cannot_view

This occurs when a WooCommerce webhook (Trigger) was created by a WordPress user that no longer exists. See Webhook Payload Issues.

woocommerce_rest_invalid_id

This occurs when using the Create Subscription Note action and the subscription ID provided does not exist. Ensure the Subscription Id field is set to the ID of an existing WooCommerce subscription.

woocommerce_rest_order_invalid_id

This occurs when using the Create Order Note action and the order ID provided does not exist. Ensure the Order Id field is set to the ID of an existing WooCommerce order.

woocommerce_rest_product_invalid_id

This occurs when using the Update Product Price action or Update Product Stock Quantity action and the Product Identifier field is set to ID, and the Product Value field is set to a product ID that does not exist.
  • Ensure the Product Value field is set to the ID of an existing WooCommerce product.
  • Alternatively, set the Product Identifier field to SKU and ensure the Product Value field is set to a valid product SKU.

woocommerce_rest_product_stock_management_disabled

This occurs when using the Update Product Stock Quantity action and the product does not have stock management enabled. Edit the product in WooCommerce, and ensure the inventory settings have stock management enabled. Please see here for details.

woocommerce_rest_shop_coupon_invalid_id

This occurs when using the Update Coupon action and the coupon ID provided does not exist. Ensure the Coupon Id field is set to the ID of an existing WooCommerce coupon.

woocommerce_rest_shop_order_invalid_id

This occurs when using the Update Order action and the order ID provided does not exist. Ensure the Order Id field is set to the ID of an existing WooCommerce order.

  1. Only available if the WooCommerce Bookings plugin is installed. ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎
  2. Only available if the WooCommerce Memberships plugin is installed. ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎
  3. Only available if the Woo Subscriptions plugin is installed. ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎
  4. Not required, but recommended for better performance and security. ↩︎
  5. WooCommerce is 7.6 required for Cart and Checkout Blocks Compatibility↩︎
  6. WooCommerce 7.8 is required for HPOS Compatibility↩︎
  7. See WooCommerce documentation for Roles and Capabilities↩︎
  8. See the WooCommerce REST API documentation for details on how to verify that your REST API is working correctly. The legacy REST API is not required. ↩︎
  9. WP-Cron is a standard part of WordPress. WooCommerce’s Action Scheduler depends on it. If not running, this plugin will not work. See the No Data is Being Sent to Zapier chapter. ↩︎
  10. Certain Zapier features, for example, Filters, Paths and Multi-step Zaps are only available with a paid Zapier plan. For pricing information, please refer to the Zapier’s Plans & Pricing page↩︎ ↩︎ ↩︎
  11. The name is dynamically generated based on the Resource that you selected in the Choose App & Event step. ↩︎ ↩︎
  12. Not all product data is available in an Order Context as a line item. ↩︎