Skip to main content
Documentation menu

Set up built on the fly

Use this when a product isn’t built from a fixed recipe but is assembled from parts the customer picks in the cart. A necklace and its charms. A gift box and whatever went into it. The product stays the same; what it’s made of changes with every order.

Setup has two parts: turning the strategy on for the product, and telling Orderkraft how your storefront says which lines belong together.

Before you start

Built on the fly runs on the parts’ SKUs matching your materials catalog. When a picked part’s SKU matches a material in Orderkraft, it shows up on the manufacturing order. When it doesn’t, it’s either skipped or added to your catalog, depending on how you set the switch below. Check your materials catalog covers the parts customers actually pick, or turn on the switch and let Orderkraft create them as orders come in.

Turn the strategy on for the product

  1. In Orderkraft, go to Products.
  2. Open the product, or click Add product and pick it from the Shopify picker if it isn’t there yet.
  3. In the product summary on the right, the badge under the product name reads either Regular, Made to order, or Built on the fly. Click the pencil beside it.
  4. Pick Built on the fly and save.

Moving a product away from Made to order deletes the bills of materials on its variants, and that can’t be undone. The app asks before it does it. If your built-on-the-fly product really does have a recipe behind it, the necklace chain that every necklace gets, set Made to order instead and use built on the fly only for the parts the customer picks. A single manufacturing order can carry both kinds of input.

Tell Orderkraft how the parts group

  1. Go to Settings → Built-on-the-fly configuration.
  2. Under How they appear on the order, pick the option that matches your storefront:
Option When it’s yours
Don’t group Customers don’t pick parts in the cart, or you’re not sure yet
Bundle app You’re using a bundle app on Shopify
Custom theme A Shopify developer or agency built your theme

Don’t group is the default and the safe one. Orderkraft reads every line on its own and ignores grouping, which is correct for any store that doesn’t sell pick-your-parts products. Pick it and nothing else on this page matters.

Bundle app covers stores where a Shopify bundle app assembles the parts. Those apps mark every line of the bundle, parent included, with the same group identifier, and Orderkraft uses that to keep them together.

Custom theme covers stores where a developer built the picking into the theme itself. Custom themes tend to mark only the parts, not the parent. Orderkraft then finds the parent among the ungrouped lines, using the group’s attributes to tell two of the same product apart, like two necklaces with different engravings.

Picking wrong means parts end up as their own production work instead of belonging to the parent. There’s a Contact us link on the page for exactly the case where you’re not sure.

Decide what happens to a part you’ve never seen

The Create missing materials switch on the same page controls what happens when an order carries a part whose SKU isn’t a material in your catalog yet.

Turn it on and Orderkraft adds that part as a material the first time it shows up on an order. Turn it off and the part is skipped: it shows up on the manufacturing order as a missing input rather than blocking the import.

On is the right choice for most stores. Off is for stores whose parts catalog changes constantly and who’d rather match SKUs to materials themselves.

Check that it works end to end

Place a test order for the product with the parts picked, or wait for a real one. Then open Manufacturing orders in Orderkraft. You should see a new order for the parent line, with each picked part listed under Material list, tagged Customer’s choice.

If the parts didn’t come through, work backwards:

  • Is the product set to Built on the fly?
  • Does the grouping option match your storefront?
  • Do the parts carry SKUs that match your materials catalog, and is the create switch on if they don’t?

Grouping is read when the order arrives, so the setting only applies going forward. Orders that came in before you set it aren’t reprocessed.

What’s next