Shopify app
The Datalumo app connects a Shopify store to your knowledge base. It pushes active products and published blog articles into a source so search and chat can answer from your catalog.
Install at shopify.datalumo.app.
| Feature | What it does |
|---|---|
| Connect | Organisation public ID + API key (pages.write) → source picker |
| Sync now | Active products + published articles → pages API (batches of 50) |
| Live products | Product create/update/delete webhooks keep the source in sync |
| Articles | Full sync plus a background poll (default every 15 minutes) — Shopify has no article webhooks |
| Scopes | read_products, read_content only — no customer data |
Draft or archived products and unpublished articles are not indexed on a full sync.
#Install
- Open shopify.datalumo.app and install the app on your store.
- In Datalumo, create a Shopify source (or any source the app can write to) and an API key with
pages.write(see Authentication). You can limit the key to that one source. - Copy your organisation ID from the API keys page. It is a long public id, not your organisation name.
In the embedded app:
- Paste the organisation public ID and API key
- Choose a source
- Connect & test
- Sync products now (and articles if enabled)
Watch indexing progress on the source page in the Datalumo dashboard — a finished push is not the same as fully indexed.
Self-hosting Datalumo? Set the Datalumo URL in the app to your own install (defaults to https://datalumo.app).
#What syncs
| Content | How it stays up to date |
|---|---|
| Active products | Full Sync now + product webhooks (create, update, delete) |
| Published blog articles | Full Sync now + background poll (Shopify does not emit article webhooks) |
You can turn products or articles on or off in the app's content preferences.
#What a page looks like
| Page field | Products | Articles |
|---|---|---|
| Title | Product title | Article title |
| Content | Description (HTML) + variant list | Body HTML |
| URL | Storefront product URL | Storefront blog path |
| Reference | product:{shopify_id} |
article:{shopify_id} |
| Details | Handle, vendor, type, tags, status, variants | Handle, blog, author, tags, published date |
Because the Shopify id is the reference, a full sync is always safe to run again. It updates what is already there instead of duplicating.
#External IDs
product:{shopify_product_id}
article:{shopify_article_id}
Re-syncs and deletes use the same id.
#After you connect
- Pushing is not indexing. When a sync finishes, Datalumo still has to read and embed everything it received. Progress continues on the source page after the app reports done.
- Product changes land quickly via webhooks. Article edits show up on the next poll or the next full sync.
- Uninstalling the app stops new pushes; pages already indexed stay until you clear or delete the source.
#Troubleshooting
| Symptom | Check |
|---|---|
| Connect & test fails | Organisation ID and API key belong to the same organisation; the key has pages.write |
| Source not listed | The API key can access that source (or is not limited to another one) |
| Nothing appears in the source | Products are Active / articles are published; content preferences include them; run Sync now |
| Content synced but not searchable yet | Indexing runs after the push; watch progress on the source page |
| Product edits missing | App is still installed and product webhooks are healthy |
| Article edits lag | Wait for the next poll, or run Sync now |
#Related
- Introduction for the other ways to integrate
- Authentication for API keys and permissions
- Pages for the endpoints the app uses under the hood
- Widget SDK for embedding search and chat on your storefront