Skip to Content
Menu
This question has been flagged
2 Replies
1821 Zobrazenia

Hi, i want to show tax information in each order line of the POS Receipt in Odoo 17. Unfortunately, it seems like tax information is not available by default in Odoo. It seems like I need to patch order line js, but so far I cannot get the tax to show in the front end.

Here is my js code

/** @odoo-module */

import { patch } from "@web/core/utils/patch";
import { Orderline } from "@point_of_sale/app/store/models";

patch(Orderline.prototype, {
getDisplayData() {
const result = super.getDisplayData();
if (this.tax_ids) {
result.tax_ids = this.get_taxes();
}

return result;
},

});

Here is my orderline code:

<?xml version="1.0" encoding="utf-8"?>
<templates id="template" xml:space="preserve">
<t t-inherit="point_of_sale.Orderline" t-inherit-mode="extension">
<xpath expr="//div[hasclass('product-name')]" position="after">
<t t-log="line"/>

<t t-if="line.tax_ids">
<t t-if="line.tax_ids[0]">
<div> Tax:
​<span t-if="line.tax_ids[0].amount" t-esc="line.tax_ids[0].amount"/><span>%</span>
​</div>
</t>
</t>
</xpath>
</t>
</templates>

Is there any other steps needed to extract the tax information of Orderline?

Avatar
Zrušiť
Best Answer

Hi Ariefa, you can try like this.

for the xml template, if the product always has only one tax, the code call be simplyfied.

<li t-if="line.taxes" class="tax-info">

​<t t-foreach="line.taxes" t-as="tax" t-key="tax.name">

​<t t-if="tax_index !== 0"> | </t>

​<span><t t-esc="tax.name"/> (<t t-esc="tax.amount"/>%)</span>

​</t>

</li>

dont forget in the model.js getDisplayData() add following,

taxes: this.get_applicable_taxes().map(tax => ({

​name: tax.name,

​amount: tax.amount

}))

additionally, if you set different fiscal postions in POS, you can use this function

this._getProductTaxesAfterFiscalPosition()

hope it can help you.

Avatar
Zrušiť
Best Answer

tax details by default is in odoo in pos order line
in this class : 

export class Order extends PosModel 
you can use this method : get_tax_details()
Avatar
Zrušiť
Related Posts Replies Zobrazenia Aktivita
1
aug 25
550
2
aug 22
1978
0
jan 19
3976
0
júl 23
1704
1
sep 21
3916