Platform
Chatbot Builder Bulk Messaging Team Inbox Mini CRM API & Webhooks AI Integration WhatsApp Flows
Industries
E-commerce & D2C Real Estate Education Healthcare Finance & BFSI Logistics Hospitality Retail
Integrations
Learn
Learning Hub Help & Docs Connect Guides Automation Codex Blog Message Templates
Pricing Get Started →
HomeConnect › Connect Wix to WhatsApp
Wix Integration Guide · E-commerce

Connect Wix to WhatsApp

Pull live order data from your Wix store into a WhatsApp chatbot. When a customer sends their order ID, your bot calls the Wix eCommerce Orders API, fetches the current status and total, and replies in seconds.

Published 22 June 2026  ·  8 min read  ·  E-commerce

Before following this guide, read the External API Request step foundation guide. It explains every field in the step interface so this guide can stay focused on Wix-specific values.

Step 1: Generate a Wix API key

Wix uses an account-level API key paired with a Site ID for authentication. The key is generated in the Wix Account API Keys Manager.

1
Go to manage.wix.com/account/api-keys and sign in with your Wix account.
2
Click Generate API Key. Give it a name like "WA.Expert Integration".
3
Under permissions, find eCommerce and enable Read access (for order lookup, write access is not needed).
4
Click Generate. Copy the API key immediately. It is shown only once.
API key shown once only

Like Shopify and Stripe, Wix displays your API key exactly once at generation. Copy it before closing the page. If you lose it, delete the key and generate a new one.

Step 2: Find your Wix Site ID

Your Site ID tells the Wix API which store to query. Two ways to find it:

A
From the dashboard URL: open your Wix site's dashboard. The URL looks like manage.wix.com/dashboard/1a2b3c4d-xxxx-xxxx-xxxx-xxxxxxxxxxxx/home. The long alphanumeric string between /dashboard/ and /home is your Site ID.
B
From the API: call GET https://www.wixapis.com/site-properties/v4/properties with your API key and wix-account-id header. The response includes your site ID.
Official docs

Wix API Keys Manager: dev.wix.com/docs/rest/articles/authentication/api-keys

Step 3: Fill in the External API Request step

In your WA.Expert chatbot flow, collect the customer's Wix order ID and store it as {{order_id}}. Then add an External API Request step with these values:

External API Request Step — WA.Expert
Select Method
GET
Request URL
https://www.wixapis.com/ecom/v1/orders/{{{{order_id}}}}
Select Auth Type
No Auth (authentication goes in Header Parameters below)
Header Parameters
Authorizationyour-wix-api-key-here
wix-site-id1a2b3c4d-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Content-Typeapplication/json
Select Body Type
None (GET requests carry no body)
Choose Response Type
JSON

Field-by-field breakdown

FieldValueNotes
Select MethodGETReading an existing order.
Request URLhttps://www.wixapis.com/ecom/v1/orders/{{{order_id}}}Fixed Wix API base URL. {{{order_id}}} is the variable from the previous chatbot step.
Select Auth TypeNo AuthAuth is in the header parameters below, not a built-in OAuth flow.
Authorizationyour-wix-api-keyPaste the API key generated in Step 1. No 'Bearer' prefix needed for Wix API keys.
wix-site-id1a2b3c4d-...Your Site ID from Step 2. This tells the Wix API which store to query.
Content-Typeapplication/jsonInclude on all Wix API requests.
Select Body TypeNoneGET requests carry no body.
Choose Response TypeJSONWix returns structured JSON.
Two headers required: both are mandatory

Wix API keys are account-level and can cover multiple sites. The wix-site-id header is not optional: without it, the API returns a 400 error because it cannot determine which site's orders to look up.

Step 4: Map the response to WhatsApp variables

A successful Wix order response looks like this:

Wix eCommerce Orders API — GET /ecom/v1/orders/{id} response (abbreviated)
{
  "order": {
    "id": "a1b2c3d4-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "number": 1023,
    "status": "APPROVED",
    "fulfillmentStatus": "NOT_FULFILLED",
    "paymentStatus": "PAID",
    "createdDate": "2026-06-20T10:30:00.000Z",
    "priceSummary": {
      "total": {
        "amount": "1299.00",
        "currency": "INR"
      }
    },
    "buyerInfo": {
      "contactDetails": {
        "firstName": "Priya",
        "lastName": "Sharma",
        "phone": "+919820000001"
      }
    },
    "lineItems": [
      {
        "productName": {
          "original": "Classic Cotton Kurta"
        },
        "quantity": 2,
        "price": {
          "amount": "649.50"
        }
      }
    ]
  }
}

Map these response paths to variables in the External API Request step:

Variable nameResponse pathExample value
order_numberorder.number1023
order_statusorder.paymentStatusPAID
fulfilment_statusorder.fulfillmentStatusNOT_FULFILLED
order_totalorder.priceSummary.total.amount1299.00
customer_nameorder.buyerInfo.contactDetails.firstNamePriya
item_nameorder.lineItems[0].productName.originalClassic Cotton Kurta
item_qtyorder.lineItems[0].quantity2

Wix uses uppercase status values: paymentStatus can be PAID, PENDING, PARTIALLY_PAID, UNSPECIFIED. fulfillmentStatus can be NOT_FULFILLED, PARTIALLY_FULFILLED, FULFILLED. Map these to plain-English labels in your WhatsApp reply.

Keep the WhatsApp reply in the free service window

If the customer messaged you first within the last 24 hours, your reply is a free service conversation. Send the order status in that window. If initiating a proactive update, use an approved Utility template at Rs. 0.115 per message.

Worked example: order status chatbot

Chatbot flow — Wix order lookup
1. Bot: "Please send your Wix order ID.
   You can find it in your confirmation email."

2. Customer replies: a1b2c3d4-xxxx-xxxx-xxxx-xxxxxxxxxxxx

3. Bot stores value as {{order_id}}

4. External API Request step fires:
   GET https://www.wixapis.com/ecom/v1/orders/a1b2c3d4-xxxx-xxxx-xxxx-xxxxxxxxxxxx
   Authorization: your-wix-api-key
   wix-site-id: 1a2b3c4d-xxxx-xxxx-xxxx-xxxxxxxxxxxx

5. Response mapped:
   order_number      = "1023"
   order_status      = "PAID"
   fulfilment_status = "NOT_FULFILLED"
   order_total       = "1299.00"
   customer_name     = "Priya"
   item_name         = "Classic Cotton Kurta"

6. Bot replies:
   "Hi Priya, here is your order update:
   Order #1023
   Payment: Paid
   Fulfilment: Preparing for dispatch
   Item: Classic Cotton Kurta (x2)
   Total: Rs. 1,299.00"

Troubleshooting

SymptomLikely causeFix
401 UnauthorizedInvalid or missing API keyRe-check the Authorization header. The Wix API key goes directly as the value, with no 'Bearer' prefix.
400 Bad Request: missing site contextwix-site-id header missingAdd the wix-site-id header with your Site ID. Both headers are required for every request.
404 Not FoundOrder ID does not exist on this siteConfirm the customer sent the correct full UUID-format order ID. Add a fallback branch for empty responses.
403 ForbiddenAPI key lacks eCommerce read permissionReturn to manage.wix.com/account/api-keys, edit the key, add eCommerce read scope, regenerate.
Uppercase status confusing customersWix returns PAID, NOT_FULFILLED etc.Add a conditions step before the reply to translate: if order_status equals PAID, set a readable_status variable to 'Paid'. Then use readable_status in the reply.
Order ID is a long UUID customers cannot findWix order IDs are machine-generatedAdd a fallback option: let customers send their order number instead (e.g. 1023), then search: POST /ecom/v1/orders/search with filter number equals that value.

Common questions

Where do I find my Wix API key and Site ID?
+
Your API key is at manage.wix.com/account/api-keys. Your Site ID is in your Wix dashboard URL between /dashboard/ and the next slash.
Why does Wix need two headers when Shopify only needs one?
+
Wix API keys are account-level and can cover multiple sites. The wix-site-id header tells the API which store to query. Without it, Wix returns a 400 error.
What permissions does my Wix API key need?
+
For order lookup, enable eCommerce read access when generating the key. Write access is not needed.
Where does the customer find their Wix order ID?
+
It is in the confirmation email as a long alphanumeric UUID. Alternatively, use the Search Orders endpoint with the customer's email or order number to retrieve the ID programmatically.
Does this work for Wix Stores and Wix eCommerce?
+
Yes. The Wix eCommerce Orders API covers both platforms. The endpoint and authentication are identical for both.
Does this incur extra WA.Expert charges?
+
The External API Request step counts as one automation action. On the Complete plan this is included. On Starter, extra action packs apply from Rs. 49 per 1,000 actions. The Wix API is free to use.

Build your Wix order bot today

Free trial, no credit card required. And if you ever get stuck, we are the only platform in India that answers you live on WhatsApp.

Start Free Trial → Book a Demo
1