Shopify Integration: A Big Round Of Fixes And Simplifications
A broad pass across the Shopify integration. Everything below is live and connected accounts benefit automatically.
Order sync is one setting, starting from here. Import & Update Orders replaces the topic-level toggles and a legacy Manage Orders Locally setting. Turning it on connects the webhooks and starts polling from that moment, so a first-time connection stops pulling a day of back-history in as if it were current activity, and a late webhook against an older order that was never in Endless no longer conjures it into the list. New orders carry the store’s processed date as their Endless order date instead of ingest time. Manual and bulk import are still the way to bring history in.
Cancellations behave the way you’d expect. Canceling in Shopify now cancels a fulfillment that is still in draft or allocated; if fulfillment has moved past those states, Endless refuses the source cancellation instead of unwinding work in flight. A Shopify replacement — original canceled, new one issued — retires the canceled work at import instead of carrying it in as active. Historical orders that were already canceled before Endless first saw them come in canceled directly, with none of the “new order” side effects. Any canceled order with no successful fulfillment lands canceled the same way. On active orders, line quantities reflect what actually happened: units shipped plus units still owed, with pre- and post-fulfillment refunds netting out correctly.
Multi-fulfillment imports land in full, or fail cleanly. Importing an order with more than one closed fulfillment used to partially succeed — the first transferred authority to Endless and the rest failed silently. Closed fulfillments now stay ready until their shipments come across, and the order completes when the recorded shipments cover every unit; partial coverage stays incomplete, and a failure surfaces as a real error. On the related failure mode, closed and non-handoff fulfillments now ingest before any in-progress one takes authority, so an in-progress fulfillment no longer rolls the whole import back.
Inventory and SKUs track the current state. When Shopify is a building’s inventory source, physical stock in Endless follows what Shopify records as on-hand instead of what it reports as available, which had made items look emptier than they were and could send Endless below zero. Damaged units still go to Default Unavailable and are no longer counted twice. Order lines now come in with the current variant SKU when Shopify has one, so a rename in Shopify no longer leaves the sales-order line and its fulfillment inventory item pointing at different SKUs for what is the same variant.
Support: bulk historical order import. A preview-first support task can now pull a date-bounded cohort of Shopify orders back through the normal ingestion pipeline for account recoveries, skipping anything already in Endless.