WooCommerce Integration

Updated Oct 20, 20266 min read
English
On this page

Connect WooCommerce to surface every customer's order history in their Deskwoot conversation. Agents see orders, tracking, refunds and totals without switching to the WordPress admin. One-time setup with WooCommerce API keys (Consumer Key + Secret). Conversations from contacts who match a WooCommerce customer (by email) auto-link their orders. Available on every plan.

The WooCommerce integration in Deskwoot pulls customer order history, product purchases, and account details into the conversation sidebar, so agents and the AI bot can answer order questions in context. Setup uses a WooCommerce API key generated in your store's admin panel. Your support agents get full context without switching tabs, and your AI bot can reference order information when answering customer questions. This guide walks you through setup, what to expect once connected, and how to troubleshoot common issues.

Generating API Keys in WooCommerce

  1. In your WordPress admin, navigate to WooCommerce > Settings > Advanced > REST API.
  2. Click Add Key.
  3. Enter a description (e.g. Deskwoot Integration), select a user with admin privileges, and set permissions to Read/Write if your team should refund and cancel orders from Deskwoot, or Read if you only want to see orders.
  4. Click Generate API Key.
  5. Copy both the Consumer Key and Consumer Secret immediately. They are only shown once.

Tip: Store the keys somewhere secure before closing the page. If you lose them, you'll need to generate a new pair.

Connecting in Deskwoot

  1. In Deskwoot, go to Settings > Integrations > WooCommerce.
  2. Enter your WooCommerce site URL (e.g. https://yourstore.com), the Consumer Key, and the Consumer Secret.
  3. Click Connect.

Deskwoot will verify the connection by fetching a test request from your store. Once verified, order and customer data will begin appearing in your workspace.

Order History in Conversations

Once connected, the Orders section in the conversation's Details tab shows the customer's 10 most recent orders, including order number, status, total amount, and date. Click any order to see line items, shipping address, and tracking information (tracking needs the free WooCommerce Shipment Tracking plugin). Orders are matched by the customer's email address. With a Read/Write key the section also offers Refund, Cancel order and Mark shipped.

Customer Data Sync

Deskwoot imports your WooCommerce customers as contacts when you connect and then once a day, including name, email, phone, company, city and country, and total spend. This data enriches contact profiles and helps agents provide personalised support.

AI Bot Context

When the AI bot is enabled, it automatically receives order context for the current customer. This allows it to answer questions like "Where is my order?" or "What did I order last time?" without agent intervention.

When a visitor who is not verified asks where an order is, Fynn asks for the order number and the postal code of the shipping address (or of the billing address when the order has none). This works for every order in your store, also one placed before you connected it: an order Deskwoot has not stored yet is looked up live in WooCommerce. When number and postal code do not match, Fynn asks the customer to check both, and then offers to verify them by email instead. Fynn needs Orders & transactions (via Shopify/Stripe/WooCommerce) switched on under Data Access in the bot settings (Settings > Bots).

Troubleshooting

  • Connection fails during verification: Double-check that your site URL includes https:// and does not have a trailing slash. Confirm the REST API is accessible and not blocked by a security plugin or firewall rule.
  • No orders appear in the sidebar: Ensure the customer's email address in the conversation matches the email on their WooCommerce account. Orders are matched by email, so mismatches will result in missing data.
  • Permission errors: Verify the API key was created with a user that has admin privileges. Refunds and cancellations from Deskwoot need permissions set to Read/Write.

Best Practices

  • Use a dedicated WordPress user account for the API key so you can revoke access without affecting other integrations.
  • Choose Read if you only want to see orders in Deskwoot. Choose Read/Write only if your team should refund, cancel or mark orders shipped from Deskwoot.
  • Periodically review your WooCommerce REST API keys and remove any that are no longer in use.

Frequently asked questions

How quickly does order data appear in Deskwoot?
Order data is fetched in real time when a conversation is opened, so agents always see the most current information.
Is my WooCommerce data secure?
Deskwoot communicates with your store over HTTPS using the API credentials you provide. The keys are stored encrypted. With a Read key no changes can be made to your store through the integration; with a Read/Write key your team can refund, cancel and mark orders shipped.
How do I create WooCommerce API keys?
WordPress admin → WooCommerce → Settings → Advanced → REST API → Add key. Permission level Read/Write if your team should refund and cancel orders from Deskwoot, Read if you only want to see orders. Copy Consumer Key + Secret.
What data shows up in the conversation panel?
Customer's last 10 orders with status, total, line items, tracking number, refund history. Click an order to expand for full details. Visible in the Orders section of the Details tab in every conversation from a matching contact.
Can agents trigger refunds from Deskwoot?
Yes, with a Read/Write key. The Orders section in the conversation's Details tab has Refund, Cancel order and Mark shipped. Fynn can also cancel orders and issue refunds once you allow these actions under Settings → Bots. They are off by default, and the bot verifies the customer and asks for confirmation first.
Does it sync customer data both ways?
Customer data flows from WooCommerce to Deskwoot only. Changes to a contact in Deskwoot don't push back to WooCommerce. Order actions (Refund, Cancel order, Mark shipped) do change the order in your store when you use a Read/Write key.
How does Deskwoot match a contact to a WooCommerce customer?
By email. Same email = same person. If a customer used different emails (e.g. one for checkout, one for support), they appear as separate records. Merge in Deskwoot if needed.
Will historical orders appear immediately after connecting?
Yes. The Orders section reads your store live, so existing orders show right away. When you connect, Deskwoot also registers order webhooks in your store, so new and changed orders arrive in real time.
What if I have multiple WooCommerce stores?
A workspace connects one WooCommerce store. Connecting a different store replaces the current one and its orders.
Can the AI bot use order data in its replies?
Yes. The bot can reference 'Your order #12345 was shipped on...' as part of its answer. Order data is available to the bot's context for matching contacts.
Does this work with WooCommerce Subscriptions?
Deskwoot reads WooCommerce orders. It does not read the subscriptions themselves, so a subscription's status is not shown.
What about WooCommerce on a staging site?
Each WooCommerce installation (production or staging) needs its own API key. Connect production for live customer support; staging is rarely useful since real customers aren't on it.
How is this different from the Shopify integration?
Same shape, different platform. WooCommerce runs on your WordPress; Shopify is hosted by Shopify. The Deskwoot side is identical: contact → orders panel in the conversation sidebar.

Was this guide helpful?

Keep reading

Ask Fynn about this guide

Get a short answer from this guide and the rest of the help center.

Still need help?

Fynn answers from these guides in the chat, and you can reach the team there too.

Email us