Custom made: Instantly & auto-generated Price to Quote (ERPNext).
In today's fast-paced and competitive business landscape, the ability to provide instant sales quotations to customers is becoming increasingly essential for success.
Business Case:
Pharmaceutical company - one that is involved in manufacturing and supply of generic medicines. For a request for quotation received from a Customer, the Sales team has to create a configuration which involves the base medicine with any additional changes to salts, multiple levels of packaging starting from individual pills to multi-cartons. Further, there would be markup involved in either individual constituents or even as a bulk before a quotation can be finalised.
Consider another case of a food manufacturing and supply organisation which deals in repackaging of spices. For any request for quotation received from a Customer (or lead), the sales team will have to select the base constituent of any spice, plus any additional variation of any specific component based on taste required. Thereafter, packaging (poly, box, bottle) is an additional configuration which goes into arriving at final per-unit (Kg/grams/packet) cost.
Similar issues in creating quotation can be observed for any organisation which is in business of creating finished goods made of smaller constituents and one or more extra configurations based on Customer demand.
Some of the hurdles the sales team faces can be summarised as:
Allowing arbitrary items to be added to the final price, for example, extra packaging, or even higher quantity of a particular constituent. This essentially means creating more higher level BoM or duplicate BoM to change the prices. (BoM in ERPNext once submitted cannot be edited without cancelling or duplicating)
Creating the finished goods in a specific UoM but allowing other constituent items to be in another UoM.
Adding markup on overall price OR on individual constituent items to arrive at final price.
Playing around with this configuration or multiple such configurations for a comparative quote
How it works
Step 1: Create a new Price Generator Form which by searching for Price Generator in the search bar.
In the field Item, the complete list of items in the site's Item List would be visible. Here, an item has to be selected which is expected to be on the Quotation.
Once this item is selected, its Name, Item Group and default UoM would be auto-fetched. The UoM can be changed to reflect the Quotation UoM (packaging type).
The Quantity field should be updated with the quantity of the UoM selected for which Quotation has to be created.
Step 2: Fetch and configure constituent BoMs
One can fetch the default BoM OR add any number of BoMs which can make up the final Item. Here, care has to be taken that the BoM being selected should have the UoM which is available in the Available UoM Conversion for Item table which is fetched from the Item Document.
That is important to map between two different UoM. For example, how many liters of a particular chemical form 1Kg of a powder once manufactured.
Once added, the Quantity of the BoM cannot be edited as these are from submitted BoM documents and define a ratio of items (raw materials) required to create equivalent quantity. Though, in the next step the individual components can be modified (for Rate and Quantity)
Step 3: Fetch sub-assembly and configure individual constituent items
Fetch the sub-assemblies of the BoM selected in the table above. This would break all the BoMs into their individual items, their Rate and Quantities being fetched from BoM and adjusted for UoM Ratio.
Step 4: Create Quotation
Use the Markup field to define a markup which would generate the Total Markup Price of quantity as selected in Step 1. Don't forget to click on "Calculate" once changes are done on the Markup %. Select the Customer and create a Quotation. Quotation would be created in the background and the name of the Quotation would be shown at the bottom right of the screen in a floating message.
Known Limitations
In case the finished goods and the BoM selected do not have a common UoM, the application cannot function as it cannot map between the quantity-UoM combination of item to Quote and the BoM.
Layout of the form is not coherent and requires replacement of the buttons to create a workflow
Only Customers can be selected to create quotations; Leads cannot be selected.
Price Generator always creates a new quotation and doesn't allow merging of a finished good into an existing quotation.
Future
Janitorial Cleanup which includes standardized naming of the App, files and variables
Support for adding additional charges like Labor/Freight directly in price generator and passing it on to Quotation document
Support for link to the quotation created directly from within the Price Generator document.
Using Walkthrough like screens to allow for a step-by-step data entry and quotation creation
Restricting the number of items which are visible in the Item View, for example: only active, with default BoM etc
Allow for merging multiple Price Generator Finished Good (Item) into a single Quotation
Written by - Hemant Asaldekar
Comments