Product sold in multiple packagings


#1

Original discussion

Rational

We have a product supplied in certain packaging (sand bag of 25 kg). We sell this sand in bags, not in weight.
We sell this product in its original packaging and others packaging (1 kg, 10 kg).
The unit sale price for 1 kg varies in function of the packaging, for example:

  • 1 kg: 6 euros,
  • 10 kg: 38 euros (3.8 euros/kg),
  • 25 kg: 50 euros (2 euros/kg).

In a Tryton sale, we need:

  • to apply the price corresponding to a certain packaging;
  • indicate the quantity of the product in this certain packaging;
  • to show the packaging information in reports (sale, invoice, shipment).

Proposal

###UX
In the product form view, in general or sale tab, have a list of availables packagings; a packaging is a factor that multiplies the product’s UOM, and a price.

When we add a product in a sale, there is a field to select the packaging of the product. When we select a packaging the unit price is updated with packaging price.

In the documents (sale, invoice, shipment), we have one supplementary column indicating packaging.


(Sergi Almacellas Abellana) #2

The nantic guys have developed some modules that implement this kind of features. You can find them in their bitbucket account:

https://bitbucket.org/nantic/profile/repositories?search=package


(Cédric Krier) #3

Is it not better to implement a “second sale UOM” which is from a different UOM category than the default UOM. Instead of introducing a new object “packaging” which will be confusing with the existing one from stock_package.
As this will result in the creation of many new UOM category, we should maybe also allow to constraint a category to a set of product because sand “bag of 25 kg” is not the same as a cement “bag of 25 kg”.


(Guillem Barba | NaN-tic) #4

The “second_uom” modules are not to manage packagings.
The modules that implement this blueprint are priduct_package, sale_product_package…


(Cédric Krier) #5

Why not?
For what I see from the *package modules, package is no more than a second unit of measure. And by naming it like that, it allows to have a more generic usage.
Also the name package is already used by stock_package module for a very different meaning.