The Shopify Proxy is an Omneo-provided endpoint that allows your Shopify front end (Liquid templates, custom storefronts) to make authenticated requests to Omneo without exposing a bearer token on the client side.Documentation Index
Fetch the complete documentation index at: https://docs.omneo.io/llms.txt
Use this file to discover all available pages before exploring further.
This guide is part of the Shopify extension. It is referenced from the Shopify extension setup.
The problem it solves
Displaying a customer’s Omneo data on your Shopify storefront requires authentication. You cannot safely include a bearer token in Liquid templates or client-side JavaScript. The Shopify Proxy handles authentication server-side using an HMAC-signed customer signature.How it works
- Shopify generates a customer-specific signature using your Omneo shared secret (via Liquid’s
hmac_sha256filter) - Your front end sends the customer ID and signature to the Shopify Proxy endpoint
- The proxy verifies the signature and returns an Omneo ID token scoped to that customer
- Your front end uses the token to initialise the Shapes SDK and make requests to Omneo
Getting the customer signature in Liquid
Requesting a token via the proxy
Initialising the Shapes SDK with the proxy token
Caching the token
Store the token in localStorage to avoid requesting a new one on every page load:Security notes
- The
id_secretmetafield should never be exposed on the client side — it is used server-side in Liquid only - The proxy validates the HMAC signature before issuing a token, ensuring the request is from a legitimate Shopify session
- Tokens are scoped to a single customer profile and cannot be used to access other profiles