Skip to main content
If your conversions already live in Shopify, Stripe, or Cal.com, you don’t need to build a Conversions API integration. Connect the platform once and Gravity ingests the events for you — attribution, deduplication, and reporting work exactly the same way.
Integrations replace the conversion half of the setup, not the pixel. You still need the Gravity pixel on your site so we can attribute the visit that led to the purchase — except for Shopify, which installs its own pixel for you.

Shopify

One-click. Gravity installs a Shopify web pixel on your storefront and subscribes to your orders/paid webhook, so both checkout-time and server-side purchase events flow in.
1

Open the dashboard

Go to Settings → Organization → Integrations in the Gravity dashboard and hit Connect on the Shopify row.
2

Approve the app in Shopify

You’re sent to Shopify’s OAuth grant screen for your *.myshopify.com store. Approve it and you land back in Gravity.
3

Done

Gravity activates the web pixel and starts syncing your catalog automatically. The row turns verified once we’ve seen a valid event from the store.
Purchases arrive as purchase conversions with order value and currency. The checkout pixel and the orders/paid webhook are deduplicated against each other on the Shopify order ID, so a single order is never counted twice.
Because Shopify installs its own pixel, you don’t need the manual gr-pix.js snippet on your storefront. Add it to any non-Shopify pages (marketing site, docs, blog) that visitors land on first.

Stripe

Two ways to connect, depending on whether you want a one-click flow or full control.
Settings → Organization → Integrations → Connect on the Stripe row. You authorize Gravity through Stripe’s OAuth flow and we handle the webhook plumbing on our side.
Subscription renewals are deliberately not counted as new conversions — only the first invoice.paid for a subscription is. payment_intent.succeeded is also ignored: it fires underneath the events above and would double-count.

Cal.com

For demo bookings and consulting flows. Cal.com posts booking events straight to Gravity.
1

Add a webhook in Cal.com

Settings → Developer → Webhooks → New, with this subscriber URL:
Your advertiser API key lives in the Gravity dashboard under Settings → Organization.
2

Use the same key as the signing secret

Paste that same API key into Cal.com’s Secret field. Gravity verifies the x-cal-signature-256 HMAC against it — bookings that fail verification are still recorded, but flagged as unverified.
3

Pick your triggers

Subscribe to the booking events you care about. Each maps to its own conversion event type:
Attendee email and phone are hashed (SHA-256) on ingest — Gravity stores the hash, not the raw value.
Attribution comes from the Gravity click IDs the pixel writes into your booking page URL. Pass them through to Cal.com as booking metadata.attribution (grclid, grcpid, grpuid, gradid) so bookings tie back to the ad that drove them. If only grclid makes it through, we resolve the rest server-side.

Check what’s connected

The Dashboard API exposes your live connections:

Next

Conversions API

Not on one of these platforms? Send conversions from your own backend.

Advertiser pixel

Required for attribution on everything except Shopify storefronts.