Solutions for composite and reserved items

Hi,

I don’t know what the proper name or terms are for what I’m looking for are, so it’ll be easier to give an example. I can’t believe I’m saying this, but I welcome individuals or companies that have a solution they want to pitch.

My store inventory stands at -

100 - Cable

10 - Connector-A

15 - Connector-B

We want to create a product called “5 connector cable” which is 6 of Cable, 5 of Connector-A. When shown and presented to the customer, we want this to appear as a single, standalone product with its own page, pricing, etc. At the current time, inventory should show that we can have 2 of those in stock.

We want another product called “3 connector cable” which is 4 of Cable, 1 of Connector-A, 2 of Connector-B. At this time, inventory should show we have 7 of them.

Someone puts “5 connector cable” in their cart. I’d like to be able to have a 15 minute timer that they either need to buy or the order becomes invalid in some way. I realize this is a bad practice (Someone could DOS our shop by constantly putting every item in a cart meaning no one else sees it.) and I’m open to suggestions, but you’ll see why. While it’s in the cart, the “uncommitted” inventory looks like -

94 - Cable

5 - Connector-A

15 - Connector-B

1 - 5 connector cable

5 - 3 connector cable

They check out and actual inventory remains at the numbers above.

Another customer comes along and puts 92 cable in their cart. The same timer (or something else) should begin. The uncommitted inventory will now look like -

2 - Cable

5 - Connector-A

15 - Connector-B

0 - 5 connector cable

0 - 3 connector cable

Someone ELSE comes along at the same time and puts 14 Connector-B in their cart. Same timer starts. The uncommitted inventory is

2 - Cable

5 - Connector-A

1 - Connector-B

0 - 5 connector cable

0 - 3 connector cable

15 minutes later, the timer on the 92 cable times out, and uncommitted inventory is now

94 - Cable

5 - Connector-A

11 - Connector-B

0 - 5 connector cable

0 - 3 connector cable

The 2nd person decides they meant only 4, not 14, and update their cart so uncommitted inventory goes to

94 - Cable

5 - Connector-A

11 - Connector-B

1 - 5 connector cable

5 - 3 connector cable

They check out, and the inventory remains at those numbers.

Hopefully, this isn’t too confusing. If there is a different way, method, etc I’m all for it. But the two major things are

  1. 3 and 5 connector cables need to be treated as their own product, and the customer shouldn’t see its made from other inventory parts

  2. When an item is in a cart, it “reserves” it for a period of time so that I can’t sell what I don’t have.

Thanks!

Hi @tucs-workbench ,

I read your post and I think what you’re looking for is a product bundling solution along with a countdown timer.

Technically speaking inventory is only reduced when items are actually purchased. The timer could work as a way to clear the shopping cart to prevent overselling.

There is a way to do this using a bundling app. Then build out new product templates, you can use page builder app like GemPages. The count down timer would be custom coded for the functionality mentioned.

If you need help setting up an app or want to build this feature into your theme happy to discuss just send me a PM.

Hi @tucs-workbench :waving_hand: do the first part using bundles, the parts will show in checkout.

Otherwise you need to do workarounds using draft orders and generated products, or custom-line items which can complicate reporting.

The second part turns into an expensive setup with lots of moving parts real fast.

Frontend inventory reservation isn’t a thing really on shopify; aka , lockout , virtual queueing, virtual waiting rooms

repurposable? https://apps.shopify.com/search?q=cart+reservation **https://apps.shopify.com/search?q=reserve+stock ,etc

Items are in stock or they or not when inventory tracking is on when a checkout is being gone through; deeper see stuff on twitter around flash sales vs bots.

For situations that manage to fall through this you should just have backend automations to auto-cancel invalid orders or other remediation.

see shopify-flow or usemechanic app

Or try apps , that use shopify-functions in the checkout, to do cart validations, in tandem with other automations to possibly update metafields with whatever the current uncommited-inventory deltas are.

probably easier if a store is on shopifyPlus.

And you have to build the UX/messaging for other customers wanting the product.

Deeper see services like waiting-room https://www.cloudflare.com/application-services/products/waiting-room/

If you need to automate , or create supporting theme customizations, or for this contact me for services or paid consultation.
Contact info in forum signature.
ALWAYS please provide context, examples: store url, theme name, post url(s) , or any further detail in ALL correspondence.