↑ Back to top
WooCommerce Zapier offers seamless integration with over 7,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.
Supporting more than 70 Triggers and 25 Actions across 10 Resources, the WooCommerce Zapier integration allows you to connect your WooCommerce store with more than 7000+ Zapier-enabled apps and services.
↑ Back to top
You can purchase WooCommerce Zapier from the WooCommerce.com 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
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.
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.
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.
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
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.
And More
Please see the release notes for full details of recent changes and improvements.
↑ Back to top
It 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.
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.
On your WordPress Dashboard —> Side Menu —> WooCommerce —> Extensions —> My Subscriptions screen, click the Refresh button (top right) to force a refresh of your account data from WooCommerce.com.
Find WooCommerce Zapier in the list of extensions and click the one-click Install button.
WooCommerce Zapier should now be installed, and this is also the easiest way to keep your WooCommerce Zapier plugin up to date.
WooCommerce.com Update Manager is required for WooCommerce version 8.8 or later:
Install the WooCommerce.com Update Manager plugin to establish a connection between your website and WooCommerce.com and enable automatic updates.
Please visit the Managing WooCommerce.com Subscriptions page and download the WooCommerce Update Manager.
Install the plugin using the WordPress Dashboard plugin interface. You can find a step-by-step guide on how to do this here: Upload via WordPress Admin
This article explains how you can connect your account to your WooCommerce store to activate in-dashboard one-click downloads/updates.
Alternatively, can also install WooCommerce Zapier by uploading the plugin zip file directly to your WordPress Dashboard.
Log in to your WooCommerce.com account and go to the Downloads page to download the latest zip file of the WooCommerce Zapier extension to your computer.
From your WordPress Dashboard, go to the Side Menu —> Plugins screen and click the Add New Plugin 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.
We also suggest going to WordPress Dashboard —> Side Menu —> WooCommerce —> Extensions —> My Extensions screen to connect your WooCommerce.com account, so that you have access to future WooCommerce Zapier versions from within your WordPress Dashboard.
↑ 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.
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.
Create a Zap from Scratch
If you would like to start from scratch, go to your Zapier dashboard page on zapier.com and press the Create button (top right), then choose Zap to create a new Zap.
↑ 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 dialog 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 dialog 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.
Use a WordPress Application Password for isolation and better compatibility:
Using an application password (rather than your regular password) improves compatibility with security-related plugins and services. Also keeps user and service related access separated. 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).
Alternatively, you can use your regular WordPress password.
Click the Yes, Continue to WooCommerce 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.
↑ Back to top
This feature allows you to send WooCommerce data to a Zapier Zap.
Step 1: Trigger step
In the Choose App & Event step, search for the WooCommerce app and click it.
Select the Resource (data type) in the Choose Trigger Event dropdown — for example, Order if you would like to send WooCommerce orders to Zapier.
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.
In the Find Data step, click the Test & Continue button to retrieve sample data from your WooCommerce store.
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
In the Choose App & Event step, choose a service to send your WooCommerce data to.
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.
↑ Back to top
Actions allow you to create new (or update existing) WooCommerce data from a Zapier Zap.
Step 1: Trigger steps
In the Choose App & Event step, choose a service to get the source data from.
Finish configuring the Trigger.
Step 2: Action steps
In the Choose App & Event step, select the WooCommerce app.
Choose the Action in the Choose Action Event dropdown — for example, Create Order.
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.
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.
In the Send Data step, click the Test & Continue button to finish the Action configuration.
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.
↑ 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 CreateAction.
The following create actions are available:
↑ 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.
If you don’t know the 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.
Configure your Zap as seen in the Create an Action chapter above, and in the Choose Action Event dropdown select the corresponding UpdateAction.
The following update actions are available:
↑ 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 FindAction.
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.
Alternatively, after searching you can add an additional step11 to your Zap to use the found Resource/data.
The following find actions are available:
↑ Back to top
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:
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.
Some 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”:
The Meta Data List input field lets you add (set) multiple meta data records at once.
In the left-hand field, enter the name (key) of the meta data record you would like to add.
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).
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.
↑ 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:
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.
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.
↑ Back to top
Paid Zapier accounts11 allow multi-step Zaps, which support having additional steps between the Trigger and Action steps. For example:
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.
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
See the Product Types chapter for a full list of supported 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:
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
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:
Which would allow you then use the 2. Product ID field in a subsequent step (such as a Find Product step):
Please see Zapier’s help article for more details on how to use Looping by Zapier.
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:
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:
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.
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.
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:
For each path configuration, you would set up criteria such as the following, which is based on the name of the product ordered:
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.
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.
↑ 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.
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.
↑ Back to topOrders 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.
Orders also have one child resources Order Notes that can be accessed in Zapier Integration.
↑ 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.
A note about WooCommerce Subscriptions:
If you are using the WooCommerce 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)
The above setup will ensure that your order Zap only triggers when a non-subscription product is purchased.
Order created
Triggers when an order is created.
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).
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
This trigger is designed to capture online (instant) payment.
Relationship between order status and paid state: It’s important to remember that the order paid state is not directly tied to a specific order status. While the paid state of an order often corresponds to the Processing or Completed order status, this is not always the case. The order status can be set independently from the paid state.
Real-time payment methods
When an order is paid for through a real-time payment gateway (such as Stripe, PayPal, or most other credit card gateways), WooCommerce can automatically mark the order as paid and set the order status to Processing or Completed. However, this behaviour depends on the payment gateway’s support.
Offline (deferred) payment methods
The Order paid trigger rule will not 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 and want to trigger actions based on the payment status, 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, depending on your specific requirements.
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:
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 version 2.4 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.
↑ 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.
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.
The following actions are available for use in your Zaps to create, update or find orders:
Create Order
Creates a new Order in WooCommerce.
Product Stock Quantity does not get reduced by default:
If WooCommerce manages product inventory, creating an order via Zapier does not automatically reduce the stock quantity of the product(s) in the order.
To adjust the stock quantities manually, you may wish to add the following steps to your Zap after the Create Order step:
Add a Looping by Zapier step to loop over each Line Item from the Order step.
Add an Update Product Stock Quantity step to “Reduce Stock Quantity By” the total quantity of each Line Item in the order.
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.
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.
Manual Update
boolean
Set the action as manual so that the order note registers as “added by user”.
Update Order
Updates (modifies) an existing Order in WooCommerce.
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.
Product Stock Quantity Automatically Changes from WooCommerce 9.1:
When updating an order via Zapier and changing/updating line items, the stock quantity of the products in the order will get updated automatically in WooCommerce version 9.1 and newer.
In version 9.0 and older, the stock quantity of the products in the order won’t be changed automatically.
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.
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.
Manual Update
boolean
Set the action as manual so that the order note registers as “added by user”.
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.
Searches return the first result found:
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.
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
integer
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 —> Discount Type
string
Discount type.
Coupon Lines —> Nominal Amount
number
Discount amount as defined in the coupon (absolute value or a percent, depending on the discount type).
Coupon Lines —> Free Shipping
boolean
Whether the coupon grants free shipping or not.
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.
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
integer
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 —> Discount Type
string
Discount type.
Order Coupon Lines —> Nominal Amount
number
Discount amount as defined in the coupon (absolute value or a percent, depending on the discount type).
Order Coupon Lines —> Free Shipping
boolean
Whether the coupon grants free shipping or not.
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.6 with the en_US locale.
WooCommerce v9.2 with tax and coupon functionality enabled.
The WooCommerce Bookings, WooCommerce Memberships, and WooCommerce Subscriptions plugins were active.
↑ Back to topOrder 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.
↑ 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.
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.
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.
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.
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.
Searches return the first result found:
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.
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.6 with the en_US locale.
WooCommerce v9.2 with tax and coupon functionality enabled.
The WooCommerce Bookings, WooCommerce Memberships, and WooCommerce Subscriptions plugins were active.
↑ 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.
Extensions can extend available data and introduce other product types. Please see the Plugin Compatibility chapter for details.
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.
Please note, that 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.
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.
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.
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.
↑ 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).
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.
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.
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.
↑ 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).
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.
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
Stock Keeping Unit.
Global Unique Id
string
GTIN, UPC, EAN or ISBN.
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.
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.
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.
Attributes and Images:
When updating, you must specify all or none of the Attributes or Images fields. If any data is present inside Attributes or Images, it will override existing data.
For example, if you want to add an image, you must specify all existing images and the new one. Or if you want to remove an attribute, you must specify all the attributes you want to keep and leave out the ones you want to remove.
Updating a Product Variation
To update a product variation, set the ID field to the individual variation’s ID.
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
Stock Keeping Unit.
Global Unique Id
string
GTIN, UPC, EAN or ISBN.
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.
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
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.
You can use ID or SKU to identify a which existing product to update in this action.
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)
Modifies an existing product or product variation’s stock quantity in WooCommerce.
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.
You can use ID or SKU to identify a which existing product to update in this action.
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
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.
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).
Please see here for some suggestions on how to find WooCommerce products from WooCommerce Order Line Items.
Searches return the first result found:
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
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).
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
Stock Keeping Unit.
Global Unique Id
string
GTIN, UPC, EAN or ISBN.
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.6 with the en_US locale.
WooCommerce v9.2 with tax and coupon functionality enabled.
The WooCommerce Bookings, WooCommerce Memberships, and WooCommerce Subscriptions plugins were active.
↑ Back to top
The Customer resource represents a buyer who registers to your site.
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. WooCommerce by default configured to allow customers to create an account. If you are relying on this resource, you can enforce registration by disabling Guest Checkout.
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.
↑ 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.
Customer created
Triggers when:
a customer registers (creates an account) in your WooCommerce store.
a WordPress user account (with any role) is created.
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.
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.
There is no trash functionality for customers (users) in WordPress
Customer updated
Triggers when a customer (or any WordPress user) is updated, edited, changed, or modified.
↑ Back to top
The following actions are available for use in your Zaps to create, update or find 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.
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._
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.
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 Dashboard —> Side Menu —> Users —> Add New and manually add the user with a Customer role to your sub-site.
Searches return the first result found:
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.
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.6 with the en_US locale.
WooCommerce v9.2 with tax and coupon functionality enabled.
The WooCommerce Bookings, WooCommerce Memberships, and WooCommerce Subscriptions plugins were active.
↑ 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).
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.
↑ 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:
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:
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:
Please see here for some suggestions for using the WooCommerce URL Coupons Extension.
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.
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.
Searches return the first result found:
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.
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.6 with the en_US locale.
WooCommerce v9.2 with tax and coupon functionality enabled.
The WooCommerce Bookings, WooCommerce Memberships, and WooCommerce Subscriptions plugins were active.
↑ 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.
↑ 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.
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).
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 version 2.4 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.
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.6 with the en_US locale.
WooCommerce v9.2 with tax and coupon functionality enabled.
The WooCommerce Bookings, WooCommerce Memberships, and WooCommerce Subscriptions plugins were active.
↑ Back to top
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.
In addition to Membership Plans, there is the User Membership resource that can be accessed in the Zapier Integration.
↑ 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).
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.
↑ 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.
Searches return the first result found:
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.
The set date when access will end for fixed-length membership plans tied to a subscription, in the site timezone.
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.
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.6 with the en_US locale.
WooCommerce v9.2 with tax and coupon functionality enabled.
The WooCommerce Bookings, WooCommerce Memberships, and WooCommerce Subscriptions plugins were active.
↑ Back to top
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.
In addition to User Memberships, there is the Membership Plan resource that can be accessed in the Zapier Integration.
↑ 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.
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:
Unique identifier of a subscription the user membership is tied to.
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.
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.
Unique identifier of a subscription the user membership is tied to.
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.
Searches return the first result found:
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).
Unique identifier of a subscription the user membership is tied to.
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.6 with the en_US locale.
WooCommerce v9.2 with tax and coupon functionality enabled.
The WooCommerce Bookings, WooCommerce Memberships, and WooCommerce Subscriptions plugins were active.
↑ Back to top
The Subscription resource represents a recurring payment as described in the WooCommerce 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.
Subscriptions also have other (child) resources Subscription Notes that can be accessed in Zapier Integration:
↑ 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.
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.
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).
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.
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.
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 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.
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, or failed, including any status change.
↑ 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._
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.
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._
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.
Searches return the first result found:
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.
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.6 with the en_US locale.
WooCommerce v9.2 with tax and coupon functionality enabled.
The WooCommerce Bookings, WooCommerce Memberships, and WooCommerce Subscriptions plugins were active.
↑ Back to top
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.
↑ 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.
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.
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.
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.
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.
Searches return the first result found:
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.
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.6 with the en_US locale.
WooCommerce v9.2 with tax and coupon functionality enabled.
The WooCommerce Bookings, WooCommerce Memberships, and WooCommerce Subscriptions plugins were active.
↑ 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.
↑ Back to top
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.
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.
Task Errors
If you see any tasks with an Error status, please consult the Error Codes chapter for further guidance.
↑ Back to top
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.
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.
There is no dedicated “Customer” screen in WooCommerce. WooCommerce stores customers in the WordPress User screen.
↑ Back to top
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.
This information is also used by WooCommerce Zapier Support when you contact us.
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.
↑ 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.
The log file may be not exist if the plugin recently installed, or there are no recent errors/logs.
↑ 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.
↑ 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:
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:
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?:
If you are using any other security plugins, review their settings to ensure they haven’t disabled the Application Passwords feature.
↑ 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.
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.
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.
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.
Removing an active webhook stops sending data to Zapier: Please see the Webhook Missing or Disabled chapter in troubleshooting how to fix it.
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 Completed section, you can see the previously completed actions.
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 Feeds and Zaps must be migrated by 14 October 2024:
All Legacy Feeds and Zaps must be migrated to the new WooCommerce app before 14 October 2024.
Any Zaps using the WooCommerce (Legacy) app are no longer supported and stop working after this date.
Please refer to the Migration Guide for details on how to migrate these legacy Zaps.
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.
↑ Back to top
Yes, you can.
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.
↑ 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, 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.
↑ 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.
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.
↑ Back to top
The WooCommerce Zapier plugin has 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.
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.
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 instead of the old one.
Enable all of your corresponding Zaps.
After doing so, we recommend reviewing each WooCommerce Zap and testing it to confirm that it is still functioning as expected.
What Happens if I Change My URL Without Editing the Zaps?:
Change Site Domain:
The site continuously sends data to Zapier.
When you edit a Zap, Zapier encounters an error (due to the old missing URL), and your site stops sending data.
Your site could fail to receive data, and your actions will fail.
Copy the Site to a New URL:
Both the old and new sites send data to Zapier.
Only your old site receives data.
When you edit a Zap, Zapier notifies the old site about the change, but not your new site. As a result, the new site could fail to send data and stop working.
↑ 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).
↑ Back to top
Yes, the Booking resource 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.
↑ 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.
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.
↑ 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.
↑ Back to top
The default tax class in English is named “Standard”, and you can add more in the WordPress Dashboard by navigating to Side Menu —> WooCommerce —> Settings —> Tax tab —> Additional tax classes field.
When you create, update or search product data, either directly or as part of an order, and you want to specify the tax class, you need to use the “slug” version of the name. This means you need to use a lowercase version of the name with underscores instead of spaces.
For example, “Standard” becomes standard, and “Reduced Rate” becomes reduced_rate.
↑ 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.
↑ 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.
↑ Back to top
We, the developer of the Zapier Integration (Tectalic) 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.
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 WordPress Dashboard’s Task History screen or in the 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:
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.
↑ Back to top
If you are having problems installing or updating the WooCommerce Zapier Plugin to the latest version via your WordPress Dashboard, please follow these steps:
On your WordPress Dashboard —> Side Menu —> WooCommerce —> Extensions —> My Subscriptions screen, click the Refresh button to force a refresh of your account data from WooCommerce.com.
Go to your WordPress Dashboard —> Side Menu —> Updates screen, and click the Check Again button to force WordPress to check for updates again.
The WooCommerce Zapier Plugin update should now show on the Updates screen. Select it and click Update Plugins to install the update.
If you still encounter problems, disconnect and reconnect your WooCommerce.com account. To do this, go back to your WordPress Dashboard —> Side Menu —> WooCommerce —> Extensions —> My Subscriptions screen, hover over your user avatar (top right of screen) and click Disconnect account. Click Connect and follow the prompts, then retry steps 2-4 above.
If you still encounter problems, please submit a ticket here and choose the Manage my WooCommerce.com account option so that the WooCommerce Support Team can assist.
WooCommerce.com Update Manager is required for WooCommerce version 8.8 or later:
Install the WooCommerce.com Update Manager plugin to establish a connection between your website and WooCommerce.com and enable automatic updates.
Please visit the Managing WooCommerce.com Subscriptions page and download the WooCommerce Update Manager.
Install the plugin using the WordPress Dashboard plugin interface. You can find a step-by-step guide on how to do this here: Upload via WordPress Admin
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 dialog 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 dialog 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.
Use a WordPress Application Password for isolation and better compatibility:
Using an application password (rather than your regular password) improves compatibility with security-related plugins and services. Also keeps user and service related access separated. 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).
Alternatively, you can use your regular WordPress password.
Click the Yes, Continue to WooCommerce 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.
Authentication failed: “WooCommerce returned “The username and/or password you supplied is incorrect.”. Error code: “woocommerce_rest_cannot_authorize” on https://example.com.”:
Make sure you’re using the correct username and password. We recommend using a WordPress Application Password if possible. Alternatively you can use the password you use when logging into your WordPress Dashboard).
Authentication failed: “WooCommerce returned “This user does not have the correct permissions.”. Error code: “woocommerce_rest_cannot_authorize” on https://example.com.”:
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.
If you are using any plugins or code that customises user role permissions, ensure that your role can manage WooCommerce webhooks, and has the following capabilities: manage_woocommerce, promote_users, edit_users.
Your website has a security solution or firewall that is blocking authentication attempts. For example, Cloudflare’s Web Application Firewall.
Review suggestions in Hosting Providers related compatibility issues.
Authentication failed: “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.
Authentication failed: “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 dialog 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 dialog window.
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 failed: “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 failed: “Authentication response parse failed.”:
Your WooCommerce store did not respond with valid JSON when authenticating.
Make sure your server/hosting/CDN provider doesn’t block the required API Endpoints.
Authentication failed: “Authentication response is missing required information.”:
Your WooCommerce store isn’t responding as with a valid authentication message.
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.
Authentication failed: “Sorry, your connection isn’t secure. Please use TLS (HTTPS) to continue.”: – Review the SSL Check Failing information to resolve this issue.
Authentication failed: “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.
Authentication failed: “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.
Authentication failed: “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.
Authentication failed:Â :
If you encounter an empty authentication error message such as the above, enable detailed logging, then re-authenticate.
Review your logs, and if they mention the following two messages:
Then this indicates that your website cannot see or access the expected authentication query parameters. This is often a hosting provider (or server) misconfiguration.
Solutions:
If your website is hosted with WP Engine, please review this information.
Please contact support and be sure to include the red error message and the logged error messages.
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:
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.
Return the to Zap Editor on Zapier.com, and try and re-authenticate.
The authentication attempt will likely fail again, however, this time a detailed reason why it failed will be recorded in your WooCommerce logs.
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.
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.
You can disable detailed logging once you have finished troubleshooting.
↑ 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, hosting providers or specific configurations.
Ensure you are utilising the Application Password feature for maximum compatibility.
Please see the following resources for possible compatibility issues.
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:
nd click on the relevant error message below to see the most common errors related to the WooCommerce Zapier plugin and the possible solutions.
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 WooCommerce Subscriptions plugin.
Sorry, you cannot view this resource. Error code: woocommerce_rest_cannot_view on…: 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.
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.
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:
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.
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.
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.
Click on the 3 dots next to your connection(s), then click Reconnect.
Follow the prompts to reauthenticate your WooCommerce.com account. See our Zapier Authentication documentation for more information on how to authenticate.
Repeat the above steps for each WooCommerce connection that you have listed.
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.
(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.
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.
Test Your Cron configuration: 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:
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:
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
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:
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:
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.
↑ Back to top
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.
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:
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:
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.
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 WooCommerce.com 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:
↑ Back to top
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.
For the current Zapier service status information, please visit the Zapier Status page.
↑ Back to top
WooCommerce core contains some optional 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 supports the Cart & Checkout Blocks 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.
Please consult the Cart & Checkout Blocks documentation for further information.
New Draft Order Status in WooCommerce version 7.6 through 9.1:
WooCommerce’s new Cart and Checkout Blocks results in orders being created with a Draft (checkout-draft) status between WooCommerce version 7.6 and 9.1.
If you are using Order Triggers or Actions, we recommend updating WooCommerce to version 9.2 or later to ensure that your Zaps continue to work as expected.
Coming Soon Mode
WooCommerce Zapier is fully compatible with the WooCommerce Coming Soon Mode, which was introduced in WooCommerce version 9.1. This feature allows stores to control the visibility of their site and store while it is under construction. WooCommerce Zapier can seamlessly handle this mode without any issues.
For more information on Coming Soon Mode, please see the Coming Soon Mode documentation.
Coupons
WooCommerce Zapier is fully compatible with WooCommerce’s Coupon functionality, allowing you to send and receive coupon data through Zaps. However, to ensure proper functionality, the coupon feature must be enabled in WooCommerce for this to work.
To enable coupons in WooCommerce:
Go to WooCommerce → Settings → General.
Scroll down to the Enable Coupons section.
Tick the box next to Enable the use of coupon codes.
WooCommerce Zapier includes support for WooCommerce’s High-Performance Order Storage (HPOS) feature.
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.
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.
Stock Management
The default stock management feature for your store can be enabled or disabled in WooCommerce —> Settings —> Products —> Inventory —> Manage stock checkbox. (Enabled by default).
Stock management feature must be enabled for your product(s) as well for the following trigger rules 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.
Tax
WooCommerce Zapier works whether WooCommerce’s Tax functionality is enabled or disabled.
The tax feature can be enabled and disabled in WooCommerce —> Settings —> General —> Enable tax rates and calculations checkbox (enabled by default).
Once taxes are enabled, WooCommerce Zapier can send and receive tax-related data in your Zaps. This includes:
Order tax data: You can send tax data with order-related Zaps. Please see Order Data Fields for details.
Product tax settings: You can trigger actions or automate workflows based on specific product tax classes. Please see Product Data Fields for details.
↑ 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, or partially compatible with WooCommerce Zapier.
Also, security plugins that may interfere with WooCommerce Zapier are listed separately.
Non-listed plugins: 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.
↑ 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 2.0.0 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.
WooCommerce Subscriptions
Compatibility with the WooCommerce Subscriptions plugin was added in version 1.6 of WooCommerce Zapier. You must be running at WooCommerce Subscriptions version 5.0.0 or later.
If you have WooCommerce 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.
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:
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_itemsmeta_data field, allowing it to be used in Zap filters.
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:
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:
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.
The result is a newly created coupon in WooCommerce with all three URL coupon settings automatically 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.
Asset CleanUp: Page Speed Booster
WooCommerce Zapier does not interfere with the Asset CleanUp: Page Speed Booster CSS/JavaScript minifying and combining functionality. However, the Pro version includes an option to turn off plugins on the front-end.
Incompatible configuration: Disabling the WooCommerce Zapier Integration on the front-end via the Asset CleanUp’s Plugins Manager feature is incompatible. This action will render the plugin inactive, stopping the plugin from working
Borlabs Cache
The Borlabs Cache plugin helps with caching and optimisation, but it can interfere with the WooCommerce Zapier authentication endpoint. You can still use it safely if you disable caching for this specific endpoint.
Incompatible configuration: You must exclude the authentication endpoint /wc-zapier-auth/v1/authenticate from the cache.
↑ Back to top
To avoid interfering with security plugins in general, please ensure that you are using WordPress Application Passwords to connect your store.
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.
Jetpack
When using Jetpack, the majority of the Jetpack plugin features are compatible with WooCommerce Zapier. However, there are several areas 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.
To successfully authenticate with two-factor authentication enabled, you need to use a WordPress Application Password (not your regular WordPress password) when authenticating.
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.
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.
Incompatible configuration: 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).
Solid Security
Solid Security (formerly iThemes Security) does not interfere with WooCommerce Zapier if you are using a WordPress Application Password.
Alternatively, with older WordPress versions, Solid 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.
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.
Other Security Plugins
The following plugins can cause authentication errors when connecting with a WordPress account password:
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:
Log into WordPress.com.
Switch to your site in the side menu.
Go to the Side Menu —> Jetpack —> Dashboard, and click the Settings button in the top right corner.
Inspect the status of the Allow users to log in to this site using WordPress.com accounts toggle.
If the toggle is
Off: you can navigate WordPress Dashboard —> Side Menu —> Users —> Profile page.
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.
Note your Username, as you need to use this username when authenticating later.
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.
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.
WP Engine
If your website is hosted with WP Engine, you may encounter issues with the WooCommerce Zapier authentication process.
You must ensure that WP Engine’s Redirect Bots feature is disabled so the WooCommerce Zapier authentication process works correctly.
↑ 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.
Potential incompatibility: 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:
Go to the WordPress Dashboard —> Side Menu —> WooCommerce —> Orders screen, then filter by Scheduled.
Select all the Scheduled orders, then Bulk actions —> Move to Trash.
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).
Select a recent order from the dropdown, then complete the setup of your Zap and turn it on.
Return to WordPress Dashboard —> Side Menu —> WooCommerce —> Orders, filter by Trashed.
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.
Potential incompatibility:
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 the following error message:
Configuration (composite_scenarios__configuration) is missing.
To resolve this, please update Composite Products to version 8.1.1 (or newer).
Potential incompatibility: It is not possible to create Composite Products via a Create Product action.
↑ 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:
↑ 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.
↑ 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.
↑ Back to top
Here is WooCommerce site and data security FAQ for related settings, and you can read the compliance in their blog post.
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.
↑ 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.
↑ 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.
↑ 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.
↑ 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.
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.
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.
A rule that defines an event (or multiple events) that will cause WooCommerce data to be sent to a Zapier Zap.
WooCommerce Extension {id=”woo”}
Part of the integration that operates inside a WooCommerce store. This is the WooCommerce Zapier plugin that you have installed on your WooCommerce store. See Plugin Interface
Zap
Zapier Zap is a connection configuration between Zapier and other services, including your store. See Connection.
Zapier App {id=”zapier”}
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.
↑ 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 Dashboard —> WooCommerce —> Zapier —> Task 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.
Each error has a unique error code, which can be used to identify the cause of the error.
↑ Back to top
The most commonly occurring error codes are listed below, along with solutions to resolve them.
action_scheduler_failure
The action_scheduler_failure error occurs when a WooCommerce Zapier encounters an issue while attempting to send data to Zapier.com. This error is related to the Action Scheduler, a library WooCommerce uses to manage and schedule tasks.
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.:
This error message indicates that the Action Scheduler could not complete the task within the default timeout period of 300 seconds (5 minutes). There are several potential causes for this error:
Server resources: The server may need more resources (e.g., CPU, memory) to process the task within the allotted time. This can happen if the server is under heavy load or if the task is particularly resource-intensive.
Network issues: If there are network connectivity problems between your server and Zapier.com, the task may fail to complete within the timeout period. This can be due to slow network speeds, high latency, or intermittent connectivity issues.
Plugin conflicts: Conflicts with other WordPress plugins or themes can sometimes interfere with the Action Scheduler’s ability to complete tasks on time. Deactivating other plugins and switching to a default theme can help identify if this is the cause.
Troubleshooting
To diagnose the specific cause of the action_scheduler_failure error, follow these steps:
Check your server’s error logs (e.g., Apache, Nginx) for relevant error messages or warnings.
Review your PHP error logs for any PHP-related issues, such as fatal errors, warnings, or notices.
Consult the Failed Tasks documentation for additional troubleshooting steps and guidance on resolving Action Scheduler failures.
http_request_failed
The http_request_failed error occurs when WooCommerce Zapier encounters a problem while attempting to send data to Zapier.com. This error indicates that the HTTP request from your WooCommerce store to Zapier.com has failed.
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:
This specific error message suggests that the network connection between your website and Zapier.com timed out. The request was unable to complete within the specified timeout period, resulting in the http_request_failed error.
There are several potential causes for this error:
Heavy website load: If your website is experiencing a high volume of traffic or resource-intensive tasks, it may be unable to process the request to Zapier.com on time, leading to a timeout.
Slow server performance: If your website is hosted on a slow or underperforming server, it may struggle to send the request to Zapier.com within the timeout period.
Zapier.com availability issues: If Zapier.com is experiencing outages, downtime, or performance problems, it may be unable to respond to the request from your WooCommerce store on time, resulting in a timeout.
Network connectivity issues: Intermittent network problems, such as high latency or packet loss, between your website and Zapier.com can cause requests to time out.
Troubleshooting
To diagnose and resolve the http_request_failed error, follow these steps:
Check your website’s server load and performance metrics.
Verify that your website is hosted on a reliable and well-optimized server.
Monitor the Zapier.com status page to see any reported outages or performance issues that could be causing the timeouts. If there is an ongoing issue, wait until Zapier.com resolves it before proceeding.
Examine your WooCommerce logs for any additional information or context related to the error, which may help identify the cause of the issue.
If the issue persists, consult the Zapier Service Outages documentation for additional troubleshooting steps and guidance on resolving Zapier.com-related issues.
order_invalid_parent_id
The order_invalid_parent_id error occurs when attempting to create or update an order in WooCommerce, and the specified parent order ID is either invalid or does not exist. This error indicates that the provided parent order ID does not correspond to a valid order in your WooCommerce store.
There are a few potential causes for this error:
Incorrect parent order Id: The most common cause is providing an incorrect parent order ID. Double-check that the ID you are using matches an existing WooCommerce order.
Deleted parent order: If the parent order was previously deleted from your WooCommerce store, attempting to reference it will result in this error. Ensure that the parent order you are trying to use has not been removed.
Incorrect store or environment: If you are using multiple WooCommerce stores or environments (e.g., staging, production), make sure you are using the correct parent order ID for the corresponding store or environment.
Troubleshooting
To resolve the order_invalid_parent_id error, follow these steps:
Verify that the Parent ID field is set to the correct ID of an existing WooCommerce order.
Check your WooCommerce store’s orders to confirm that the parent order you are trying to use exists and has not been deleted.
If you are using multiple stores or environments, ensure that you are using the correct parent order ID for the intended store or environment.
rest_invalid_param
The rest_invalid_param error occurs when a request to the API contains an invalid parameter. This error indicates that one or more parameters provided in the request are either missing, have an incorrect format, or contain invalid values.
View the Task History record that has the Error status, and more details about the error will be available in the Message column.
Troubleshooting
To resolve the rest_invalid_param error, follow these steps:
Check the error message to identify which fields are causing the issue.
Examine your WooCommerce Zapier logs and your WordPress and server error logs for any additional information or context related to the error. Look for specific details about the invalid parameter and the surrounding circumstances.
If you use custom code or plugins that interact with the WordPress REST API, review the code to ensure that it is correctly constructing the requests and handling any error responses appropriately.
rest_missing_callback_param
The rest_missing_callback_param error occurs when a required field is missing from the data sent to WooCommerce. This error indicates that the request is incomplete and cannot be processed due to the absence of one or more mandatory parameters.
Common error messages associated with this error code include:
“Error creating Customer via Create Customer action. Missing parameter(s): email”
“Error creating Order Note via Create Order Note action. Missing parameter(s): order_id, note”
“Error creating User Membership via Create User Membership action. Missing parameter(s): customer_id, plan_id”
The error typically occurs when all the required fields in the Create action step are not populated. Required fields are usually marked with an asterisk (*) or described as mandatory in the action’s documentation. Required fields are sometimes dynamically determined based on the provided data.
Troubleshooting
To resolve the rest_missing_callback_param error, follow these steps:
View the Task History record that has the Error status, and more details about the error will be available in the Message column. Look for specific details about the missing parameter(s) or field(s), such as “email” for the Create Customer action, “order_id” and “note” for the Create Order Note action, “price_value” for the Update Product Price action, or “customer_id” and “plan_id” for the Create User Membership action.
Edit your Zap’s Create action step and review all the required fields. Ensure that each required field is populated with a valid value.
trigger_error_response
The trigger_error_response error occurs when WooCommerce Zapier encounters an unexpected error while attempting to send data to Zapier.com. This error indicates that Zapier.com has responded with an unexpected error message.
Click on the relevant error message below for the next steps.
There are several potential causes for this error:
Zapier.com availability issues: If Zapier.com is experiencing outages, maintenance, or other availability problems, it may respond with unexpected error messages. This can happen if Zapier.com’s servers are down, overloaded, or undergoing updates.
Network issues: Intermittent network connectivity problems between your server and Zapier.com can sometimes result in unexpected error responses from Zapier.com.
Troubleshooting
To diagnose and resolve the trigger_error_response error, follow these steps:
Check the Zapier.com status page to see if any reported outages or issues could be causing the error. If there is an ongoing issue, wait until Zapier.com resolves it before proceeding.
Examine your WooCommerce logs for more details about the specific error response received from Zapier.com. This information can help you identify the cause of the error and determine the appropriate course of action.
View the Task History record that has the Error status, and more details about the error will be available in the Message column.
If the issue persists, consult the Zapier Service Outages documentation for additional troubleshooting steps and guidance on resolving Zapier.com-related issues.
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 error is a WooCommerce error that occurs when an ID field is null, empty, or points to a non-existent resource.
The error typically occurs when the Create Subscription Note action is triggered with an ID that does not correspond to an existing subscription in your WooCommerce store.
There are a few potential causes for this error:
Incorrect ID: The most common cause is providing an incorrect ID. Double-check that the ID you are using matches an existing resource.
Deleted resource: If the resource was previously deleted from your WooCommerce store, attempting to update it will result in this error. Ensure the resource you are trying to update has not been removed.
Incorrect store or environment: If you are using multiple WooCommerce stores or environments (e.g., staging, production), make sure you are using the correct resource ID for the corresponding store or environment.
Troubleshooting
To resolve the woocommerce_rest_invalid_id error when updating resource, follow these steps:
Verify that the ID provided in the action is correct and matches an existing resource.
Check your WooCommerce store’s resources to confirm that the resource exists and has not been deleted.
If you are using multiple stores or environments, ensure that you are using the correct resource ID for the intended store or environment.
woocommerce_rest_invalid_customer_id
This error is a WooCommerce error that occurs when an ID field is null, empty, or points to a non-existent Customer.
This error occurs when attempting to use the Update Customer action with an invalid or non-existent customer ID. This error indicates that the provided customer ID does not correspond to any existing customer in your WooCommerce store.
There are a few potential causes for this error:
Incorrect ID: The most common cause is providing an incorrect ID. Double-check that the ID you are using matches an existing Customer.
Deleted resource: If the Customer was previously deleted from your WooCommerce store, attempting to update it will result in this error. Ensure the Customer you are trying to update has not been removed.
Incorrect store or environment: If you are using multiple WooCommerce stores or environments (e.g., staging, production), make sure you are using the correct Customer ID for the corresponding store or environment.
Troubleshooting
To resolve the woocommerce_rest_invalid_customer_id error when updating Customer, follow these steps:
Verify that the ID provided in the action is correct and matches an existing Customer.
Check your WooCommerce store’s resources to confirm that the Customer exists and has not been deleted.
If you are using multiple stores or environments, ensure that you are using the correct Customer ID for the intended store or environment.
woocommerce_rest_invalid_wc_user_membership_id
This error is a WooCommerce error that occurs when an ID field is null, empty, or points to a non-existent User Membership.
This error occurs when attempting to update a user membership using the Update User Membership action, and the specified user membership ID is either invalid or does not exist. This error indicates that the provided user membership ID does not correspond to a valid user membership in your WooCommerce store.
There are a few potential causes for this error:
Incorrect ID: The most common cause is providing an incorrect ID. Double-check that the ID you are using matches an existing User Membership.
Deleted resource: If the User Membership was previously deleted from your WooCommerce store, attempting to update it will result in this error. Ensure the User Membership you are trying to update has not been removed.
Incorrect store or environment: If you are using multiple WooCommerce stores or environments (e.g., staging, production), make sure you are using the correct User Membership ID for the corresponding store or environment.
Troubleshooting
To resolve the woocommerce_rest_invalid_wc_user_membership_id error when updating User Membership, follow these steps:
Verify that the ID provided in the action is correct and matches an existing User Membership.
Check your WooCommerce store’s resources to confirm that the User Membership exists and has not been deleted.
If you are using multiple stores or environments, ensure that you are using the correct User Membership ID for the intended store or environment.
woocommerce_rest_order_invalid_id
This error is a WooCommerce error that occurs when an ID field is null, empty, or points to a non-existent Order Note.
The error typically occurs when the Create Order Note action is triggered with an ID that does not correspond to an existing order in your WooCommerce store.
There are a few potential causes for this error:
Incorrect ID: The most common cause is providing an incorrect ID. Double-check that the ID you are using matches an existing Order Note.
Deleted resource: If the Order Note was previously deleted from your WooCommerce store, attempting to update it will result in this error. Ensure the Order Note you are trying to update has not been removed.
Incorrect store or environment: If you are using multiple WooCommerce stores or environments (e.g., staging, production), make sure you are using the correct Order Note ID for the corresponding store or environment.
Troubleshooting
To resolve the woocommerce_rest_order_invalid_id error when updating Order Note, follow these steps:
Verify that the ID provided in the action is correct and matches an existing Order Note.
Check your WooCommerce store’s resources to confirm that the Order Note exists and has not been deleted.
If you are using multiple stores or environments, ensure that you are using the correct Order Note ID for the intended store or environment.
woocommerce_rest_product_invalid_id
This error is a WooCommerce error that occurs when an ID field is null, empty, or points to a non-existent Product.
This error occurs when attempting to use the Update Product Price action or Update Product Stock Quantity action with an invalid or non-existent product ID. This error indicates that the provided product ID does not correspond to any existing product in your WooCommerce store.
There are a few potential causes for this error:
Incorrect ID: The most common cause is providing an incorrect ID. Double-check that the ID you are using matches an existing Product.
Deleted resource: If the Product was previously deleted from your WooCommerce store, attempting to update it will result in this error. Ensure the Product you are trying to update has not been removed.
Incorrect store or environment: If you are using multiple WooCommerce stores or environments (e.g., staging, production), make sure you are using the correct Product ID for the corresponding store or environment.
Troubleshooting
To resolve the woocommerce_rest_product_invalid_id error when updating Product, follow these steps:
Verify that the ID provided in the action is correct and matches an existing Product.
Check your WooCommerce store’s resources to confirm that the Product exists and has not been deleted.
If you are using multiple stores or environments, ensure that you are using the correct Product ID for the intended store or environment.
woocommerce_rest_shop_coupon_invalid_id
This error is a WooCommerce error that occurs when an ID field is null, empty, or points to a non-existent Coupon.
This error occurs when attempting to use the Update Coupon action with an invalid or non-existent coupon ID. This error indicates that the provided coupon ID does not correspond to any existing coupon in your WooCommerce store.
There are a few potential causes for this error:
Incorrect ID: The most common cause is providing an incorrect ID. Double-check that the ID you are using matches an existing Coupon.
Deleted resource: If the Coupon was previously deleted from your WooCommerce store, attempting to update it will result in this error. Ensure the Coupon you are trying to update has not been removed.
Incorrect store or environment: If you are using multiple WooCommerce stores or environments (e.g., staging, production), make sure you are using the correct Coupon ID for the corresponding store or environment.
Troubleshooting
To resolve the woocommerce_rest_shop_coupon_invalid_id error when updating Coupon, follow these steps:
Verify that the ID provided in the action is correct and matches an existing Coupon.
Check your WooCommerce store’s resources to confirm that the Coupon exists and has not been deleted.
If you are using multiple stores or environments, ensure that you are using the correct Coupon ID for the intended store or environment.
woocommerce_rest_shop_order_invalid_id
This error is a WooCommerce error that occurs when an ID field is null, empty, or points to a non-existent Order.
This error occurs when using the Update Order action with an invalid or non-existent order ID. This error indicates that the provided order ID does not correspond to any existing WooCommerce order in your store.
There are a few potential causes for this error:
Incorrect ID: The most common cause is providing an incorrect ID. Double-check that the ID you are using matches an existing Order.
Deleted resource: If the Order was previously deleted from your WooCommerce store, attempting to update it will result in this error. Ensure the Order you are trying to update has not been removed.
Incorrect store or environment: If you are using multiple WooCommerce stores or environments (e.g., staging, production), make sure you are using the correct Order ID for the corresponding store or environment.
Troubleshooting
To resolve the woocommerce_rest_shop_order_invalid_id error when updating Order, follow these steps:
Verify that the ID provided in the action is correct and matches an existing Order.
Check your WooCommerce store’s resources to confirm that the Order exists and has not been deleted.
If you are using multiple stores or environments, ensure that you are using the correct Order ID for the intended store or environment.
woocommerce_rest_invalid_shipping_item
The woocommerce_rest_invalid_shipping_item error occurs when attempting to create an order shipping method, but the required Shipping Lines —> Method Id field is missing or invalid. This error indicates that the shipping method cannot be created or updated due to insufficient or incorrect data.
Troubleshooting
To resolve the woocommerce_rest_invalid_shipping_item error, follow these steps:
Verify that the Shipping Lines —> Method Id field is included in the request payload when creating a new shipping method.
Ensure the Method ID field contains a valid and existing shipping method ID from your WooCommerce store.
The woocommerce_rest_product_stock_management_disabled error occurs when attempting to use the Update Product Stock Quantity action on a product that does not have stock management enabled in WooCommerce. This error indicates that the product’s inventory settings are not configured to manage stock levels.
The error typically occurs when the Update Product Stock Quantity action is triggered for a product with the “Manage stock” option turned off in its WooCommerce inventory settings.
There are a few potential causes for this error:
Stock management not enabled: The most common cause is that the product’s inventory settings do not enable the “Manage stock” option. By default, WooCommerce products do not enable stock management unless explicitly turned on.
Incorrect product ID: This error will occur if the product ID provided in the Update Product Stock Quantity action does not match a product with stock management enabled. Ensure that the correct product ID is being used.
Product type incompatibility: Certain product types in WooCommerce, such as virtual or downloadable products, may not have stock management options. Attempting to update the stock quantity for these product types can result in the woocommerce_rest_product_stock_management_disabled error.
Troubleshooting
To resolve the woocommerce_rest_product_stock_management_disabled error, follow these steps:
Edit the affected product in your WooCommerce store’s admin area.
Navigate to the product’s “Inventory” tab in the “Product Data” section.
Ensure that the “Manage stock?” option is checked. This enables stock management for the product.
Save the product changes.
Retry the Update Product Stock Quantity action to ensure it can successfully update the product’s stock quantity.
If you have verified that stock management is enabled for the product, but the error persists, consider the following additional steps:
Double-check that the correct product ID is used in the Update Product Stock Quantity action.
Verify that the product type supports stock management. Stock management may not be applicable if the product is virtual or downloadable.
We and our partners process your personal data (such as browsing data, IP Addresses, cookie information, and other unique identifiers) based on your consent and/or our legitimate interest to optimize our website, marketing activities, and your user experience.