Resources · n8n integration

WooCommerce n8n integrationAutomate WooCommerce with n8n.

Your store fires an event, n8n picks it up and does the rest. The WooCommerce n8n integration exposes 15 operations across customers, orders and products, plus a trigger, the node that starts a workflow, listening to 12 events spread over 4 object families. Built for stores that already run on WordPress.

Verified Trustpilot reviews · AI, automation & growth agency

Why automate

What does the WooCommerce n8n integration actually cover?

The WooCommerce n8n integration pairs two nodes. The WooCommerce node talks to the REST API of your store and exposes 15 operations spread over 3 resources: customers, orders and products. The WooCommerce Trigger node sits at the start of a workflow and fires when the store reports one of 12 events. Both run on the same API key credential, so a single setup covers reading, writing and listening.

Start with orders, because that is where most stores lose hours. The trigger fires on order.created, the customer.get operation pulls the buyer behind that order, and one row lands in Google Sheets for the daily reconciliation. Put a condition on the order Status and the same workflow posts only the paid ones into Slack.

The catalog side runs the other way around. product.getAll with Return All switched on walks every page of the products endpoint, so a full export finishes inside one execution instead of a manual CSV. Narrow it with Stock Status or Min Price when only the out of stock references matter, then send the result into product.update to correct Stock Quantity in bulk.

Third pattern: keep the buyer list in one place. customer.created fires the moment someone registers on the store, customer.get returns the full record, and the contact goes to the CRM without anyone retyping an email address. Stores that also bill through Stripe or run a second storefront on Shopify often route both sources into the same workflow, so the contact list keeps one shape.

What the node leaves out is worth knowing before you build. There are 3 resources, and coupons are not one of them. The trigger reports coupon.created, coupon.updated and coupon.deleted, yet creating or editing a coupon has to go through the HTTP Request node, which calls any WooCommerce endpoint while reusing the same credential through predefined authentication. Same route for every part of the REST API the node does not expose.

Two details save debugging time later. The trigger has no wildcard value, so each event you want is selected one by one in the Event parameter, and following the whole coupon family means checking 3 of them. And required fields are thin: the customer operations ask for Customer ID or Email, product.create asks for Name, and nothing else is flagged, so Order ID and Product ID look optional in the interface while the operation cannot do anything without them. If n8n itself is still on trial, the n8n review goes through hosting and pricing in detail.

Connect

How do you connect WooCommerce to n8n?

  1. 01

    Prepare the WordPress side

    The credential talks to the WooCommerce REST API, so the plugin has to be installed on the WordPress site before anything else. Then open Settings > Permalinks in WordPress and set the permalink structure to anything other than Plain. n8n lists both as prerequisites for this credential, and neither can be done from inside n8n: they belong to the WordPress admin.

  2. 02

    Generate the API key in WooCommerce

    In the store admin, follow WooCommerce > Settings > Advanced > Rest API > Add key. Pick Read/Write in the Permissions dropdown: that is the level the credential expects, and anything narrower leaves the create, update and delete operations without permission. WooCommerce then shows a Consumer Key and a Consumer Secret. Copy both.

  3. 03

    Create the credential in n8n

    Open the Credentials menu in n8n, choose the WooCommerce API key credential and paste the Consumer Key and the Consumer Secret. The third field, WooCommerce URL, takes the URL of the WordPress site itself. A credential is created once and then appears in the dropdown of every WooCommerce node and every WooCommerce Trigger you add, on n8n Cloud as on a self-hosted instance.

Triggers

What can the WooCommerce Trigger listen to?

WooCommerce Trigger is the node that starts a workflow when something happens in WooCommerce. It listens to 12 events, listed below by family. Pick one or several, activate the workflow: n8n registers the webhook on your WooCommerce account.

What you see in n8n

Every event, by family

One row per object, one chip per action. The event to tick in the node is object.action; hover a chip to read exactly when it fires.

coupon.*3
  • coupon.
    • created
    • deleted
    • updated
customer.*3
  • customer.
    • created
    • deleted
    • updated
order.*3
  • order.
    • created
    • deleted
    • updated
product.*3
  • product.
    • created
    • deleted
    • updated

Configuration notes

01Set up the WooCommerce TriggerThe WooCommerce Trigger node starts the workflow in place of the WooCommerce node, and it ships at version 1 with a single parameter to fill in. Nothing here asks the store for news: WooCommerce is the one that calls n8n.

The WooCommerce Trigger node starts the workflow in place of the WooCommerce node, and it ships at version 1 with a single parameter to fill in. Nothing here asks the store for news: WooCommerce is the one that calls n8n.

Key parameters

  • Event: the only parameter of the node. It holds the 12 values the store can report, grouped over 4 object families, and there is no wildcard value, so every event you care about is selected explicitly.
When to use it
whenever a workflow has to react to the store instead of asking it. n8n registers a webhook, a URL that WooCommerce calls on its own, when you activate the workflow, and each event reaches the canvas a few seconds later.
Use cases
a checkout that pings the warehouse, a catalog change that refreshes a marketplace feed, a new account that opens an onboarding sequence.
02order.* eventsThree of the 12 values follow an order through its life: order.created when a checkout goes through, order.updated on any change to the record including a new Status, and order.deleted when the order leaves the store.

Three of the 12 values follow an order through its life: order.created when a checkout goes through, order.updated on any change to the record including a new Status, and order.deleted when the order leaves the store.

Key parameters

  • Event: check the 3 order values to cover the whole lifecycle, or keep only order.updated when the point is to watch status changes rather than new sales.
When to use it
for anything that has to happen after money moves. The payload arrives with the order, so a follow-up order.get is only needed when the workflow runs much later and the record may have changed.
Use cases
a shipping label prepared as soon as an order switches to Processing, an accounting row written on Completed, a cleanup routine that reacts when an order is deleted.
03customer.* eventsThe customer family also counts 3 values: customer.created at registration, customer.updated when the record changes, and customer.deleted when the account goes away.

The customer family also counts 3 values: customer.created at registration, customer.updated when the record changes, and customer.deleted when the account goes away.

Key parameters

  • Event: customer.created alone is enough for onboarding. Add customer.updated when a downstream tool has to stay aligned with the billing address or the name held in WooCommerce.
When to use it
when the customer list has to exist somewhere other than WordPress. The event carries the record, so the identifier it contains feeds customer.get or customer.update through an expression, the {{ }} syntax n8n uses to read a field from the incoming item, with no extra lookup step in between.
Use cases
a welcome email sent on registration, a CRM contact kept in sync with the shipping address, a notification when a deletion request is processed in the store.
04product.* eventsOn the catalog side, product.created, product.updated and product.deleted report what happens to a reference, whatever changes it: a price, a stock level, a category or the product itself.

On the catalog side, product.created, product.updated and product.deleted report what happens to a reference, whatever changes it: a price, a stock level, a category or the product itself.

Key parameters

  • Event: product.updated is the noisy one, because it fires on every edit. Pair it with a condition on the field you actually watch, Stock Quantity or Regular Price, before the workflow does anything.
When to use it
when the catalog lives in more than one place. A store that also publishes on a marketplace, a feed or a spreadsheet uses these 3 values to push the change instead of re-exporting everything.
Use cases
an alert when a reference goes out of stock, a price change mirrored to a comparison feed, an internal log of who edits the catalog and when.
05coupon.* eventsThe fourth family covers promotions: coupon.created, coupon.updated and coupon.deleted. It is the family where the two nodes stop matching, since the WooCommerce node has 3 resources and coupon is not among them.

The fourth family covers promotions: coupon.created, coupon.updated and coupon.deleted. It is the family where the two nodes stop matching, since the WooCommerce node has 3 resources and coupon is not among them.

Key parameters

  • Event: the 3 coupon values are read-only as far as this integration goes. A workflow can hear about a coupon, then has to reach the API another way to change one.
When to use it
to keep an eye on the discounts that exist in the store. To create a code from a workflow, the HTTP Request node calls the matching WooCommerce endpoint with the same credential through predefined authentication.
Use cases
a message in a channel each time a code is created, an internal record of active promotions, an alert when a coupon disappears before its campaign ends.
Actions

What can the WooCommerce node do?

The WooCommerce node exposes 15 operations across 3 resources. For each one: the node as you configure it in n8n, the required fields, and our field notes.

Resources × operations matrix
ResourceCreateGetGet ManyUpdateDelete
Customer✓✓✓✓✓
Order✓✓✓✓✓
Product✓✓✓✓✓

Customer

5 operations
01

Create a customer

customer.create

What you see in n8n

Notes & use cases

Creates the customer record in WooCommerce and returns it with the identifier every other customer operation asks for later.

Key parameters

  • Email (required): the address the account is attached to, often {{ $json.email }} when the item comes from a form or an earlier node.
  • Additional Fields: 7 optional fields, among them First Name, Last Name, Username, Password, Billing Address and Shipping Address.
Use cases
import a member list into a store that sells to a closed audience, or open the account as soon as a lead completes a form.
02

Delete a customer

customer.delete

What you see in n8n

Notes & use cases

This operation takes one identifier and removes the matching account from the store. There is no second parameter and no filter, so the branch that calls it deserves a condition in front.

Key parameters

  • Customer ID (required): the ID of the customer to delete, not the email address. On a customer.* event, read it from the payload with {{ $json.id }}.
Use cases
handle an account removal request that arrives through a form, or clear the test accounts created while the store was being built.
03

Get a customer

customer.get

What you see in n8n

Notes & use cases

Pulling one customer back is the usual second step after an order event, because the order payload names the buyer by identifier and not much more.

Key parameters

  • Customer ID (required): the ID of the customer to retrieve. Coming from an order, that is the Customer ID carried by the order itself.
Use cases
enrich an order notification with the buyer name and address before it reaches a channel, or check what the store holds on a contact before a support reply goes out.
04

Get many customers

customer.getAll

What you see in n8n

Notes & use cases

Listing is where Return All earns its place: on, n8n chains the pages of the API until the customer base is complete.

Key parameters

  • Return All: off, the node stops at Limit, the maximum number of customers to return.
  • Filters: 3 fields, Email to look up one address, Order By among ID, Include, Name and Registered Date, and Sort Order for Ascending or Descending.
Use cases
export the list of accounts registered recently by sorting on Registered Date, or rebuild a mailing audience from the store rather than from an old file.
05

Update a customer

customer.update

What you see in n8n

Notes & use cases

Editing an existing record works field by field: only what you add to the collection is sent, the rest of the customer stays untouched.

Key parameters

  • Customer ID (required): the ID of the customer to update.
  • Update Fields: 6 fields, including First Name, Last Name, Billing Address, Shipping Address, Password and Metadata.
Use cases
write back a corrected shipping address after a delivery failure, or store a loyalty tier in Metadata so the rest of the stack can read it from the store.

Order

5 operations
06

Create an order

order.create

What you see in n8n

Notes & use cases

Orders can be born outside the checkout, and that is what this operation is for: a phone sale, a subscription renewal, an order placed by a salesperson.

Key parameters

  • Line Items: the products on the order, each with a Product ID, a Quantity and, when needed, a Variation ID.
  • Additional Fields: 9 fields, among them Customer ID (0 for a guest), Status, Currency, Payment Method Title and Set Paid, which marks the order as paid, moves the status to Processing and reduces the stock.
Use cases
turn a signed quote into a real order, or replay an order that failed at checkout without asking the buyer to start over.
07

Delete an order

order.delete

What you see in n8n

Notes & use cases

Test orders pile up after a launch, and this is the operation that clears them out of the reports.

Key parameters

  • Order ID: the order to remove. The node does not flag it as required, which is misleading: without it the operation has no target, so fill it in, usually from {{ $json.id }}.
Use cases
clean up the orders created while payment was being tested, or remove a duplicate spotted by a deduplication step earlier in the workflow.
08

Get an order

order.get

What you see in n8n

Notes & use cases

After a webhook fires, the payload is not always the freshest version of the record. Reading the order again gives the workflow the current state.

Key parameters

  • Order ID: the order to retrieve. Like the other order operations, it is not marked as required even though nothing works without it.
Use cases
re-read an order before updating it at the end of a long workflow, or look up a reference typed into a support form to show the agent what was actually bought.
09

Get many orders

order.getAll

What you see in n8n

Notes & use cases

Reporting starts here. The 9 options of this operation turn a raw list into the exact slice a dashboard needs.

Key parameters

  • Return All: on, every page is fetched; off, Limit caps the number of orders returned.
  • Options: After and Before take an ISO 8601 date to frame a period, Status keeps a single state such as Completed or Refunded, and Customer or Product restrict the set to one buyer or one reference.
Use cases
build the weekly revenue recap by combining After, Before and a Completed Status, or list everything still pending to chase the unpaid ones.
10

Update an order

order.update

What you see in n8n

Notes & use cases

Most order automations end on this operation, because changing the status is what makes the rest of the store move.

Key parameters

  • Order ID: the order to modify, not flagged as required by the node.
  • Update Fields: 8 fields, with Status among Pending, Processing, Completed, Cancelled, Refunded and the rest, plus Transaction ID, Customer Note and Payment Method Title.
Use cases
move an order to Completed once the carrier confirms delivery, or write the payment reference into Transaction ID so the accounting export matches the bank statement.

Product

5 operations
11

Create a product

product.create

What you see in n8n

Notes & use cases

Adding a reference from a spreadsheet row is the classic use, and the node accepts far more than a name: 33 additional fields describe the product.

Key parameters

  • Name (required): the product name, the only field the operation refuses to run without.
  • Additional Fields: Regular Price and Sale Price, SKU as the unique identifier, Type among Simple, Grouped, External and Variable, Status to publish or keep a draft, plus Stock Quantity and Stock Status.
  • Images: each image takes an Src URL and an Alt text.
Use cases
publish a supplier catalog received as a file, or create the reference as a draft and let a human validate the description before it goes live.
12

Delete a product

product.delete

What you see in n8n

Notes & use cases

Retiring a reference comes down to one field. The operation removes the product and everything the store shows about it.

Key parameters

  • Product ID: the product to delete. The node leaves it optional, so a workflow that forgets the expression fails silently on an empty value.
Use cases
drop the end of season references listed in a file, or remove a product created by mistake during a bulk import instead of hiding it.
13

Get a product

product.get

What you see in n8n

Notes & use cases

Before promising a delivery date or applying a discount, a workflow usually needs the current state of the reference rather than the one cached somewhere else.

Key parameters

  • Product ID: the product to read. On a product.* event, the identifier comes straight from the payload.
Use cases
check Stock Quantity before confirming an order by email, or read Regular Price ahead of a repricing step so the workflow knows what it is changing.
14

Get many products

product.getAll

What you see in n8n

Notes & use cases

Catalog exports and price audits both go through this operation, and its 17 options are what keep the result usable.

Key parameters

  • Return All: on for a complete catalog, off to stop at Limit.
  • Options: Category Name or ID and Tag Name or ID narrow the set, Stock Status isolates In Stock, Out Of Stock or On Back Order, Min Price and Max Price frame a range, and SKU or Slug find one reference.
Use cases
send the out of stock references to a channel every morning, or export the full catalog to compare it with what a marketplace displays.
15

Update a product

product.update

What you see in n8n

Notes & use cases

Repricing, restocking and unpublishing all land on the same operation, which accepts 34 fields and changes only the ones you fill in.

Key parameters

  • Product ID: the product to modify, again not marked as required.
  • Update Fields: Regular Price and Sale Price with Date On Sale From and Date On Sale To to schedule a promotion, Stock Quantity and Stock Status for inventory, and Status to move a reference between Publish, Draft, Pending and Private.
Use cases
align stock levels with the warehouse system every night, or set a sale price on a list of references for a campaign and roll it back afterwards.
Need help

Need help automating WooCommerce with n8n?

A person reads every message.

FAQ

WooCommerce and n8n: the questions that come next

01Is the WooCommerce n8n integration free?
Yes on the n8n side. The WooCommerce node and the WooCommerce Trigger ship with n8n, so there is nothing to install and no extra cost, whether you use n8n Cloud or a self-hosted instance under the Community Edition and its Sustainable Use license. A workflow behaves the same way in both cases, and a credential created once is reused everywhere. What you keep paying for is your own WordPress hosting and whatever the store already runs on, and that side is unaffected by connecting n8n. The API key itself is generated from the store admin at no cost.
02What credentials does the WooCommerce node need?
One API key credential, shared by the node and the trigger. Generate it in the store admin under WooCommerce, Settings, Advanced, Rest API, Add key, with the Permissions dropdown set to Read/Write. Copy the Consumer Key and the Consumer Secret into n8n, then add the WooCommerce URL, which is the address of the WordPress site. Two prerequisites come first: the WooCommerce plugin installed on WordPress, and permalinks set to any structure other than Plain. If the connection fails with a consumer key is missing error, turn on Include Credentials in Query so the key and the secret travel as query string parameters.
03What are the limits of the WooCommerce node in n8n?
It covers 3 resources: customers, orders and products. Coupons exist on the trigger side, with coupon.created, coupon.updated and coupon.deleted, but there is no coupon resource on the node, so creating or editing one goes through the HTTP Request node, which reaches any WooCommerce endpoint while reusing the same credential. Listing operations stop at Limit unless Return All is on, in which case n8n chains the pages of the API for you. Last point to watch: the order and product operations flag almost nothing as required, so Order ID and Product ID look optional in the interface while the operation needs them.
04Does the WooCommerce Trigger react in real time?
Yes. It works by webhook, which means WooCommerce calls n8n rather than n8n asking WooCommerce. When you activate the workflow, n8n registers its URL with the store, and each event reaches the workflow within seconds, without n8n ever asking the store for news. The Event parameter holds the 12 values, grouped over 4 families, and there is no wildcard, so every event you want has to be selected. One consequence to plan for: the webhook only exists while the workflow is active, so a workflow left switched off receives nothing from the store.
05n8n or Make for WooCommerce?
It depends on where the data should sit and how you want to pay for it. Make is hosted by Make, with no self-hosting option, and billed per operation, so a busy store that fires order.updated on every status change makes the meter run. n8n runs on Cloud or on your own server, which keeps order and customer payloads inside infrastructure you control, and both platforms build workflows visually. Choose Make if you never want to touch a server. Choose n8n if hosting, data control and predictable cost matter more. The longer comparison sits in the n8n review linked further up this page.