What syncs
Orders
order.created / order.updated → crm_orders with line items.
Customers
customer.created / customer.updated → storefront_customers.
Reverse-sync
A CRM status → PUT /wp-json/wc/v3/orders/{id} with a Woo status.
Connection test
A system_status request confirms the store and access.
Reliability
- HMAC-SHA256 signature verification (X-WC-Webhook-Signature)
- Idempotent intake on externalId
- REST keys (consumer key/secret) for reverse-sync, separate from the webhook secret
- Workspace isolation on every request
Status mapping
Setup
- 1
Create a webhook secret
Add the WooCommerce adapter and copy the webhook URL.
- 2
Configure webhooks in Woo
In WooCommerce → Settings → Advanced → Webhooks set the URL and secret.
- 3
Add REST keys
For reverse-sync paste the store URL + consumer key/secret and test the connection.
Frequently asked questions
Is a Bearer token exposed to the browser?
No. Webhooks are HMAC-signed; reverse-sync uses REST keys only on the CRM side.
What is needed for reverse-sync?
A WooCommerce REST API key with Read/Write permissions to update order statuses.
Connect WooCommerce
Store orders and customers in your CRM.
Start for free