AX 2012–Kitting revisited

I wanted to revist the blogpost I created on kitting, since the kitting is now built also for AX 2012.  It is a simple and easy to use customization that many of our customers appriciate, spesially since it is included in the same model as the Centralized product information form.  I must excuse the picture quality in this post, but I’m a DAX expert and not a perfect blog stylist.

Kitting is a great alternative for companies that are not equipped with finished goods warehouse facilities or cannot afford the capital expenditure of setting up a finished goods warehousing facility. Your company can take advantage of the services that are necessary to forward a product to market quickly by keeping the component on stock instead of the finished customized product. With kitting you can also speed up the order processing, because no production orders are needed.

Kitting and sales order

One of the requirements is to show the kitting structure in the sales order form in Dynamics AX. Kitting stipulates that there is a hierarchy of items, where only the bottom level is real items that are purchased, stocked and priced, while the upper levels are phantom BOM items. When a customer orders a product, the customer only need to relate to the uppermost BOM-level, while the warehouse workers are picking the actual contents of the kit.


Explosion of a phantom BOM items on a sales order is built into the order line processing procedure, the procedure that takes place every time a sales line is inserted, deleted or updated.

The parameter field Phantom that exists on the item table. This parameter defines if a BOM item is exploded on the sales line. Explosion of BOM item is performed on all BOM levels and all the phantom BOM levels create sales lines marked as a kit, while real items create normal sales lines. The relation between levels for the Kit sales lines is established via a new reference field related to the sales line. When using the sales order screen, the order looks just like the normal sales order screen:


By clicking on the “Show/Hide kit lines”, all lines are shown inside each kit:


The bottom-level sales lines (real stocked items) should be editable only in terms of quantity, unit price, line discount amount and multiline discount amount, the rest: delivery dates, etc. is derived from the uppermost line.

The structure of BOM cannot be manually adjusted: sales lines that are sub levels of the top phantom BOM cannot be manually added, but unwanted lines can be deleted.

Price and discount calculations

Price amounts and discount amounts are set on the lowest level of BOM only. The price on the upper level is always the sum of the sub lines.



Calculation direction

Sales quantity

Calculated downwards

Unit price

Calculated upwards

Discount amounts

Calculated upwards

Discount percent’s

Calculated downwards

Line amounts

Calculated upwards

Inventory transactions to kits

The final kits do not have inventory transactions. The reason for this is that kits are “virtual items” that do not need a physical picking. It is the sub-components that are picked. Kits are still being packing slip updated and printed on the invoice. But still it is possible to see the order process flow of kits, since this can be calculated on the basis of the kit lines.  The line quantity form will therefore still give meaning as shown here.


The Kitting form letter setup form

The display of the kitting structure can be shown per item and customer on confirmation, packing slip and invoice. To handle this, a new form Kitting form letter setup is available. This form is following the standard “Table, Group, All” Microsoft Dynamics AX pattern. Here the user can specify if the kitting structure is printed on confirmation, packing slip and invoice for a particular customer.


The form is available under Sales and marketing—>Common—>Kitting—>Kitting form letter setup.

If the Show kitting structure is enabled, the form letter will show the kitting structure as follows:


Kitting FAQ

This sections covers information related to Assembly and Kitting, and is described as a FAQ.



I have a kitting line, but I don’t have any inventory transactions associated to it. Why?

All exploded kitting lines do not have any inventory transactions. It is only the real items that have inventory transactions. All statuses on the kit are based on the containing lines.

Why can’t I change sales price on a kit.

Price on a kit is based on the prices on each included item. To change the price of a kit, you need to change the prices on the included items.

How do I set up an item as a kit?

A kit needs to be a BOM. The flags ‘Phantom’ also need to be enabled. (References tab page in the Item details form)


In addition, the kit item needs to have a valid BOM associated to the kit.

How do discounts work on kits?

In AX you have 2 types of discounts. Discount amount and percent. Discount amounts need to be set on the separate kit lines, while percent can be set on the kit itself.

How do taxes work with kits?

Taxes are calculated on the kit lines, and not on the kit itself. The taxes and VAT is therefore calculated like standard AX.

I see on the confirmation and invoice that only the kit contains the sales value, and the lines are zero.

Yes. This is how kitting works. The sales value and prices are placed on the kits and not on the kit lines. This is also the perception of the customer when he receives the form letter.

Can I manually add and remove kit lines?

Kit lines cannot be manually added, but they can be manually removed The reason for this is that kitting is supported in a multilevel structure.

How can I see the kit-lines on my sales order?

You can see the kit lines by clicking on the button Show/Hide kit lines on the sales order form, or double click on the clip_image014 symbol on the lines

How can I take out statistics on sale of a kit?

The customer invoice will contain the information required. Therefore use information from here when creating additional statistics/reporting.

I see I get a total available, picked, delivered and invoiced on kits. How is this possible?

The total available is calculated on the basis of the kitting lines. The most restricting kit line will decide the total available on the kit-header.

Can I part deliver a kit?

Yes, by using the deliver now column, and then starting the picking posting. But it is only possible to part deliver whole kits. You should not part deliver sub-items in the kit.

How is returns and credit notes handled for kits ?

Since kits are items that do not have inventory transactions, all returns must be done on the kit-lines. When creating a return on kitting items, it will only be the kit-lines you can take a return on.

If this is something that is interesting for your implementation let me know.  The solution has unfortunately a too large footprint in DAX to be distributed as a product, so it is being delivered as a customization.

I appreciate that I can be a part of this worldwide blog community—as a consultant working from Norway, the blog lets me share more than 20 years of experience with Microsoft Dynamics 365. Along the way, I participated in developing retail, PDA/RF, barcoding, master data, kitting and WMS-solutions for Dynamics. My blog focuses on my deepest interests and expertise: along with a 360 degree view of digital transformation topics, I welcome opportunities to dive into retail and intercompany supply chain automation, logistics, and production—everything that is moving around in a truly connected enterprise. As Enterprise Architect on Dynamics 365, I specialize in strategic development and planning for corporate vertical solutions and works to build international networks that increase knowledge and understanding for Dynamics 365. As an advocate for both providers and customers, I'm committed to ensure that customers constantly changing needs are meet, and I see community as key for increasing expertise. I welcome you to connect with me.

46 comments on “AX 2012–Kitting revisited

  1. Christian Ramer

    Hi, where can I find the source code? On the link provided in here there is nothing to find


  2. Jim Czerniak

    Hi Kurt,
    Very interested in this. We are running AX 2012 Feature Pack. Is your solution compatible with our version?

    Jim Czerniak


  3. Hello Kurt
    Is this Kitting-Solution also available for Dynamics 365?

    Thanks for replying.



    • Sorry. The kitting solution have a to high footprint for Dynamics 365. It would have to be completely rewritten to support extensions, and it is currently simply too much work for a freeware project.


  4. Chris Ramer

    Hello Kurt
    How can I get the code for the Kitting. Where can I find this?


  5. Hello Kurt,

    Can you please guide how we can print all the components defined in Retail Kit when the kit is punched in POS.

    For example a Kit A is made of 3 items, I want the item names of the 3 items in the kit.

    Please suggest.

    Eagerly waiting for your response.



  6. Hi Kurt

    Looks like your kitting solution is still in demand. I know AX now has retail kits but I don’t see a way to explode the components on the SO for picking. Std BOMs almost gets your there… Is your solution still offered or was a std process introduced into AX I am unaware of.



  7. Hi Kurt,
    The Codeplex Project is offline, can send it to me with email please, that would be great.


  8. hi Kurt,
    I dont find your solution in codeplex !?
    Can you share it with us ?
    Thanks a lot


  9. Hi Kurt,
    Your solution is very interesting and fits our customer requirements. Could you please send your xpo via e-mail? Thank you.


  10. Hi Kurt, I am interested in this topic. It seems that the solution is no longer available on the link that you posted. If you could send via e-mail, that would be great! Thanks.


  11. Johan Sandqvist

    Hi Kurt, I’m very interested in looking at this solution, can you share it with me? The codeplex link is unavailable …


    • nick townsend

      Hi Kurt, I’d like to have a look at the kitting solution too, if you could email the project that would be awesome. Thanks.


      • Hi Kurt, I’d like to have a look at the kitting solution too, if you could email the project that would be awesome. The codeplex link is unavailable. Thanks.


  12. Hi Kurt,
    I’m interested in this topic. Can you send me the solution as well?



  13. Manjunath G L

    Hello Kurt,

    It’s an very interesting blog, I really appreciate your efforts on this.
    Please could you mail me how much is customization and how much standard in above blog because I couldn’t see all these things in standard AX-2012 CU7.

    Thanks in advance.


  14. Abdul Rahman

    Hi, We want to have different barcode based on packing unit. For eg., I tem x has Outer Carton, Inner Carton and piece. Each has separate barcode and separate unit price. How can we achieve this? Thanks in advance


    • This is supported in standard AX, by having several barcodes assigned to an item, and where the unit is spesified in the barcode table. Also prices can be spesified ber unit. 100% standard.


      • Abdul Rahman

        Thank you for the prompt reply. Is there any simple step by step document about this? Thanks again


  15. Pingback: Kitting for AX 2012 R2 CU6 now available in Codeplex - Warehouse Management and Distribution - Microsoft Dynamics AX - Microsoft Dynamics Community

  16. Pingback: Kitting for AX 2012 now available in Codeplex | Kurt Hatlevik – Dynamics Ax Blog

  17. Hi Kurt — this kitting solution is perfect for us. Can you send me more info?


  18. Karen Hanley

    How much of this is a Customization and how much is Standard AX? Can we obtain a demo of the customization?


  19. I’m a fresher to AX and I need to creat sales order through x++ code with multiple sales lines could please help? Thanks in advance…


  20. Joseph Dahan

    I received your email. Thank you.
    Are you able to set up a demo and Questions and Answers session? We are interested in the product and would like to evaluate at the next level.
    Please advise your availability. We are located in UTC-05:00 Eastern Time Zone.


  21. Hi Kurt.

    This customization is very interesting.
    This is avaliable for AX2012 R2?
    How can I have this Solution?


  22. Hi, need this customization for a project, can you guide me how we can get it? we have our functional and technical team who can take care for it once getting the XPO if any amendment is required..


  23. I am currently looking to utilize kitting for AX 2012, is this a standard feature or an add-on? As I can not find any information and I have tried setting this up with no success in getting the item to explode on the sales line. Thanks!


  24. we want to implement kitted item solution in our company.. kindly suggest can we have a demo for it.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: