Skip to main content
Galantis registers webhooks across every major Shopify data domain at installation time. These webhooks are the primary mechanism for keeping Galantis data current — when something changes in Shopify, the corresponding webhook fires and Galantis processes the update asynchronously. Webhook handling is resilient to temporary failures — a transient error does not cause a webhook to be permanently lost. Failed processing is retried automatically until it succeeds or exhausts the retry limit. All incoming webhooks are validated via signature verification before processing.

What this covers

  • Every registered webhook topic
  • What each webhook powers in Galantis
  • Security validation and retry behavior
  • What happens when a webhook is missed

Customer webhooks

TopicWhat it does in Galantis
customers/createCreates a new contact record; may enroll customer in CUSTOMER_CREATED automation
customers/updateUpdates profile fields — name, phone, email, locale, tags
customers/deleteRemoves the contact record
customers/marketing_consent_updatedUpdates marketing_state on the contact record
customer_tags/addedAdds tags to the contact record; may fire CUSTOMER_TAGGED automation trigger
customer_tags/removedRemoves tags from the contact record

Order webhooks

TopicWhat it does in Galantis
orders/createCreates an order record; enrolls qualifying customers in ORDER_PLACED automation
orders/cancelledUpdates order status; enrolls qualifying customers in ORDER_CANCELLED automation
orders/updatedDetects fulfillment data; enrolls qualifying customers in ORDER_SHIPPED automation when fulfillment is present
The orders/updated webhook covers all order update events in Shopify, not only shipping. Galantis specifically detects whether the update contains fulfillment data and only fires the ORDER_SHIPPED automation trigger when it does.

Product and collection webhooks

TopicWhat it does in Galantis
products/createCreates a product record in Galantis; queues for Meta catalog push
products/updateUpdates product fields, variant data, pricing, and inventory; detects inventory_quantity 0→>0 for Back-in-Stock trigger; queues updated product for Meta catalog sync
products/deleteRemoves the product record; removes from Meta catalog
collections/createCreates a collection record in Galantis
collections/updateUpdates collection data and product memberships
collections/deleteRemoves the collection record

Billing and app lifecycle webhooks

TopicWhat it does in Galantis
app_subscriptions/updateProcesses plan changes, upgrades, downgrades, and subscription status updates from Shopify Billing
app/uninstalledDeactivates the workspace; stops all automation processing and message sending for the store
The app/uninstalled webhook triggers immediate workspace deactivation. If the app is reinstalled, a new OAuth token exchange occurs and data may need to be re-synced. Active automations and campaign schedules from before uninstallation are not automatically re-activated.

GDPR compliance webhooks

TopicWhat it does in Galantis
customers/redactSets the affected customer’s marketing_state to REDACTED; initiates data erasure for the customer record
shop/redactInitiates full shop-level data erasure for uninstalled stores that have requested data deletion
These webhooks are sent by Shopify in response to GDPR data subject requests and merchant data deletion requests. See Compliance — GDPR & Data Privacy for the full context.

What happens when a webhook is missed

Webhook delivery is not guaranteed — Shopify will retry failed deliveries, but a sustained outage or network issue can result in missed webhooks. When this happens, the Galantis record for affected entities will be stale until a corrective sync occurs. Recovery options:
  • For product data — trigger a manual full sync from Catalog → Shopify Sync → Sync Now
  • For abandoned checkouts — the polling mechanism runs every 10 minutes and self-heals; no manual recovery is needed