How-to guideSourcesAvailable
Shopify to OneSignal
Connect Shopify storefront and customer activity to OneSignal for web push, email identity, profile tags, and lifecycle events.
Last reviewed July 13, 2026
Vendo connects Shopify to OneSignal in two complementary paths: the storefront establishes browser or email identity, while server-side Shopify events keep user tags and lifecycle activity current.
Before you start
- Connect Shopify and enable the Vendo theme app embed or supported storefront integration.
- Create a OneSignal app for the correct site and environment.
- Prepare the OneSignal App ID and API key.
- Decide which Shopify customer identifier should become the OneSignal external ID.
How identity flows
| Signal | Result in OneSignal |
|---|---|
| Browser grants push permission | A web push subscription is created |
| Newsletter form submits an email | An email subscription is associated with the user |
| Customer logs in or checks out | Shopify customer identity can merge with the existing subscription |
| Server-side commerce event arrives | Tags and lifecycle event data update without relying on the browser |
See How OneSignal identification works for the canonical identity behavior.
Configure the destination
- Complete OneSignal web push setup.
- Open Data → Integrations → Destinations and add OneSignal.
- Enter the App ID and API key, then test the connection.
- Create or update the Shopify integration and choose OneSignal.
- Enable the event and profile updates you need.
- Save and run a test with a non-production subscriber.
Verify
- Visit the storefront in a clean browser profile and grant notification permission.
- Submit a test email or log in as a test customer.
- Complete a test storefront event or order.
- In OneSignal, find the user and confirm the push/email subscription, external ID, and expected tags.
- Check Activity Logs for the related destination job.
Troubleshooting
| Symptom | Check |
|---|---|
| Push prompt never appears | HTTPS, browser permission, service worker, and OneSignal site configuration |
| Email exists as a separate user | External-ID mapping and the order of identify/login calls |
| Tags do not update | API key permissions, selected fields, and destination job errors |
| Custom form is ignored | Form selector and the custom newsletter workflow |
Related
Last updated on