@@ -72,23 +72,38 @@ The **tax name** is displayed for backend users in the :guilabel:`Taxes` field i
7272Tax computation
7373~~~~~~~~~~~~~~~
7474
75- - **Group of Taxes **
75+ The :guilabel: `Tax Computation ` field determines how the tax amount is computed from the sales
76+ price. The following options are available:
77+
78+ - :ref: `taxes/computation/group-of-taxes `: a combination of several other taxes
79+ - :ref: `taxes/computation/fixed `: a fixed amount
80+ - :ref: `taxes/computation/percentage-of-price `: a percentage of the tax-excluded sales price
81+ - :ref: `taxes/computation/percentage-of-price-tax-included `: a percentage of the tax-included total
82+ - :ref: `taxes/computation/python-code `: a custom user-defined formula.
83+
84+ .. _taxes/computation/group-of-taxes :
85+
86+ Group of Taxes
87+ **************
7688
7789 The tax is a combination of multiple sub-taxes. You can add as many taxes as you want, in the
7890 order you want them to be applied.
7991
80- .. important ::
81- Make sure that the tax sequence is correct, as the order in which they are may impact the
82- taxes' amounts computation, especially if one of the taxes :ref: `affects the base of the
83- subsequent ones <taxes/base-subsequent>`.
92+ .. important ::
93+ Make sure that the tax sequence is correct, as the order in which they are may impact the
94+ taxes' amounts computation, especially if one of the taxes :ref: `affects the base of the
95+ subsequent ones <taxes/base-subsequent>`.
96+
97+ .. _taxes/computation/fixed :
8498
85- - **Fixed **
99+ Fixed
100+ *****
86101
87- The tax has a fixed amount in the default currency. The amount remains the same, regardless of the
88- sales price.
102+ The tax has a fixed amount in the default currency. The amount remains the same, regardless of the
103+ sales price.
89104
90105.. example ::
91- A product has a sales price of $1000, and we apply a $10 * fixed * tax. We then have:
106+ A product has a sales price of $1000, and we apply a $10 fixed tax. We then have:
92107
93108 +-------------+-------------+----------+----------+
94109 | Product | Price | Tax | Total |
@@ -97,42 +112,115 @@ Tax computation
97112 | 1,000 | 1,000 | 10 | 1,010.00 |
98113 +-------------+-------------+----------+----------+
99114
100- - ** Percentage of price**
115+ .. _ taxes/computation/percentage-of- price:
101116
102- The * sales price * is the taxable basis: the tax amount is computed by multiplying the sales price
103- by the tax percentage.
117+ Percentage of Price
118+ *******************
104119
105- .. example ::
106- A product has a sales price of $1000, and we apply a *10% of Price * tax. We then have:
120+ The tax rate is a percentage of the **tax-excluded ** subtotal.
107121
108- +-------------+-------------+----------+----------+
109- | Product | Price | Tax | Total |
110- | sales price | without tax | | |
111- +=============+=============+==========+==========+
112- | 1,000 | 1,000 | 100 | 1,100.00 |
113- +-------------+-------------+----------+----------+
122+ The exact tax computation depends on the :ref: `taxes/included-in-price ` field, which determines
123+ whether the sales price should be treated as tax-excluded or tax-included:
114124
115- - **Percentage of Price Tax Included **
125+ .. tabs ::
126+ .. tab :: Tax-excluded
116127
117- The **total ** is the taxable basis: the tax amount is a percentage of the total.
128+ If :guilabel: `Included in Price ` is unchecked, the computation is :math: `\text {tax amount}
129+ = \text {sales price} \times \text {tax rate}`.
118130
119- .. example ::
120- A product has a Sales Price of $1000, and we apply a * 10% of Price Tax Included * tax. We then
121- have:
131+ .. example ::
132+ A product has a sales price of $1000, and we apply a 10% :guilabel: ` Percentage of Price`
133+ tax that is not :guilabel: ` Included in Price `. We then have:
122134
123- +-------------+-------------+----------+----------+
124- | Product | Price | Tax | Total |
125- | sales price | without tax | | |
126- +=============+=============+==========+==========+
127- | 1,000 | 1,000 | 111.11 | 1,111.11 |
128- +-------------+-------------+----------+----------+
135+ +-------------+-------------+----------+----------+
136+ | Product | Price | Tax | Total |
137+ | sales price | without tax | | |
138+ +=============+=============+==========+==========+
139+ | 1,000 | 1,000 | 100 | 1,100.00 |
140+ +-------------+-------------+----------+----------+
141+
142+ .. tab :: Tax-included
143+
144+ If :guilabel: `Included in Price ` is checked, the computation is :math: `\text {tax amount} =
145+ \text {sales price} \times \frac {\text {tax rate}}{1 + \text {tax rate}}`.
146+
147+ .. example ::
148+ A product has a sales price of $1000, and we apply a 10% :guilabel: `Percentage of Price `
149+ tax that is :guilabel: `Included in Price `. We then have:
150+
151+ +-------------+-------------+----------+----------+
152+ | Product | Price | Tax | Total |
153+ | sales price | without tax | | |
154+ +=============+=============+==========+==========+
155+ | 1,000 | 909.09 | 90.91 | 1,000.00 |
156+ +-------------+-------------+----------+----------+
157+
158+ .. _taxes/computation/percentage-of-price-tax-included :
159+
160+ Percentage of Price Tax Included
161+ ********************************
162+
163+ The tax rate is a percentage of the **tax-included ** total.
164+
165+ The exact tax computation depends on the :ref: `taxes/included-in-price ` field, which determines
166+ whether the sales price should be treated as tax-excluded or tax-included:
167+
168+ .. tabs ::
169+ .. tab :: Tax-excluded
170+ If :guilabel: `Included in Price ` is unchecked, the computation is :math: `\text {tax amount}
171+ = \text {sales price} \times \frac {\text {tax rate}}{1 - \text {tax rate}}`.
172+
173+ .. example ::
174+ A product has a sales price of $1000, and we apply a 10% :guilabel: `Percentage of Price
175+ Tax Included ` tax that is not :guilabel: `Included in Price `. We then have:
176+
177+ +-------------+-------------+----------+----------+
178+ | Product | Price | Tax | Total |
179+ | sales price | without tax | | |
180+ +=============+=============+==========+==========+
181+ | 1,000 | 1,000 | 111.11 | 1,111.11 |
182+ +-------------+-------------+----------+----------+
183+
184+ Note that the real tax rate in terms of the tax-excluded price is
185+ :math: `\frac {111.11 }{1000 } = 11.111 \%`.
186+
187+ .. tab :: Tax-included
188+
189+ If :guilabel: `Included in Price ` is checked, the computation is :math: `\text {tax amount} =
190+ \text {sales price} \times \text {tax rate}`.
191+
192+ .. example ::
193+ A product has a sales price of $1000, and we apply a 10%
194+ :guilabel: `Percentage of Price Tax Included ` tax that is :guilabel: `Included in Price `.
195+ We then have:
196+
197+ +-------------+-------------+----------+----------+
198+ | Product | Price | Tax | Total |
199+ | sales price | without tax | | |
200+ +=============+=============+==========+==========+
201+ | 1,000 | 900 | 100 | 1,000.00 |
202+ +-------------+-------------+----------+----------+
203+
204+ Note that the real tax rate in terms of the tax-excluded price is
205+ :math: `\frac {100 }{900 } = 11.111 \%`.
206+
207+ .. warning ::
208+ This tax computation is rarely used and only useful in countries (e.g. Brazil, Bolivia) that
209+ quote tax rates as a percentage of the tax-included total.
210+ For the more common need to compute tax amounts from a tax-included price, use the
211+ :ref: `taxes/computation/percentage-of-price ` tax computation with the
212+ :ref: `taxes/included-in-price ` option.
213+
214+ .. _taxes/computation/python-code :
129215
130- - **Python code **
216+ Python code
217+ ***********
131218
132- A tax defined as **Python code ** consists of two snippets of Python code that are executed in a
133- local environment containing data such as the unit price, product or partner.
134- :guilabel: `Python Code ` defines the amount of the tax, and :guilabel: `Applicable Code ` defines if
135- the tax is to be applied. The formula is found at the bottom of the :guilabel: `Definition ` tab.
219+ A tax defined as **Python code ** consists of two snippets of Python code that are executed in a
220+ local environment containing data such as the unit price, product or partner.
221+ :guilabel: `Python Code ` defines the amount of the tax, and :guilabel: `Applicable Code ` defines if
222+ the tax is to be applied. Enter a formula for each field at the bottom of the
223+ :guilabel: `Definition ` tab.
136224
137225.. example ::
138226 :guilabel: `Python Code `: `result = price_unit * 0.10 `
@@ -256,24 +344,27 @@ invoice line.
256344Included in price
257345~~~~~~~~~~~~~~~~~
258346
259- With this option activated, the total (including the tax) equals the **sales price **.
347+ With this option activated, the tax will treat the sales price on which it is applied as a total
348+ including the tax amount. The tax computation will split the sales price into a base amount and a
349+ tax amount. This makes it suitable for B2C sales in most countries where prices are quoted
350+ tax-inclusive.
260351
261352`Total = Sales Price = Computed Tax-Excluded price + Tax `
262353
263354.. example ::
264- A product has a sales price of $1000, and we apply a * 10% of Price * tax, which is * included in
265- the price * . We then have:
355+ A product has a sales price of $1000, and we apply a 10% :guilabel: ` Percentage of Price` tax
356+ with :guilabel: ` Included in Price ` checked . We then have:
266357
267358 +-------------+-------------+----------+----------+
268359 | Product | Price | Tax | Total |
269360 | sales price | without tax | | |
270361 +=============+=============+==========+==========+
271- | 1,000 | 900.10 | 90.9 | 1,000.00 |
362+ | 1,000 | 909.09 | 90.91 | 1,000.00 |
272363 +-------------+-------------+----------+----------+
273364
274365.. note ::
275- If you need to define prices accurately, both tax-included and tax-excluded, please refer to the
276- following documentation: :doc: `taxes/B2B_B2C `.
366+ For a guide on configuring tax-excluded and tax-included prices for B2B and B2C customers,
367+ see :doc: `taxes/B2B_B2C `.
277368
278369.. note ::
279370 By default, only the :guilabel: `Tax excluded ` column is displayed on invoices. To display the
0 commit comments