Understand Gelato v2 Shopify fulfillment
Know when a paid Shopify order becomes an ArtDrop job, a Gelato draft, or a live Gelato submission.
- Availability
- Config-gated
- Last verified
- Runtime anchor
ab084f79c5ed3fc6a28f07c64b29920944a0e5db- Certification anchor
db23559179dc3c67be8a1ab16a0f07323b9820f7- Evidence note
- Webhook/job idempotency, retry, dead-letter, and draft-default contracts were verified. Final certification did not place a real paid Gelato order; live submission remains config-gated.
What this does
Know when a paid Shopify order becomes an ArtDrop job, a Gelato draft, or a live Gelato submission.
Before you begin
- The Shopify product must carry the required ArtDrop/Gelato v2 attribution and map to the exact tenant/store.
- The Shopify paid-order webhook, PostgreSQL jobs, Gelato credentials, shipping data, and store mapping must all be available.
What changes outside ArtDrop
A verified paid-order webhook can enqueue an idempotent job containing order and customer shipping data. Default submission creates a Gelato draft. Live production requires GELATO_V2_LIVE_ORDERS for the exact tenant/store and can create a real paid fulfillment order.
Steps
-
Confirm product provenance
Verify that the sold Shopify variant was created through the configured Gelato v2 path and still maps to a valid product/variant.
-
Confirm the exact store rail
Each Shopify destination needs an explicit Gelato store mapping, a current key, and an installed/working paid-order webhook. Never fall back to the root store.
-
Interpret draft versus live
Unless live order submission is enabled for the exact tenant/store, expect a Gelato draft for review rather than a production order.
-
Follow retries safely
Jobs are idempotent and use bounded retry/dead-letter handling. For dead-letter or unknown outcomes, inspect Gelato before support replays anything.
Expected result
The order has one tenant/store-scoped job and a known Gelato draft/live ID, or a durable failed/dead-letter state for support.
Limits and non-goals
- Printful and Printify connected-store fulfillment does not use this Gelato bridge.
- Uninstalling/disabling the Shopify app or missing webhooks/keys can stop future order ingestion; a purchasable product alone is not proof of fulfillment readiness.
- Shipping data is processed for fulfillment and is not merely product data.
Troubleshooting
- If a paid order is absent, verify webhook installation, attribution, tenant/store mapping, key availability, and job state before manual creation.
- For an unknown Gelato outcome, do not submit a second order until the first is reconciled.
How to undo or clean up
Cancel or manage a Gelato draft/order in Gelato according to its current state. Removing the Shopify product or ArtDrop account does not automatically cancel fulfillment.