CONNECTIONS / Shopify / Shopify to Snap Offline CAPI
Shopify counter sales, delivered to Snap on schedule.
A Snap-driven shopper who walks into your store or calls to order leaves no browser event behind. Signals hashes the POS or phone order and delivers it to Snap's Conversions API on a cadence that fits how your locations actually operate.
- ● shopify → snap.offline_capi :: live
- > event POS order placed value=204.00 AED
- hash sha256(email,phone) dedupe=online+pos
- route snap.offline_capi batch=daily
- ✓ delivered · match 59%
WHAT THIS ENABLES
Shopify to Snap Offline Conversions API
Shopify to Snap Offline Conversions API delivers POS transactions and phone-placed orders to Snap on a schedule you set, matched by hashed customer identifiers, so counter and call sales count toward Snap campaign optimization.
- Counter and phone-order revenue counted inside Snap's own campaign optimization.
- A delivery cadence matched to how often your POS locations actually settle transactions.
- The same hashed-identifier pipeline already running for the online storefront, extended to physical sales.
The click, the conversion, and the credit.
The conversion happens off Snap, away from any pixel. Here is how Shopify closes the loop.
Built for the teams that own the number.
Teams taking phone orders whose Snap-attributed traffic never completes checkout online.
From kickoff to verified events.
-
Connect
App-scoped access to Shopify POS transaction webhooks and phone-order records.
-
Map
POS and phone-order events mapped to Snap's offline conversion event set in the visual mapper.
-
Deliver
Scheduled delivery to Snap's Conversions API, deduped against any online order for the same customer.
What changes when the CSV goes away.
| Capability | Manual CSV upload | Datahash |
|---|---|---|
| Reporting | Offline sales sit in a separate export, reconciled by hand. | Revenue counted in the same Offline CAPI reporting as web conversions. |
| Deduplication | A re-uploaded file risks counting the same conversion twice. | Deduped delivery, so a resent record never counts as a second conversion. |
| Match visibility | Match quality is a guess until the numbers look off. | Match rate reported per upload, tied to the source event set that produced it. |
| Effort and latency | An analyst exports and uploads on a manual cadence. | Server-side and automatic the moment Shopify records the event. |
What Offline CAPI actually receives.
- ● signals :: event payload
- > POST /v2/conversion source=shopify.pos_order
- event_type "PURCHASE" · event_conversion_type "OFFLINE" · timestamp 1784522040
- hashed_email "6a19f0…" · hashed_phone_number "be3d72…"
- price 204.00 · currency AED
- ✓ accepted · match=true
Adjacent moves on the same stack.
from Shopify
Shopify to Google OCI
Shopify to Google Offline Conversion Import carries the GCLID captured on a storefront…
Learn morefrom Shopify
Shopify to Google Store Sales
Shopify to Google Store Sales hashes customer and order data from both the online…
Learn moresame use case
ActiveCampaign to Snap Offline CAPI
ActiveCampaign to Snapchat Offline CAPI: Signals reads your ActiveCampaign contacts and…
Learn moregeneric
Snap Offline CAPI
Deliver offline conversions to Snap on a schedule that fits your operations.
Learn moreAsked on almost every call.
Does a POS sale double-count with an online order from the same customer?
No. Event identifiers dedupe the POS and online order streams, so a customer who reserves a product online and completes payment at the register is counted once. Signals matches the hashed identifiers across both records before delivery, so Snap's Conversions API receives a single conversion event regardless of which system logged the final sale, keeping campaign reporting accurate.
What identifiers does a phone order typically capture?
Usually a phone number and, where the order is delivered, an email or shipping address collected during the call. Partial identifier coverage still moves match rates, since Snap's Conversions API accepts whatever combination of hashed fields is present. Signals hashes each identifier the call center captures, whether that is just a phone number or a fuller set, before it reaches Snap's endpoint.
NEXT STEP