How to connect WooCommerce to the portal: one-click connect, orders, stockBeta
This integration is in beta: it follows the marketplace's official documentation, errors are possible — check orders and stock in the marketplace's seller account.
You connect a WooCommerce store with one button: you approve access on your store's website and the API keys are created automatically. The portal pulls orders onto your kanban in the store's currency, keeps variation stock in sync with your finished goods warehouse, and sends the order status and tracking number back to the store. Anything that changes data in your store is off by default and is switched on with toggles in the connection settings.
1. What the integration does
| Feature | Status | What you need |
|---|---|---|
| One-click connection ("Connect store") | works | A store address on HTTPS and store administrator rights |
| Manual connection with keys | works | Consumer key and Consumer secret from the WooCommerce settings |
| Importing orders to the kanban and updating statuses | works | Nothing |
| Order total in the store currency, converted to your workshop currency | works | Nothing |
| Packing from finished goods stock with automatic stock write-off | works | Link the product or variation to a warehouse item by SKU |
| Product and variation stock | works, enabled in settings | The "Stock" toggle |
| Prices | works, enabled in settings | The "Prices" toggle |
| "Completed" status and tracking number sent to the store order | works, enabled in settings | The "Order actions" toggle |
| Order notifications from the store | works | Nothing: the portal sets them up when you connect |
| Shipping labels and carrier booking | not yet | Arrange shipping separately |
This integration is in beta. It has not yet been verified against a live store and was built to the official WooCommerce REST API specification.
2. Before you start
- A WooCommerce store with an HTTPS address. The portal does not accept http:// addresses or private addresses (internal network, localhost).
- "Pretty" permalinks turned on: without them the store's REST API is not available.
- Store administrator rights: only an administrator can create the keys.
- The Web Plus plan: the "Marketplaces" section is available on it (currently in beta).
- The marketplace connections permission for your role in the workshop.
- SKUs on your products and variations: the portal uses them to match order lines to warehouse items.
3. Connect with one button
- Open "Marketplaces" → "Connections" and click "Connect" next to WooCommerce.
- Enter your store address, for example
https://shop.example.com. - Check the store's country, currency and time zone. The portal fills in some values itself after connecting, and you can correct the rest in the connection settings.
- Click "Connect store". Your store's website opens on the WooCommerce access approval page: click "Approve".
- The store sends you back to the portal and you see a confirmation that the store is connected. The keys were created in the store and the portal saved them in encrypted form.
The approval link works once and is valid for 15 minutes. If it expires, start again.
Connect manually
Use this if your store's approval page is unavailable (for example, a site firewall blocks it).
- In your store: WooCommerce → Settings → Advanced → REST API → "Add key".
- Enter a description (such as "Portal"), choose an administrator user and set the permissions to "Read/Write". Click "Generate API key".
- Copy the Consumer key and the Consumer secret. The Consumer secret is shown only once.
- In the portal's connection form, click "Enter keys manually" and paste the store address and both keys.
The keys are saved only after the portal successfully checks the connection to your store.
4. Connection settings
- Requests via the server in Finland. Turn this on if your store blocks Russian IP addresses or does not respond to the portal directly. Requests then go through our proxy server. If your store uses an IP allowlist, support will give you the proxy address.
- Keys in the request URL. Turn this on if your hosting strips the Authorization header and the portal gets a 401 error even though the keys are correct. The keys are then sent as URL parameters, over HTTPS only.
- Country, currency and time zone. By default they are taken from the store. The currency determines how order totals are labelled. Changing the currency does not recalculate orders that are already loaded.
- Writing to the marketplace. "Stock", "Prices" and "Order actions": each toggle enables one kind of write to your store.
5. Orders
| Status in WooCommerce | Kanban column |
|---|---|
| Pending payment, On hold | Negotiation |
| Processing | New order (for items from finished goods stock: "Packing") |
| Completed | Done |
| Cancelled, Failed | Cancelled |
| Refunded | The column does not change; an entry appears on the "Returns" tab |
- Currency. The order total is stored in the store currency. In the order card, the warehouse and finance it appears in your workshop currency, at an exchange rate that is fixed once, when the order first appears in the portal.
- Stock. If a line is linked to a warehouse item and there is enough of it, the order goes to "Packing" and the stock is written off once. If the order is cancelled, the stock is returned once. A refund after completion does not move stock: you decide manually whether the goods came back.
- Variations. Stock is tracked separately for each variation, by its SKU.
- Updates. New orders and changes arrive as store notifications within seconds. The portal also polls the store on a schedule, so a lost notification breaks nothing.
Sending the status and tracking number: on the order page, the "Pack" button sets the store order to "Completed" and adds a customer note with the tracking number. It works when the "Order actions" toggle is on. You can see the result in the "Log".
6. Stock and prices
- Stock is sent to the store when something happens: after a sale, a write-off, or an edit of the item quantity. Variations are updated separately. Stock management is switched on for the product in the store.
- If the stock is undefined (the product is not linked to the warehouse), the portal leaves the stock in your store alone, so a zero is never sent by mistake.
- The price goes to the "Regular price" field. A price below cost is not sent.
7. Limitations
- HTTPS and a working store REST API are required.
- This version has no shipping labels or shipping purchase.
- This integration has not yet been verified against a live store.
- If your store is behind Cloudflare or another bot protection, allow requests from the portal's address or turn on "Requests via the server in Finland".
8. Common errors
| Error | Cause | What to do |
|---|---|---|
| Could not start connecting the store | The address is not HTTPS or is private | Enter a public address starting with https:// |
| The store did not return keys | Access was not approved or the link expired | Start the connection again, or enter the keys manually |
| 401 error with correct keys | Your hosting strips the Authorization header | Turn on "Keys in the request URL" |
| The store does not respond | The store blocks the portal's addresses | Turn on "Requests via the server in Finland" |
| Stock does not change | "Stock" is off or the product is not linked to the warehouse | Turn the toggle on and link the product by SKU |
9. Security
- The Consumer key and Consumer secret are stored encrypted and are not shown after saving.
- Notifications from the store are signed: the portal accepts only those signed with your connection's secret.
- Writing to the store is enabled separately: by default the portal only reads.
- You can pause or disconnect the connection, and you can revoke the key in your store.
- Permissions: "Marketplace orders", "Marketplace listings", "Marketplace finance".
10. Changes
- 26.10.2026: first version of the guide.