Best practice question on quoting custom machinery

Still in the very early phases of our implementation. I am working on changing the way I quote the custom robotic equipment we build. Because of the custom nature of it, it’s almost impossible to do an assembly, bom, quote it, then transfer that to a sales order… way too much speculation up front.

In Netsuite I sell a part that would be considered a “sales kit” in Epicor… I add what I know will be in it, inventory items that need to come out for that specific project. The “Sales kit” really is only ever sold once. Every new project has a new “sales kit” under a different part number, with different parts inside the kit.

Looking at how Epicor handles things… maybe I can do it a little different. Forgive me if I don’t ask this the right way, this is still very new to me… but I am just trying to establish a process on the quotation side that will follow through the sales order and fullfillment process with less error and effort…
In Epicor - if I create a “part” that is a “sales kit” and call it a generic name like “SYSTEM”… and if I leave the kit parts out of the generic part itself… .then in Quote Engineering build the “kit” there instead, add my operations and materials etc… Could I not then continue to sell that same “SYSTEM” with different kitted parts every time I do it in the Quote Engineering??

Or am I overthinking this? I realize it’s something I’ll speak with our consultants about as well, just wanted to get some feedback here if any of it makes sense to you…


You can reuse the SYSTEM part and create a unique BOO and BOM on each quote.

When the quote becomes a sales order a Make Direct job will be created and the job details will pull directly from the quote engineering data.

1 Like

So awesome. Thanks for the info.

Machine Building or really any assembly works well with the quote, far better than the spreadsheet approach because you are getting costs from your system as you build it out.

  1. Set up a template for your bill of operations which may include subassemblies.
    This template can be an engineered revision or from another quote (marked template)
  2. Pull in the template by getting details or from the engineering tab, find the method, and drag and drop in the subassemblies that you want.

@zwilli526 is right - after creating the quote, you now have a sense of your margin for the job.

A variation on this is to have placeholders on the method.
Instead of a list of materials, place one part number on “electrical components” and assign it an estimate of the total cost. After winning the quote, and a job is created, update the material list with the correct components that you need. The same goes for the operations - put in “assemble” with total estimated hours. Later, break it out to the three assembly operations that you have.

One last benefit that you have using a quote is the ability to enter in part on the fly for materials and subassemblies.

By using this approach you now can compare the quoted, estimated(job), and actual costs on your machines.


It sounds like you’d benefit from product configurators. Instead of manually editing the quote MoM, the configurator presents a UI to collect user inputs that describe product options. When you run Get Materials on the quote, rules run on the quote MoM and modify it based on the inputs. Then you can calculate an accurate cost and price in the quote worksheet tab. You can still manually edit the MoM if needed, like if a customer wants to order something really weird that your configurator doesn’t account for. From there, it’s like @zwilli526 said; the job pulls the customized MoM off the quote.