Linnworks Integration

How the POS connects to your Linnworks account, what permissions it needs, and what to do when something looks off.

The two ways the POS talks to Linnworks

  1. Embedded iframe mode (when launched from Linnworks → Apps → Trade Order POS)
    • Linnworks passes a session token on every iframe load; the POS authenticates it against the Linnworks API
    • The authenticated session is cached for up to 25 minutes
    • If the app is left open for longer without activity, the next action will show a "session expired" message — simply reload the app from inside Linnworks to get a fresh session
  2. Install-token mode (when signed in via the standalone web app)
    • You paste the long-lived install token once during onboarding
    • The POS caches the session and refreshes it as needed
    • This is what powers the in-app reorder and customer lookup

Both modes use the same User record and the same Linnworks data. If you signed up via the web and later open the iframe (or vice versa), it's all the same account.

Manifest URL (for Linnworks app config)

The Trade Order POS Linnworks app manifest points the iframe at:

https://trade-pos.mcp-g.com/embed?token=[{TOKEN}]

Linnworks substitutes [{TOKEN}] with the operator's session token on every iframe load. The Worker's /embed handler validates the token against the Linnworks API, mints a session cookie, and lands the operator on the POS — no separate sign-in required.

If you're a Linnworks reviewer auditing the app: the iframe URL only accepts the Linnworks-supplied token format (32-char hex). Any other input returns a friendly 400 error page directing the user to open the app from inside Linnworks.

Permissions / scopes

The Linnworks app requests three scopes:

ResourceAccessWhy
OrdersRead + WriteCreate open orders, set customer info, refs, notes, shipping. Process the order if Auto-process is on.
StockReadProduct / inventory search and live retail prices
Processed OrdersReadCustomer lookup (we search the processed-orders index) and reorder-last-order

We do not request a Customers scope — Linnworks's processed-orders index has the data we need and is universally available across plans.

What we never do

See our Privacy Policy for the full rundown.

Re-installing / re-authorising

If you've changed app permissions in Linnworks and the POS starts erroring, the quickest fix is to reinstall the app:

  1. In Linnworks → Apps → Trade Order POS → ⋯ → Uninstall
  2. Re-install from the App Store
  3. Approve the permissions again
  4. Open the app from the sidebar — you're reconnected automatically

If that doesn't fix it, open a support ticket and include any error message you saw.