Home / How it works

From a tap on your storefront to a number on your dashboard

No black box. Here is every moving part, in the order a shopper meets them.

Stage 01 · Opt-in

A visitor allows notifications

The theme app embed loads a small script on your storefront. When a shopper accepts the browser's notification prompt, their browser hands over a push endpoint — an address the browser vendor will accept messages for.

  • The endpoint belongs to the browser, not to you — nobody else can send to it
  • Your store gets its own signing keypair, so notifications are provably from you
  • No email address or phone number is collected at this point
  • Put the invite behind any element in your theme with a data attribute
Allow
Subscriber added
Stage 02 · Signals

Three things the embed watches

Only what the automations actually need. Every request is signed by Shopify's app proxy, so nothing else can post data into your store's account.

Signal

Cart changes

A snapshot of the cart — items, value, currency — whenever it changes. This is what makes abandoned-cart recovery possible for a shopper who never gave you an address.

Signal

Product views

Which product and variant a subscriber looked at, whether it was in stock, and the price at the time. Back-in-stock and price-drop alerts read from this.

Signal

Notification clicks

A click carries a campaign tag into the cart as an attribute. When the order is created, Shopify's webhook lets Qpushly match order to send.

What the embed does not do: call third-party geolocation services, load fonts or scripts from another origin, or track visitors who have not subscribed.

Scheduled campaigns
Due reminders
Stalled carts
Browse abandonment
Stage 03 · Sending

A scheduler sweeps every ten minutes

Nothing depends on you having a tab open. On each pass Qpushly looks for campaigns whose time has come, reminders that are due, carts that have gone quiet, and browsers that were abandoned — for every shop, one at a time.

  • Sends are signed with your store's own keypair before they leave
  • A subscriber never receives the same reminder twice
  • Failures are recorded per subscriber rather than silently dropped
  • Endpoints the browser has revoked stop being retried
Stage 04 · Reporting

Then it shows up in your admin

Revenue generated, subscribers, campaigns sent and impressions on the dashboard; a growth chart over 7, 15, 30 or 60 days; and per-campaign and per-automation numbers wherever you are looking at one.

  • Impressions and clicks per campaign
  • Orders and attributed revenue, matched via order webhooks
  • Conversion rate per automation
  • Subscriber breakdown by browser, OS and device
northline-supply.myshopify.com
DashboardLast 30 days
Live
Revenue generated
$4,180
Subscribers
2,914
Campaigns sent
18
Impressions
11.2k
Subscriber gain 30 days
Welcome notifications 3 reminders
Abandoned cart recovery 2 reminders
Back in stock 1 reminder
Price drop Not set up
Housekeeping

Where your data lives and when it leaves

Scoped to your store

Every record is tagged with your shop domain, and every storefront request is verified against Shopify's signature before it is accepted.

Deleted on uninstall

Uninstalling removes your access tokens immediately. Shopify then sends a shop-redact request, and every row belonging to your store is deleted.

Customer requests handled

Shopify's data-request and redaction webhooks are implemented. A request assembles everything held for that shopper into a file you can download from the app; a redaction deletes their record, cart history and attributed orders.

Full detail in the Privacy Policy.

Get started

Two minutes to the first subscriber

Install, enable the theme embed, open your own storefront and accept the prompt. You will see yourself in the list.

Free plan · no card required Install free