Skip to content

Order

Orders are an essential part in the eCommerce process. They represent an “order event” followed by its various stages, such as payment, fulfillment, or shipping.

For triggers, the Order resource is accessible in two separate ways in 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 a slightly different data fields.

Trigger Rules

A Trigger Rule defines an event (or multiple events) that will cause WooCommerce data to be sent to a Zapier Zap.

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

Order created

Triggers when an order is created.

Note

The Order created trigger rule will trigger for every order received (both paid and unpaid).

If you would like to trigger your Zap only when you receive a paid order, then consider using the Order paid trigger rule instead.

Order deleted

Triggers when an order is deleted (trashed).

Only the ID field is available

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

Order paid

Triggers when an order is paid for. Occurs for real-time payment gateways (such as Stripe, PayPal, or most other credit card gateways).

Tip for offline/deferred payment methods

The Order paid trigger rule will not typically fire for offline/deferred payment methods such as Direct Bank Transfer (BACS), Check/Cheque or Cash on Delivery (COD).

If you are using an offline/deferred payment method, you have several choices:

  • Use the Order created trigger rule, which will trigger for both paid and unpaid orders.
  • Use an Order status changed trigger rule, such as Order status changed to Processing or Order status changed to Completed.

Order restored

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

Order status changed

Order statuses are an important part of the order processing and fulfillment flow in WooCommerce. The following diagram shows the typical order status life cycle in WooCommerce:

WooCommerce Zapier Order Status Life Cycle

More details on the order status life cycle in WooCommerce can be found in the WooCommerce documentation.

The Order status changed (any status) trigger rule will trigger every time an order changes status to any status, including when an order is first created.

If you are interested in specific status change(s) only, you may wish to use a more specific Order status changed to … trigger rule.

Below is a full list of Order status changed trigger rules:

  • Order status changed (any status)
  • Order status changed to Cancelled
  • Order status changed to Completed
  • Order status changed to Failed
  • Order status changed to On hold
  • Order status changed to Processing
  • Order status changed to Refunded

WooCommerce Zapier Plugin Version 2.4 Required

Please ensure you update the WooCommerce Zapier plugin to version 2.4.0 or later in order to use these Trigger Rules.

WooCommerce Zapier version 2.4.0 renamed Order status changed to Order status changed (any status) to make it more clear that this trigger rule will trigger for any status change.

Order updated

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

Actions and Searches

An action is an event a Zap performs after it is triggered. Actions allow you to create new or update existing WooCommerce data from a Zap.

Searches let you find existing WooCommerce data in a Zap, and then use it later in a subsequent step.

The following actions are available for use in your Zaps to create, update or find orders.

Line-Item Enabled Data Fields: Coupon Lines, Fee Lines, Line Items, Meta Data, Shipping Lines, Refunds

To specify multiple values for these field(s), the values must be sent in a line-item aware format. Please see here for details on how the Line Itemizer can be used to achieve this.

Stock Quantity does not get updated by default

If WooCommerce manages product inventory, creating or updating an order via Zapier does not change stock quantity of the products in the order.

You will need to adjust it manually, for example, by adding the following steps to your Zap after the Create/Update Order step:

  1. Add an Looping by Zapier step to loop over each Line Item from the Order step.
  2. Add an Update Product Stock Quantity step to “Reduce Stock Quantity By” the total quantity each Line Item in the order.

Create Order

Creates a new Order in WooCommerce.

Create Input Fields

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

Update Order

Updates (modifies) an existing Order in WooCommerce.

Note: Resource ID is Required for Update Steps

An update action always requires a valid top-level ID to be specified. This ensures that your Zap knows which record to update. On the other hand, any non-top level ID is optional. If you leave it empty, WooCommerce will create a new entry, such as a new Meta Data item.

To help identify the correct Resource ID, you can add a Find step before your update step. The result of your Find step will contain the Resource ID, which you can then use in the Update step.

Update Input Fields

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

Find Order

Searches for an existing Order in WooCommerce. Optionally create one if none are found.

We recommend the using the following search fields:

  • Search: Searches the Billing Address, Shipping Address, Billing Last Name or Billing Email fields for the specified string/term/phrase.
  • Order ID: Searches for the specified (numeric) order ID.

Tip: Search Sort Order

Searches return the first result found, and make it available in your Zap’s subsequent action step.

Each search has a default sort order, so when definining your Search step, you can use the Order and Orderby fields to choose (for example) whether the most recent result or the oldest result is returned from your search.

Search Input Fields

NAME TYPE DESCRIPTION
Order Id string Limit search by ID.
Search string Limit results to those matching a string.
Modified After string Limit response to resources modified after a given ISO8601 compliant date.
Modified Before string Limit response to resources modified before a given ISO8601 compliant date.
Order string Order sort attribute ascending or descending.
Orderby string Sort collection by object attribute.
Parent array Limit result set to those of particular parent IDs.
Status array Limit result set to orders which have specific statuses.
Customer integer Limit result set to orders assigned a specific customer.
Product integer Limit result set to orders assigned a specific product.
Order Item Display Meta boolean Only show meta which is meant to be displayed for an order.
Include Meta array Limit meta_data to specific keys.
Exclude Meta array Ensure meta_data excludes specific keys.

Order Data

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

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

Tip

WooCommerce Zapier uses WooCommerce’s REST API. This means that data field names, descriptions and values can vary from one WooCommerce store to another.

Your store’s data, fields and trigger rules may be different to this documentation due any of the following:

  • Your installed (active) WordPress plugins and WooCommerce extensions.
  • Your WooCommerce and WordPress versions and the used locale/language.
  • Any custom code that overrides or changes how the WooCommerce/WordPress REST API operates.

Note: The field definitions in this documentation were generated using WordPress v6.3 and WooCommerce v8.0, with the en-US locale. The WooCommerce Bookings and WooCommerce Subscriptions plugins were enabled.


Last update: 2023-06-23