2025-02-27 18:56:07 +07:00
|
|
|
# Cash discounts and tax reduction
|
2023-02-27 10:05:26 +00:00
|
|
|
|
|
|
|
|
**Cash discounts** are reductions in the amount a customer must pay for goods or services offered as
|
|
|
|
|
an incentive for paying their invoice promptly. These discounts are typically a percentage of the
|
|
|
|
|
total invoice amount and are applied if the customer pays within a specified time. Cash discounts
|
2023-07-04 09:44:25 +00:00
|
|
|
can help a company maintain a steady cash flow.
|
2023-02-27 10:05:26 +00:00
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
```{eval-rst}
|
2023-02-27 10:05:26 +00:00
|
|
|
.. example::
|
|
|
|
|
You issue a €100 invoice on the 1st of January. The full payment is due within 30 days, and you
|
|
|
|
|
also offer a 2% discount if your customer pays you within seven days.
|
|
|
|
|
|
|
|
|
|
The customer can pay €98 up to the 8th of January. After that date, they would have to pay €100
|
|
|
|
|
by the 31st of January.
|
2025-02-27 18:56:07 +07:00
|
|
|
```
|
2023-02-27 10:05:26 +00:00
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
A {ref}`tax reduction <cash-discounts/tax-reductions>` can also be applied depending on the country
|
2023-02-27 10:05:26 +00:00
|
|
|
or region.
|
|
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
:::{seealso}
|
|
|
|
|
- {doc}`payment_terms`
|
|
|
|
|
- {doc}`../payments`
|
|
|
|
|
:::
|
2023-07-04 09:44:25 +00:00
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
(cash-discounts-configuration)=
|
2023-02-27 10:05:26 +00:00
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
## Configuration
|
2023-02-27 10:05:26 +00:00
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
To grant cash discounts to customers, you must first verify the {ref}`gain and loss accounts
|
|
|
|
|
<cash-discounts/gain-loss-accounts>`. Then, configure {ref}`payment terms
|
|
|
|
|
<cash-discounts/payment-terms>` and add a cash discount by checking the {guilabel}`Early Discount`
|
|
|
|
|
checkbox and filling in the discount percentage, discount days, and {ref}`tax
|
2023-07-04 09:44:25 +00:00
|
|
|
reduction <cash-discounts/tax-reductions>` fields.
|
|
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
(cash-discounts-gain-loss-accounts)=
|
2023-07-04 09:44:25 +00:00
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
### Cash discount gain/loss accounts
|
2023-07-04 09:44:25 +00:00
|
|
|
|
|
|
|
|
With a cash discount, the amount you earn depends on whether the customer benefits from the cash
|
|
|
|
|
discount or not. This inevitably leads to gains and losses, which are recorded on default accounts.
|
|
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
To modify these accounts, go to {menuselection}`Accounting --> Configuration --> Settings`, and, in
|
|
|
|
|
the {guilabel}`Default Accounts` section, select the accounts you want to use for the
|
|
|
|
|
{guilabel}`Cash Discount Gain account` and {guilabel}`Cash Discount Loss account`.
|
2023-07-04 09:44:25 +00:00
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
(cash-discounts-payment-terms)=
|
2023-07-04 09:44:25 +00:00
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
### Payment terms
|
2023-07-04 09:44:25 +00:00
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
Cash discounts are defined on {doc}`payment terms <payment_terms>`. Configure them to your liking by
|
|
|
|
|
going to {menuselection}`Accounting --> Configuration --> Payment Terms`, and make sure to fill out
|
|
|
|
|
the discount percentage, discount days, and {ref}`tax reduction <cash-discounts/tax-reductions>`
|
2023-07-04 09:44:25 +00:00
|
|
|
fields.
|
|
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
```{image} cash_discounts/payment-terms.png
|
|
|
|
|
:alt: |-
|
|
|
|
|
: Configuration of payment terms named "2/7 Net 30". The field "Description on Invoices"
|
|
|
|
|
: reads: "Payment terms: 30 Days, 2% Early Payment Discount under 7 days".
|
|
|
|
|
```
|
2023-02-27 10:05:26 +00:00
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
(cash-discounts-tax-reductions)=
|
2023-02-27 10:05:26 +00:00
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
### Tax reductions
|
2023-02-27 10:05:26 +00:00
|
|
|
|
|
|
|
|
Depending on the country or region, the base amount used to compute the tax can vary, which can lead
|
2023-07-04 09:44:25 +00:00
|
|
|
to a **tax reduction**. Since tax reductions are set on individual payment terms, each term can use
|
|
|
|
|
a specific tax reduction.
|
2023-02-27 10:05:26 +00:00
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
To configure how the tax reduction is applied, go to a payment term with the {guilabel}`Early
|
2023-07-04 09:44:25 +00:00
|
|
|
Discount` checkbox enabled, and select one of the three following options:
|
2023-02-27 10:05:26 +00:00
|
|
|
|
2023-07-04 09:44:25 +00:00
|
|
|
- Always (upon invoice)
|
2025-02-27 18:56:07 +07:00
|
|
|
: The tax is always reduced. The base amount used to compute the tax is the discounted amount,
|
2023-07-04 09:44:25 +00:00
|
|
|
whether the customer benefits from the discount or not.
|
|
|
|
|
- On early payment
|
2025-02-27 18:56:07 +07:00
|
|
|
: The tax is reduced only if the customer pays early. The base amount used to compute the tax is the
|
2023-07-04 09:44:25 +00:00
|
|
|
same as the sale: if the customer benefits from the reduction, then the tax is reduced. This means
|
|
|
|
|
that, depending on the customer, the tax amount can vary after the invoice is issued.
|
|
|
|
|
- Never
|
2025-02-27 18:56:07 +07:00
|
|
|
: The tax is never reduced. The base amount used to compute the tax is the full amount, whether the
|
2023-07-04 09:44:25 +00:00
|
|
|
customer benefits from the discount or not.
|
2023-02-27 10:05:26 +00:00
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
```{eval-rst}
|
2023-02-27 10:05:26 +00:00
|
|
|
.. example::
|
|
|
|
|
|
|
|
|
|
You issue a €100 invoice (tax-excluded) on the 1st of January, with a 21% tax rate. The full
|
|
|
|
|
payment is due within 30 days, and you also offer a 2% discount if your customer pays you within
|
|
|
|
|
seven days.
|
|
|
|
|
|
|
|
|
|
.. tabs::
|
|
|
|
|
|
|
|
|
|
.. tab:: Always (upon invoice)
|
|
|
|
|
|
|
|
|
|
.. list-table::
|
|
|
|
|
:header-rows: 1
|
|
|
|
|
|
|
|
|
|
* - Due date
|
|
|
|
|
- Total amount due
|
|
|
|
|
- Computation
|
|
|
|
|
* - 8th of January
|
|
|
|
|
- €118.58
|
2023-07-04 09:44:25 +00:00
|
|
|
- €98 + (21% of €98)
|
2023-02-27 10:05:26 +00:00
|
|
|
* - 31st of January
|
|
|
|
|
- €120.58
|
2023-07-04 09:44:25 +00:00
|
|
|
- €100 + (21% of €98)
|
2023-02-27 10:05:26 +00:00
|
|
|
|
|
|
|
|
.. tab:: On early payment
|
|
|
|
|
|
|
|
|
|
.. list-table::
|
|
|
|
|
:header-rows: 1
|
|
|
|
|
|
|
|
|
|
* - Due date
|
|
|
|
|
- Total amount due
|
|
|
|
|
- Computation
|
|
|
|
|
* - 8th of January
|
|
|
|
|
- €118.58
|
2023-07-04 09:44:25 +00:00
|
|
|
- €98 + (21% of €98)
|
2023-02-27 10:05:26 +00:00
|
|
|
* - 31st of January
|
|
|
|
|
- €121.00
|
2023-07-04 09:44:25 +00:00
|
|
|
- €100 + (21% of €100)
|
2023-02-27 10:05:26 +00:00
|
|
|
|
|
|
|
|
.. tab:: Never
|
|
|
|
|
|
|
|
|
|
.. list-table::
|
|
|
|
|
:header-rows: 1
|
|
|
|
|
|
|
|
|
|
* - Due date
|
|
|
|
|
- Total amount due
|
|
|
|
|
- Computation
|
|
|
|
|
* - 8th of January
|
|
|
|
|
- €119.00
|
2023-07-04 09:44:25 +00:00
|
|
|
- €98 + (21% of €100)
|
2023-02-27 10:05:26 +00:00
|
|
|
* - 31st of January
|
|
|
|
|
- €121.00
|
2023-07-04 09:44:25 +00:00
|
|
|
- €100 + (21% of €100)
|
2025-02-27 18:56:07 +07:00
|
|
|
```
|
2023-02-27 10:05:26 +00:00
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
:::{note}
|
|
|
|
|
- {ref}`Tax grids <tax-returns/tax-grids>`, which are used for the tax report, are correctly
|
|
|
|
|
computed according to the {ref}`type of tax reduction <cash-discounts/tax-reductions>` you
|
|
|
|
|
configured.
|
|
|
|
|
- The **type of cash discount tax reduction** may be correctly pre-configured, depending on your
|
|
|
|
|
{ref}`fiscal localization package <fiscal_localizations/packages>`.
|
|
|
|
|
:::
|
2023-02-27 10:05:26 +00:00
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
(cash-discounts-customer-invoice)=
|
2015-10-12 15:29:45 +02:00
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
## Apply a cash discount to a customer invoice
|
2015-10-12 15:29:45 +02:00
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
On a customer invoice, apply a cash discount by selecting the {ref}`payment terms you created
|
2023-02-27 10:05:26 +00:00
|
|
|
<cash-discounts/payment-terms>`. Odoo automatically computes the correct amounts, tax amounts, due
|
|
|
|
|
dates, and accounting records.
|
2015-10-12 15:29:45 +02:00
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
Under the {guilabel}`Journal Items` tab, you can display the discount details by clicking on the
|
|
|
|
|
"toggle" button and adding the {guilabel}`Discount Date` and {guilabel}`Discount Amount` columns.
|
2015-10-12 15:29:45 +02:00
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
```{image} cash_discounts/invoice-journal-entry.png
|
|
|
|
|
:alt: "An invoice of \u20AC100.00 with \"2/7 Net 30\" selected as payment terms. The\
|
|
|
|
|
: \ \"Journal Items\" tab\nis open, and the \"Discount Date\" and \"Discount Amount\"\
|
|
|
|
|
: \ columns are displayed."
|
|
|
|
|
```
|
2015-10-12 15:29:45 +02:00
|
|
|
|
2023-07-04 09:44:25 +00:00
|
|
|
The discount amount and due date are also displayed on the generated invoice report sent to the
|
2025-02-27 18:56:07 +07:00
|
|
|
customer if the {guilabel}`Show installment dates` option is checked on the payment terms.
|
2015-10-12 15:29:45 +02:00
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
```{image} cash_discounts/invoice-print.png
|
|
|
|
|
:alt: "An invoice of \u20AC100.00 with the following text added to the terms and conditions:\
|
|
|
|
|
: \ \"30\nDays, 2% Early Payment Discount under 7 days. 118.58 \u20AC due if paid\
|
|
|
|
|
: \ before 01/08/2023.\""
|
|
|
|
|
```
|
2015-10-12 15:29:45 +02:00
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
### Payment reconciliation
|
2015-10-12 15:29:45 +02:00
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
When you record a {doc}`payment <../payments>` or {doc}`reconcile your bank transactions
|
2023-07-04 09:44:25 +00:00
|
|
|
<../bank/reconciliation>`, Odoo takes the customer payment's date into account to determine if the
|
|
|
|
|
customer can benefit from the cash discount or not.
|
2015-10-12 15:29:45 +02:00
|
|
|
|
2025-02-27 18:56:07 +07:00
|
|
|
:::{note}
|
|
|
|
|
If your customer pays the discount amount *after* the discount date, you can always decide to
|
|
|
|
|
mark the invoice as fully paid with a write-off or as partially paid.
|
|
|
|
|
:::
|
|
|
|
|
|