# Choosing between a product template or a variant

**URL:** https://discuss.tryton.org/t/choosing-between-a-product-template-or-a-variant/3767
**Category:** User
**Created:** [February 5, 2021, 10:32am UTC](https://discuss.tryton.org/t/choosing-between-a-product-template-or-a-variant/3767 "2021-02-05T10:32:19Z")
**Posts on this page:** 5
**Page:** 1

<div class="post-metadata">

### Author: ![dotbit](https://discuss-cdn.tryton.org/user_avatar/discuss.tryton.org/dotbit/32/2093_2.png) [@dotbit](https://discuss.tryton.org/u/dotbit)
#### Post date: [February 5, 2021, 10:32am UTC](https://discuss.tryton.org/t/choosing-between-a-product-template-or-a-variant/3767/1 "2021-02-05T10:32:19Z")

</div>

Because I am uncertain of where a variant should be used I created all my base products as individual templates with one variant each, safer like this.

Now I am creating a new product which many people should be familiar with:

EPAL 1, Class A, cost\_price = 20 RON  
EPAL 1, Class B, cost\_price = 15 RON  
EPAL 1, Class C, cost\_price = 10 RON

All these products will be sold at cost price.

Should they be created as template+variant, or as one template+3 variants?

Do I need to extend product.product in order to have a different sale price for each variant as suggested in [price-on-product](https://discuss.tryton.org/t/price-on-product-why-the-cost-price-is-treated-differently-than-the-list-price/1251/2)

Should I use the product\_price\_list in order to solve this by using the formula, even though the price for the pallets is the same for everyone?

---

<div class="post-metadata">

### Author: ![pokoli](https://discuss-cdn.tryton.org/user_avatar/discuss.tryton.org/pokoli/32/22_2.png) [@pokoli](https://discuss.tryton.org/u/pokoli)
#### Post date: [February 5, 2021, 11:07am UTC](https://discuss.tryton.org/t/choosing-between-a-product-template-or-a-variant/3767/2 "2021-02-05T11:07:20Z")

</div>

> [@dotbit](#):
>
> Should they be created as template+variant, or as one template+3 variants?

There is no all cases solution on this question.  
But if you are using the product attribute module to store the class you should use 3 variants with the same attribute set.

> [@dotbit](#):
>
> All these products will be sold at cost price.

This can be achieved by using `cost_price` expression in the price\_list of this products. Otherwise tryton will always use the list\_price, which by default is the one of the list price.

> [@dotbit](#):
>
> Do I need to extend product.product in order to have a different sale price for each variant as suggested in [price-on-product](https://discuss.tryton.org/t/price-on-product-why-the-cost-price-is-treated-differently-than-the-list-price/1251/2)

If you plan to use the cost price of the variant I do not think it this right way to go.

> [@dotbit](#):
>
> Should I use the product\_price\_list in order to solve this by using the formula, even though the price for the pallets is the same for everyone?

Indeed if you do not want to use the `product_price_list` module you can override the template to include a flag that indicates that the sale price is the cost price and override the [get\_sale\_price](https://hg.tryton.org/modules/sale/file/5cbf7bd159a7/product.py#l115) function to require the cost\_price as sale price for this products.

Hope this helps

---

<div class="post-metadata">

### Author: ![dotbit](https://discuss-cdn.tryton.org/user_avatar/discuss.tryton.org/dotbit/32/2093_2.png) [@dotbit](https://discuss.tryton.org/u/dotbit)
#### Post date: [February 5, 2021, 11:24am UTC](https://discuss.tryton.org/t/choosing-between-a-product-template-or-a-variant/3767/3 "2021-02-05T11:24:30Z")

</div>

Thank you Sergi for the reply.

> [@pokoli](#):
>
> There is no all cases solution on this question.

This is the reason why I specified a concrete example. I asked about this case.

In conclusion my decision to use one template + one variant/template was right in order to have the best flexibility.

I delayed creating products for a long time because of this question. I also see that there are a number of similar posts in [discuss.tryton.org](http://discuss.tryton.org), which means that there are more people confused by this.

Basically usually if you need a different price per variant, separate products should probably be used.

I guess variants are useful for example for a web-shop, to select the colour of a T-shirt.

---

<div class="post-metadata">

### Author: ![pokoli](https://discuss-cdn.tryton.org/user_avatar/discuss.tryton.org/pokoli/32/22_2.png) [@pokoli](https://discuss.tryton.org/u/pokoli)
#### Post date: [February 5, 2021, 11:33am UTC](https://discuss.tryton.org/t/choosing-between-a-product-template-or-a-variant/3767/4 "2021-02-05T11:33:22Z")

</div>

> [@dotbit](#):
>
> I guess variants are useful for example for a web-shop, to select the colour of a T-shirt.

Yes, the T-shirt is a clear case of the variants.

But we also have some customers that have products that are very similar (but not the same). As they sell using the same list price they use two diferent variants to get the proper stock of each witout having to duplicate the full information.

---

<div class="post-metadata">

### Author: ![system](https://discuss-cdn.tryton.org/uploads/default/original/1X/c6f8ec0a40525cdcd50058c734283450a4b3d38b.png) [@system](https://discuss.tryton.org/u/system)
#### Post date: [March 7, 2021, 11:33am UTC](https://discuss.tryton.org/t/choosing-between-a-product-template-or-a-variant/3767/5 "2021-03-07T11:33:29Z")

</div>

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
