Skip to navigation

WooCommerce

Answer order status questions from your WooCommerce store with a webhook tool.

Your receptionist can look up a caller’s order in your WooCommerce store and tell them its status. A webhook tool searches your store’s orders through the WooCommerce REST API.

Orders contain customers’ names, addresses, phone numbers, and purchases. Your receptionist must confirm the caller is the customer before sharing anything. The tool description below makes it ask for both the order number and the email address on the order, and only discuss an order when both match.

Before you start

1

Check your store’s settings

Your store must use HTTPS, and pretty permalinks must be on: in WordPress, open Settings → Permalinks and choose any option other than Plain.

2

Create a read-only API key

In WordPress, open WooCommerce → Settings → Advanced → REST API and select Add key. Enter a description, such as “Reception”, pick a user, set Permissions to Read, and select Generate API key. Copy the Consumer key and Consumer secret; the secret is only shown once.

3

Build the header value

WooCommerce authenticates keys with HTTP basic auth. Build the header value on your computer:

printf 'CONSUMER_KEY:CONSUMER_SECRET' | base64

Create the webhook tool

Go to Integrations, select Add integration, and choose Webhook Tool.

FieldValue
Namefind_woocommerce_order
Description”Look up an order when a caller asks about it. First ask for the order number and the email address on the order, and have them spell the email. Only share details of an order whose number and billing email both match what the caller said. Otherwise, say you can’t find it and offer a callback.”
MethodGET
URLhttps://YOUR-STORE.com/wp-json/wc/v3/orders
Request HeadersAuthorization set to Basic followed by the encoded value
Query Parameterssearch (string, required): “The email address the caller gave.”
per_page (number, required): “Always the exact value 5.”
Assign to agentsReceptionist

Select Enable, then test your receptionist with a test order: ask about it with the right order number and email, then with a wrong email, and check that the second call gets no details.

The response includes every field of each order, including addresses. Add a rule or procedure for what your receptionist may share on the phone, for example only the status, the order date, and the tracking number.

Troubleshooting

ProblemWhat to check
WooCommerce returns 401Re-encode the header value. Some hosts strip the Authorization header before WordPress sees it; ask your host to pass it through.
404 rest_no_routeCheck the store address in the URL and that permalinks aren’t set to Plain.
Known orders aren’t foundThe search matches the billing details stored on the order. Check that the caller gave the email used at checkout.
A firewall or security plugin blocks itAllow requests to /wp-json/wc/ in the plugin or your host’s firewall.