(Note: to be able to use Bills of Materials and Production Orders you need to have activated the Production Order module by going to Settings > Account Setup and ticking the Enable Production Order checkbox.)
As an example, let's assume one is purchasing boxes (product1-box) containing 10 products that are sold individually (product1).
When creating the box/pallet/crate Product (for example by setting SKU as product1-box) its type should be set as "Buy from Supplier".
When creating the individual Product (for example by setting SKU as product1), its type should be set as "Buy from Supplier or Manufacture from Production Order".
Then go to Products and identify the box/pallet/crate type of product. Click on the list icon right next to the product name and edit the Bill of Material of product1.
Add one line to the Bill of Materials, with the product1-box and 0.1 on the quantity column.
Now you can unbox 10 product1 from every product1-box by issuing a Production Order.
Create a Purchase Order for a single item from the box/crate/pallet product code
Once that item is received against the Purchase Order start a Production Order
Use the individual item as your Finished Good, choose the location where the Production Order will take place and the number of items you will be 'unboxing':
Go through the Production Order process as usual allocating components (you can choose to unbox less than the entire box/crate/pallet and complete the unboxing later)
Receive the Finished Goods
The above workflow will result in the increase of stock in the individual items coming out of the box/crate/pallet and the corresponding reduced capacity of the box/crate/pallet to 'create' additional individual items.
Add as many as 9 decimals if the division is not even (for example, if 3 products are contained in every box type 0.333333333 in the quantity field)
You can remove as many products as you need from existing boxes, the remaining quantity of the box SKU will be given with the appropriate decimal points.