Skip to Content

Different business scenarios and Sales BOM techniques for header and item level stock and prices

Dear Fellows

I have been continuously contributing in SD forums from last year and I have seen many threads about Sales BOM. Sometime users want to modify sales BOM as per their own business scenarios so here I am going to explain how sales BOM helps us to meet different requirements.

Here, I assume that you know how Sales BOM, item category, schedule line category and copy control works in SD process.

If you google with search term “Sales Bom in SAP SD” system will give you a lot of information about standard settings of sales BOM by using item category group ERLA and LUMF. This information can be found on following link.

In standard settings you can control pricing, inventory and delivery related indicator either on main item level or sub item level. If you use ERLA item category group in finished goods material master data, it will control pricing and inventory at header level and sub items will work as text items. For sub item level control you use item category group LUMF.

A very common and easy to understand example which SAP’s standard documents have used is sale of a computer. In a computer sale, we sell it with brand name and specification. For instance if we sell a Dell pentium 4 desktop computer, it will have a mouse, keyboard, monitor and speakers but as a whole this is a Dell pentium 4 PC. So we will enter only one material in sale order with material description DELL Pentium 4 Desktop PC and system will determine all compnents automatically.

Sometime we get some requirements which SAP standard item categories and schedule line categories cannot meet. So we need to understand the basic concepts of item categories and schedule line categories and change them to fulfill our requirement. Let me explain with some real business scenarios.

Scenario 1:     In SAP free goods standard settings we can maintain 1 free good material against 1 main item i.e. there is 1:1 combination. We can play with material’s quantity but not with number of materials. If we get a requirement from client that if customer buys 5 quantity of material A then he will get 1 quantity of material B then it can be fulfill with standard free goods by maintaining it in VBN1. But if customer will get 1 quantity of material B and 1 quantity of material C on buying 1 quantity of material A then we can get this done by using Sales BOM.The settings for main item and sub item will be as follows. I am assuming that you want to cumulate cost prices of sub items in main item at the time of billing. If you don’t want this then simply dont mark the check box in copy control from delivery to billing at item level for cumulate cost. Also maintain BOM for master data in CS01 with usage 5.

Main Item Settings

Billing Relevance A
Pricing X
Sructure Scope A
Application SD01
Determin Cost Check
Schdule line Allowed Check

Standard Shedule line category (CP) is used and Item Category Group in Material master sales view is Z001 which is customized for free goods main item materials. I will be using same material group for other scenarios as well.

Sub Item Setting

Billing Relevance Blank
Pricing Blank
Sructure Scope Blank
Application Blank
Determin Cost Check
Schdule line Allowed Check

Standard Shedule line category (CP) is used and Item Category Group in Material master sales view is NORM.

Item Category Assignment

SaTy ItCGr Usg. HLevItca DfItc

Here ZMZM is my order type and Z001 is material group which I have maintained only in main item material’s sales view field Item category group from material master (MVKE-MTPOS). Here no need to maintain in General item category group (MARA-MTPOS_MARA). ZTS1 is main item and ZTS2 is sub Item.

Scenario 2:     Lets take another example of a split air conditioner. We are selling split air conditioners to customers and producing them in our plant. In split air conditioner Indoor, outdoor and Remote control are three separate materials. We sell split air conditioner in finished goods with capacity and brand name like 1 Ton Samsung AC 2 Ton Mitsubishi AC and we can also sell components individually. So we need to maintain prices at both level header and item. Here we will maintain stock at item level and price at item and header both. If we are selling a whole package of split air conditioner then it will be at header level and if we are selling only one component then there will be individual price of component.

When we are selling a whole package

Main Item

Billing Relevance A
Pricing X
Sructure Scope A
Application SD01
Determin Cost Check
Schdule line Allowed Check

For this You have to use schedule line CT with no movement type and relevant for delivery if you want to use delivery related billing and copy the main item in delivery document. If you dont want to copy it in delivery then you can simply use CD shedule line category for main item but for this you have to use order related billing. It is good to copy main item in delivery just like a text item.

Sub Item

Billing Relevance Blank
Pricing Blank
Sructure Scope Blank
Application Blank
Determin Cost Check
Schdule line Allowed Check

For Sub item we can use CP or CN as per your requirement.  

Item Category Assignment

SaTy ItCGr Usg. HLevItca DfItc

When we are selling a component

When you will enter compnent material in order, system will determin normal item category TAN and with billing and pricing activated and price will be determined from condition record which you have maintained for it. So you can sell a whole package or component in same order type.

Scenario 3:      If you are dealing with some business process in which you need to maintain multi level BOMs then you can achieve this by changing item category settings of main item and assignment of item categories. I don’t have any real business scenario but lets assume we are selling comupters and in our company we are maintaining BOMs for computers and CPU separately. If we are selling a desktop computer then system will explode BOM of Dell 780 Computer in which we have maintained Monitor, CPU, Key Board, Mouse and Speakers materials and for CPU we have another BOM with Mother Board, Power Supply, Hard Drive and Super drive etc. Now when we enter Dell 780 material system will explode two BOMs. Prices will be maintained for Computer (Exluding CPU). For CPU we will maintain seprate price. Stock and deliveries will be maintain at sub item level.From configuration point of view there will two differences from scenario 2.

Main ITem

Billing Relevance A
Pricing X
Sructure Scope B
Application SD01
Determin Cost Check
Schdule line Allowed Check

Sub Item settings and schedule line settings will be same as in scenario 2.

Item Category Assignment.


With this you can sell whole package and also compnents separately.


These are some basics and most common business processes and I have shared these just to give you an idea. You can modify them as epr your scenario. It is all about playing with item category and schedule line settings. If you have some other BOM related business scenario or process which you are not able to configure with sales BOM, you can post your scenario in comment and let me help you in that.

There are many other controls like not to change quantity or material of sub items, copy whole package in delivery or allow single items too, creating automatic PR (third party sale) and maintain prices for compnents and whole package etc. I am not going in detail of these as we can find a lot of links in SCN describing these controls.

Value addition comments and suggestions will be highly appriciated. TW Typewriter if there is any other business scenario or example in your mind please share with me.


You must be Logged on to comment or reply to a post.
  • MoazzaM,

    Thank you for this blog!

    Just memorizing theoritical knowledge of BOM..LUMF, ERLA etc. is not sufficient!

    (as with all SAP SD topics / functionalities) Competently "connecting" the theory with the various business scenarios makes a consultant so much more value-adding to its clients etc. etc.

    Your business examples are priceless aids in the learning process (wrt BOM)!

    After going through your blog, some comments -

    1. In all the scenarios - ONLY one item (the main-item) flows to the billing document.

    The client might want to have both the main and sub items in the billing document. And also in the output of the billing document.

    By having the field "Billing relevance" populated at both the main and sub item categories, all the items could be populated in the billing document.

    2. Field "Statistical value", in item category, VOV7 - When a item is not relevant for pricing, not only do I maintain pricing = blank, but also maintain field Statistical value = X

    3. In Scenario 3 -

    3.a. Have you missed out the below entry in T184 -

    ZMZM Z001 ZTS6

    3.b Would the below entry, result in incorrect data in the sales order?

    ZMZM Z001 ZTS5


    If you activate pricing for ZTS5, then it would be activated for main and sub item, therefore the price would be more than (double) of the price that should be.

    Side comment - I would read, test and think about BOM (and your document) and get back if I have more comments.

    Keep up the good work!

  • Dear Moazzam

    Nice documentation ,what ever you shared it will be great and very beneficial to persons who are most willing to learn some thing

    And by the by thanks to T.W

    plz explain me if you have another business scenario with 3 ONE

    thanks a lot  

    • venu,

      I have to think about scenario 3.

      I feel one thing which could add value to this blog is for each scenario the transactions (sales order, delivery, billing). The configuration settings would be seen clearly in the sales cycle.

      Would you like to create transaction data for the above mentioned scenarios and past those here?

      It might help you too.

      • Dear TW and Venu

        These were three senarios in my mind and as I said these are just to give you people an idea that how we can modify BOM as per our own requirement. If you have any other scenario you can configure that by just changing the settings of item categories and schedule line categories. Its easy and simple.


        • Dear Moazzam and T.W

          Item Category Group in Material master sales view is Z001 which is customized for free goods main item materials. I will be using same material group for other scenarios as well.

            Z001  Means ERLA Right ?

          thank you so much

          • Hi Venu

            No, Z001 is my own item category group. It is used to test these scenarios. ERLA and LUMF are standard item category groups used for header level and item level BOMS but in my case I have created my own and configured BOM as per my own scenario. It has nothing to do with ERLA.


          • Dear Moazzam

            In scenario 1 For main item You have maintained z001 own item category group

            But generally ( STANDERD one ) We have to maintain ERLA  ?

            has nothing to do with ERLA

            i am confused with this  bz as i understood , in your case you have used ur own customized item cat group z001 But generally ERLA

            so plz comment on this

            Thanks a lot for ur help 

          • venu, D Sea,

            I feel venu's point is valid, in Scenario 1, MVKE-MTPOS (item cat group) ERLA could have been used also.

            In item category determination, ERLA could be used even though business uses customized item categories (Z***). Provided the pricing, billing is done at main-item level.

            In MoazzaM's example, he has used a customized item cat group, that too is fine. In both the cases (ERLA or Z001), the important thing is that the respective MMR should be populated with the correct item cat gr.

          • venu,

            Please think of item category gr as a "tool" to determine the correct item category and nothing more.

            In other words, item category gr name is not important but how it is used, to determine which item category(ies).

          • Hi,

            Just a small input here 😎

            Anywhere you work on real SAP Environment if anything like a :

            • Transaction Code
            • Table Name
            • Field Name
            • Program Name
            • Customizing Values - Ex: the Item Category Group in this case
            • Etc.

            has a Z or Y [ in some cases] as the first alphabet in the code, it is not a Standard SAP Name / Code and created by people like you and me.


  • Hi

    I just used Z001 because i wanted to use it πŸ˜€

    Seriously we can use ERLA or LUMF or any other because this is our customized sales document type ZXXX and customized item categories so item category group will be used to determine item categories and it can be any Z or standard group. But best practice is not to gamble with standards and always create your own when you are testing something.


  • Dear Moazzam,

    Thanks for the post.

    But by post-If we want to give B and C as free with A--then BOM can be ideal solution.

    If it is done by BOM(ERLA/LUMF)-then the sub-items are not relevant for Inventory In ERLA and main item is not relevant inventory in LUMF(because these two will act as Text items in respective scenarios)--which is not true with free goods

    Please clarify me on this?



    • Phanikumar,

      The control for whether relevant for inventory resides in the schedule line category, field Movement type (601).

      So what ever the requirement e.g. inventory relevant at sub item level or at main level or at both levels, the relevant schedule line category settings have to be done.

    • Phanikumar

      Did you read that document which I have shared in my blog? Please check the behave of ERLA and LUMF item category groups. In my scenario main item and sub items both are delievery relevant, valuated stock and main iten is billing relevant too. Can we do this with ERLa or LUMF?


  • Hi Moazzam,

    Great,its really nice.

    But I want to know if my company wants to provide free one material with 3 different materials.

    for example:-If u buy material A,material B and material C then Material D will be free.

    Could you help me for this.How to configure this?

    • Hi Santosh

      This can be done with ABAP customizing. There would be a lot of ABAP work involve in it. Z table and and code in MV45AFZZ program. Sales BOM wont support this scenario.


  • Dear MoazzaM,

    The extent of the explosion of BOM depends upon the Item Categ and not Item Categ Gr. As TW Typewriter rightly said that item categ gr is only a tool to pick the correct Item Category. So I my views instead of emphasizing on Itm Categ gr you should have explained that how Item Categ determines the extent of BOM explosion.

    Hope you don't mind.


    • Dear R Sgr

      Thank you for your suggestion. Topic of this blog is use of sales BOM as per business scenarios and I tryied to explain that. How does item category explode in sales BOM is a different topic and a user who is working with sales BOM should know explosion of item categories.

      From you comment it looks like you also know how item category explodes and determines in SD πŸ™‚


  • Welldone Mozzam for your blog!

    I am currently faced with a bit different scenario of BOM in Sales Order. In this case, my client wants that when the Invoice is released to FI, only the Values for the Sub-Items should post to their Revenue Accounts and their respective Profit Centers while the Value at the Main-Item will only be statistical for Printout. That is if you have Sub-Item "A" (Revenue Account 40000001) with value $100, "B" (Revenue Account 40000002) with value $70, "C" (Revenue Account 40000003) with $30. So when invoice is released to FI, these values will go to their respective Revenue Account and Profit Centers while the Main-item ZZ will only be statistical for printout.

    How can this be achieved?



    • Hi

      Thank you for your compliment.

      For your query posting values of sub items to different revenues account is something I never worked on it. We can have value of main item just for statistic purpose or print purpose. For this you just need to make main item not relevant for billing. Get its price from sale order in your print smartform of invoice.

      For more and better suggestions you may post it as a discussion in SD forum.


      • MoazzaM,

        Interesting comment related to the requirement - Main item is set not relevant for billing & print out of billing document (i assume it is bill OR is it sales order, delivery?)

        When main item is set not relevant for billing, then this does not populate in the billing document but in the printout of bill, you have the main item. There is an inconsistency between bill in SAP and its printout. Please confirm & why so?

        By keeping pricing as statistical in the main item, you could have populated it in the billing document also.

        • Dear TW

          There are always many ways to do one thing. My point was that if main item is required only for printing in billing then we can mark it not relevant for billing and in invoice print out we can get a link to sales order and get its price from there.

          Your point is also valid and we can achieve this requirement from that as well. Thank you for your value addition comment.


  • Thank you Moazzam!!

    Special mention of your language and sentence formations, it makes it so easy to understand and comprehend.

    Also, business examples are very helpful.

    • Thank you Jayshree. Actually as you know English is not my primary language so I can't write difficult senteces. I always try to use simple and easy words and sentences so that people like me can understand it easily πŸ™‚


  • Hi Moazzam,

    Nice and simple explanation about BOM. I have one scenario, suppose there are different types of CPU for example Intel core 2 duo, core i3, core i5, core i7. These CPUs can be sold as a part of PC or as an individual pieces. Is it possible to maintain just one material as CPU and further classify it using sales material groups in sales org2 view in material master and then use it as main or sub item as per requirement?

    • Hi Zaheer

      Yes this is possible. In SAP we don' maintain two materials for one physical material. We can sell it as part of BOM or as separate item in same sale order. Differnece will be there in item categories. With BOM it will behave like sub item and as separate material it will come in TAN like normal item.


      • Hi Moazzam,

        Thanks for your reply. You are absolutely right the item category controls what a bill of material can do in a sales order. Let's come to the sales material groups. As I wrote you before, if there is a material called CPU and it has different types core i3, i5 and i7 and it is Intel based CPU. In this scenario if I create a material CPU and assign it a material group Intel (Basic data 1 view) and then for further classification I use the sales material groups (sales org 2 view) then how can I control pricing to the extent of sales material groups because for pricing the only field which is available in the field catalog is MVGR1 which is material group 1 and for other material groups there is no option in the field catalog.


        • zaheer,

          MoazzaM also touched upon this point - For core i3, i5 and i7, are 3 different material master records created in SAP?

          Do you want to have different pricing for each of the above materials?

          • Hi TW,

            No,  there is only one material master which is CPU and I am trying not to create material master for i3, i5 and i7 and use sales material group for further control, is it possible?

          • Hi zaheer,

            No it is not possible! Also, if there is one mmr for i3, i5 and i7; then how would you maintain stock for these 3 products (materials) in SAP?

          • Hi TW,

            Have a look to this scenario.

            Accessories (can be sold as an individual piece or as a part of PC)

            IBU – Intel Based CPU

            ABU – AMD Based CPU

            M17 – 17 ” Monitors

            M19 – 19″ Monitors

            WM – Wired Mouse

            LM – Wireless Mouse

            WKB – Wired Keyboard

            LKB – Wireless Keyboard

            Materials which will be sold in a package

            987655 ABC Graphic Desktop

            765432 ABC Portable Laptop

            987654 ABC Performance Desktop

            In the above scenario I am creating two material groups

            1, Desktop

            2, Laptops

            Three main items

            1, Graphic Desktop 

            2, ABC Portable Laptop

            3, ABC Performance Desktop

            Eight sub items which can be sold as a part of main items in BOM or as an individual piece if necessary

            1. IBU – Intel Based CPU

            2. ABU – AMD Based CPU

            3. M17 – 17 ” Monitors

            4. M19 – 19″ Monitors

            5. WM – Wired Mouse

            6. LM – Wireless Mouse

            7. WKB – Wired Keyboard

            8. LKB – Wireless Keyboard

            Do you think this above configuration approach is right?


          • zaheer,

            Yes, you can have BOM with the main and sub items you have mentioned!

            For all of these materials, material master record has to be created.

            Please note - Next step - BOM (master) has to be created in CS01 before it can be used in the sales order.

            That means the material - main item and subitem combination is already predefined in SAP as master data. Then the same is used in sales transactions.

            As explained in this document, the configuration in item category and item category determination have to be done.

  • zaheer zaidi

    TW has already answered to all of your queries and TW is right for BOM usages. I hope you got the idea how we can use BOM functioanlity in your business process. If you need some clarification or help you can come here again.


    • Hi

      That is the solution of the problem which I had posted few days ago about BOM. I would like to share it here in this forum so people can benefit from it.

      There is a main item HP Laptop. Sub items can be sold with the main items or as an individual component. If sub items are part of HP laptop then the main items HP Laptop will be priced and sub item will not be priced but price is applied in case if the sub items are sold individually.

      Here are the steps I followed to implement this business scenario.

      I have created following main and sub materials.

      Main Items

      Material: lPHP(Laptop HP), mat group LAPTOP, sales mat group HP

      Sub Items

      Material: COREI3 (Corei3 Processor)

      Material: Mhp17 (Monitor HP 17”)

      Material: MA4WIRELESS (A4 tech wireless laptop mouse)

      Material: KYBLAPTOP (Keyboard Laptop)

      Material: HDDRLP500 (Hard drive 500 GB)

      Material: RAM1GB (RAM 1GB)

      1, Created a new sales document type zor1

      2, Created 2 item category groups zorm and xorm. I used zorm in the material master of main item and for sub items I used xorm as the item category group.

      3, Configured item categories TAQ for pricing, TAN for pricing and TAE is not relevant for pricing.

      I have done the item category determination for the main and sub items.

      Main item: Sales doc type (ZOR1), Item category group ( ZORM) default Item category (TAQ)

      Sub item: Sales doc type (ZOR1), Item category group ( XORM), higher level item category(TAQ) default Item category (TAE)

      For main item the item category TAQ will be determined which is applicable for pricing and for sub items item cat TAE will be determined which is not relevant for pricing.

      If the sub items are sold individually then the item cat determination rule is as follow

      Sales doc type (Zor1), item cat group (XORM) default item cat (TAN)

      In the above condition item cat TAN will be determined for sub items and it is now relevant for pricing so now sub items can be sold as an individual component as well.

      I have created material BOM and its working fine.

      Thank you Moazzam and TW for the help.

      • """ Created 2 item category groups zorm and xorm. I used zorm in the material master of main item and for sub items I used xorm as the item category group""""

        For The Main Item you used NORM But In Header level BOMs we will use ERLA--How you managed??


      • zaheer,

        In your case, you could have also used the standard item category group - ERLA and NORM (in place of ZORM, XORM)

        In the material master record the item category groups do not have to be changed to your custom item category groups (if material created already).

        If you want to restrict these materials ONLY to this process (and no other sales process) then also you are restricting as the sales document type is custom (and not OR etc.) so with standard item category groups and custom doc type it could have been achieved.

        Thanks for sharing!

        • Hi TW,

          I have plan to create custom item categories to avoid touching standards ones because it is not recommended to change the standard sales doc types, item cat etc. That is the reason I have created custom item cat groups. Correct me if I am wrong.

          Thanks πŸ™‚

          • Hi

            You are right about item categories and document types but for item category group we can use standard one for determination for ouw own item categories and document types. There is no settings in NORM item category group so you can use it but there many settings and control parameters in TAN or OR and that is why it is recommended that you create a separate one for your use.


          • zaheer,

            At the initial phase of the career, when practicing in IDES, test systems, then configure as much as you can! Play with the system - tear it apart and then assemble it again!

            But while doing this keep your mind, think what each block signifies both from business and technical points of view. If I create something what would be the effort vs. benefit.

            Yes, you are correct, we should not change standard configuration objects like sales document type, item categories etc.

            Related to item category group - you created new ZORM but how did you create it? What did you take as reference item cat group?

  • Hi Moazzam,

    Iam trying to copy complete BOM from Quotation to Order but pricing not getting Copied

    Only automatic pricing copied but not manual ones

    i have tried with Pricing type A,D,G but not able to copy

    please help me where i have gone wrong

    • Hi

      Pricing copying should work with D. If this is not working, you should search for some SAP note. Did you search this and in other SCN threads?


  • Hi Moazzam,

    thank you for this helpful document.

    We want to use LUMF in our business but we have following problem. Maybe you have a solution for this?

    We have 2 SAP systems.

    1. PO is created on system A with BOM header item.
    2. PO is transmitted via ORDERS idoc to system B.
    3. Sales order is created -> BOM Explosion
    4. Delivery is created and issued with header and sub items
    5. We transmit several idocs (DESADV, GOODSMVT..) to system A with sub items
    6. System A doesnΒ΄t expect the sub items since only header item is ordered in the PO
    7. Idoc cannot be processed --> manual correction of idocs and PO is necessary

    Thank you in advance and best regards


    • Hi


      I am not sure if you already solved your problem or not as I am responding back late but still I wanted to update you that this is not a functional problem. Your issue is with Idoc generation. Ask your Middle-ware system (XI or PIPO) to convert Idoc as per system A expecting and remove sub items.