Store installs app (app.installed) fires the first time a store installs your app. It’s the trigger for a welcome email, an onboarding sequence, or an internal notification that a new merchant arrived.
When it fires
On the store’s first successful authentication with your app: the OAuth handshake that creates its install record. It fires once per store, not on every sign-in.
There’s one subtlety worth knowing: a store can already have a CRM row without ever having installed (the CRM creates one to hang a manually added contact on). Meridian goes by what it has actually recorded, not by the row merely existing, so that store’s first real install still fires this trigger.
A store that had the app before and comes back doesn’t fire this. That’s Reinstalled.
What it carries
The store’s own variables: name, domain, plan, currency, revenue, install date. No event-specific variables: nothing happened beyond the install itself.
The recipient for a downstream Send email is the email on the store’s install record. For an app hosted on Meridian, that’s the address Meridian reads from Shopify during the install, unless your app sends its own email to identify, which Meridian keeps over Shopify’s. For an app hosted elsewhere, Meridian can’t read it, so your app has to pass it as email to identify or mintShopToken, and that call can land after this trigger fires. The email step reads the address when it runs, so put a Wait of a few minutes before it and a late address still reaches the merchant.
Building on it
Pick Store installs app as the trigger, then add the action to run. Common shapes:
- Send a welcome email straight away.
- Branch on a segment first, so a store that arrives on a paid plan gets a different email from one on the free plan.
- Set an onboarding stage with Populate custom field, so the rest of Meridian can see where each new store is.
Last modified on September 30, 2026