Plugs into the screens, tills and tools you already run.
SparkleTree does not ask you to replace anything. The kiosk app turns any screen into a live promoter, signed webhooks connect it to your POS and the rest of your stack, and it publishes to the channels you already use.
What connects, and how.
Every system SparkleTree works with, how it connects, the plan it comes with and what moves between the two. Webhooks cover anything else that can send or receive one.
| System | How it connects | Plan | What flows |
|---|---|---|---|
| Screens | |||
| Any screen with HDMI | Kiosk app | Venue and up | The campaign out to the screen. A check-in every 30 seconds, with what is playing, back. |
| Screens with a browser | Web page | Venue and up | The surface as a web page, with nothing to install. A signage player that can show a web page runs it as a URL in its playlist. |
| AdQuick, Vistar, Hivestack, Place Exchange | Built-in connection | Venue and up | Out-of-home play confirmations back into the campaign numbers. |
| Store and till | |||
| Shopify | Shopify app | Venue and up | Products in. Orders matched back to the campaign that sold them, and storefront visits through a web pixel. Discount codes, and descriptions you approve, written back. |
| Any POS | Webhooks | Venue and up | Products, prices and stock in. Campaigns started and stopped from the till. Campaign events out. |
| WooCommerce and other stores | Webhooks | Venue and up | Products, prices and stock in from the store or the tool in the middle. Campaign events out. |
| Channels | |||
| Instagram and Facebook (Meta) | Built-in connection | Venue and up | Posts published on schedule, the Meta catalog kept in sync, WhatsApp templates sent. |
| Bluesky | Built-in connection | Venue and up | Posts published, and their numbers read back. |
| Reddit and TikTok ad accounts | Early access | Venue and up | Ad accounts connected to the campaign. |
| Web and agents | |||
| Your website or app | Venue and up | A live campaign in any container from one script tag, or Hero and Cta islands through the React SDK. | |
| Claude, Codex or any MCP client | MCP server | Every plan | Brief, generate, publish and measure campaigns, and read the brand book and analytics. |
| Your own systems | Full API | Enterprise | The full API and advanced MCP tooling, for your own code and workflows. |
Venue and up means the Venue plan and Enterprise. Visibility is the pages only and includes the MCP server. See pricing.
Any screen, through the Android kiosk app.
The SparkleTree kiosk app runs on Android 7.0 or newer, including Android TV boxes and sticks. Plug the device into a screen's HDMI port and the screen becomes a surface: the bar TV, the menu board, the window display or a DOOH panel.
- Plug in and power on. The app starts on boot, asks for Wi-Fi if it needs it, and shows a pairing QR code.
- Scan and confirm. Scan the code with your phone and confirm the screen in the dashboard. If a camera is not handy, type the activation code instead.
- Pick what it shows. Assign a surface, full screen and touch-enabled, or with a QR code guests scan to take the campaign with them.
Provisioned as the device owner, the app locks the device to the campaign, so nobody wanders off into settings. Every screen checks in every 30 seconds with its app version and what it is playing, the dashboard flags any screen that goes quiet for two minutes, and a lost or stolen device can be quarantined or revoked from the dashboard. Screens that already have a browser can show a surface without the app.
Webhooks, in and out.
SparkleTree's webhooks are how it talks to the rest of your stack. They are managed in the dashboard, signed with HMAC-SHA256 in both directions, and have a test button, so you can check an endpoint before anything real depends on it.
Out: what SparkleTree tells your systems.
| Event | When it fires |
|---|---|
campaign.created, campaign.updated | A campaign was made or edited. |
campaign.activated, campaign.deactivated | A campaign went live or came down. |
campaign.approval_requested, campaign.approval_resolved | A campaign is waiting for sign-off, or got it. |
analytics.alert_triggered | A metric crossed a threshold you set. |
webhook.test | Sent from the dashboard to check your endpoint. |
Each delivery is a JSON body with the event and a timestamp, signed in X-Webhook-Signature, with
the event name in X-Webhook-Event and a delivery id in X-Webhook-Delivery that stays
the same on retries. A failed delivery is retried after one, five and fifteen minutes. Subscribe to
* to get everything.
In: what your systems tell SparkleTree.
| Event | What it does |
|---|---|
product.upserted, product.deleted | Create, update or remove a product: name, price, SKU, image, category and stock. |
campaign.activate.requested, campaign.deactivate.requested | Start or stop a campaign from outside SparkleTree. |
campaign.publish.requested, campaign.pause.requested | Publish or pause a campaign. |
campaign.context.updated | Tell a live campaign what has changed, so the copy can follow. |
Each integration gets its own endpoint and secret. Requests are signed, timestamped within five minutes and carry an idempotency key, so a retry is never applied twice. Secrets can be rotated, and past events can be replayed from the dashboard.
Your POS.
The till knows what is in stock and what it costs. SparkleTree knows what is being promoted, where and to whom. Webhooks keep the two in step, directly from the POS or through the integration tool you already use.
- Prices and stock in. When a price changes or the last bottle sells, the POS sends a
product.upsertedand the promotion works from the new numbers. - The till starts the campaign. Happy hour opens on the POS, and a
campaign.activate.requestedputs it on every screen in the room. - Your stack hears about it. When a campaign goes live, comes down or needs approval, your systems get the event and can act on it.
The screen by the till is a surface type of its own, so the last upsell before payment can be a campaign too.
Shopify.
The SparkleTree Shopify app connects your store to your workspace. Products sync as they are created, changed or removed, and new orders are matched back to the campaign that drove them, so a sale from a screen or a QR code shows up in the campaign's numbers. A web pixel attributes storefront visits. SparkleTree can write product descriptions back to Shopify once you approve them, with an undo, and create discount codes for a campaign.
Socials, ads and DOOH.
Instagram and Facebook connect through Meta: SparkleTree publishes posts, keeps the catalog in sync and can send WhatsApp templates. Bluesky posts are published and their numbers read back. Reddit and TikTok ad accounts connect in early access. For out-of-home, play confirmations from AdQuick, Vistar, Hivestack and Place Exchange come back into the campaign, next to the plays from your own screens.
Agents and your own code.
Every plan includes the SparkleTree MCP server, so Claude, Codex or any MCP client can brief, publish and measure campaigns. One script tag, or the React SDK, puts a live campaign on your own website or app. The connection details are on the developers page, and the full reference is in the documentation.
Questions about integrations.
Which POS systems does SparkleTree work with?
Any POS that can send or receive a webhook, directly or through the integration tool you already use. SparkleTree does not ship a separate connector per POS brand. Instead, its inbound webhooks take product, price and stock updates from the till, and its outbound webhooks tell your systems when campaigns change. A founder will map it to your setup on the walkthrough.
What hardware do I need for a screen?
A screen with an HDMI port and a small Android device to plug into it: an Android TV box or stick running Android 7.0 or newer works. The SparkleTree kiosk app installs on it, starts on boot and pairs with a QR code. Screens that already have a browser can show a surface without the app.
Do I need a developer to connect our POS?
Someone has to point your POS, or the tool in the middle, at a SparkleTree webhook URL, and many POS and automation tools do that without code. Screens, QR codes, socials and the Shopify app need no code at all.
How are webhooks secured?
Both directions are signed with HMAC-SHA256. Outbound deliveries carry the signature in X-Webhook-Signature and a delivery id that stays the same on retries, so you can ignore duplicates. Inbound requests must be signed with the endpoint's secret and timestamped within five minutes, and an idempotency key keeps a request from being applied twice.
Which plans include integrations?
The kiosk app, webhooks, Shopify and the channel connections are in the Venue plan and up. Every plan, including Visibility, includes the MCP server; Enterprise adds full API access. The availability table lists every system with its plan, and pricing has the plans.
We sell on WooCommerce, not Shopify. Does SparkleTree work with our store?
Yes, through webhooks. Shopify connects through the SparkleTree Shopify app; WooCommerce and other store platforms connect the same way a POS does. The store, or the automation tool you already use, sends product.upserted and product.deleted as products, prices and stock change, and SparkleTree sends campaign events back so your stack can act on them. A founder will map it to your setup on the walkthrough.
Want to see it wired into your venue?
A 30-minute walkthrough with a founder, built around your screens, your till and your events.