Advice needed on made-to-order in Shopify

Hi folks. I’m looking for some advice on the best approach to supporting our made-to-order clothing business in Shopify. As I’ve posted elsewhere in the forum, we use production “slot” model rather than managing finished goods inventory.

What’s the best implementation path? I’m optimizing for giving us adequate control, since we depend on this working, and for reasonable performance when we have rapid sales of a popular, low-production item.

What I’m looking for from Shopify is to be able to manage a pool of inventory against a SKU that is shared across multiple products and variants. For instance, if I have enough fabric to make 20 jackets, then I need to decrement inventory for all variants made from that fabric, every time a sale is made for one of them. If I make a women’s and a men’s pattern in that jacket and offer 7 sizes in each, for a total of 14 variants, when one of the variants is sold I need to decrement inventory in the other 13 for that sale. Shopify decrements inventory available for the variant sold, and I need to find a way to adjust the others.

I need some help, as I’m hitting some interesting dead ends. I’ve been working through various scenarios, trying to come up with an approach that is straightforward to implement and also performant. My experience with the platform is dated, and I’m still coming up to speed on the changes made in the past few years; my apologies if I’m asking naive questions or making bad assumptions.

Thanks! I’ll add some more notes about things I’m trying in replies.

I explored using a 3rd-party app; they probably aren’t a solution. One of the various bundling apps might work, but they’re overly complex for just fixing the inventory problem. Using an app also cedes control of a capability we depend on to a mostly anonymous 3rd party. Latency can be very high, as the apps are outside of Shopify’s network boundary; the best of them can have a delay heading towards 30 seconds from the time an order is posted.

I started with the thought that Shopify uses the product SKU as part of its inventory mechanism. A simple test killed that idea; SKU is only descriptive, and all inventory math is done against variants. Despite Shopify warning that SKUs aren’t unique, I haven’t found any side-effects of them not being unique. If anyone knows of any side effects, I’d love to learn about them.

The simple spec I’ve been chasing is “when something is sold, get all the variants sharing that product’s SKU and decrement the inventory on all of them except the one that was ordered.”

In Flow, the “Product variant inventory quantity changed” trigger would be an elegant solution, as it doesn’t require picking through an order and its line items. But that won’t work unless I can determine the source of the triggering change. I’m assuming there’s a corresponding referenceDocumentUri for each change that would identify order-initiated inventory adjustments, but that’s not exposed in Flow. Without it, I’ll obviously get a race condition as my backend adjustments fire the trigger.