Skip to Content
Menú
This question has been flagged
1 Respondre
241 Vistes

My main currency is IQD, but all invoices and payments are in USD. How can I show the due amount in USD on the printed invoice?

Avatar
Descartar

Why aren't you issuing the Invoice in USD? Odoo will record the base amount based on the exchange rate in effect at the time and automatically book the gain or lose based on the exchange rate in effect at the time of payment and again adjust during bank reconciliation when the bank gives the final rate for the USD.

Best Answer

Hi,


In Odoo, your printed invoice shows amounts in the company currency (IQD in your case) by default, because the QWeb report template uses amount_residual and amount_total without forcing a specific currency.


If all your customers are billed in USD but your company currency is IQD, you can still display the due amount in USD on the printed invoice by leveraging amount_residual_currency and currency_id.


Try the following


- Inherit the template in your custom module.

       <odoo>

    <template id="invoice_show_due_usd" inherit_id="account.report_invoice_document">

        <xpath expr="//span[@t-field='o.amount_residual']" position="after">

            <p t-if="o.currency_id.name != o.company_id.currency_id.name">

                <strong>Due Amount (in <t t-esc="o.currency_id.name"/>): </strong>

                <span t-field="o.amount_residual_currency"/>

            </p>

        </xpath>

    </template>

</odoo>


Hope it helps

Avatar
Descartar