Most Powerful Open Source ERP

Tax Discount And Other Cases

Use cases for Taxes, Discounts, Commissions and similar interfaces.
  • Last Update:2016-05-16
  • Version:001
  • Language:en

Use cases for Taxes, Discounts, Commissions and similar interfaces.

Table of Contents

Tax as a stamp

There is need to put stamp on every invoice. This stamp is bought in Inland Revenue, and this is "document tax".

This tax is not related to price, quantity, amount of sold resources. It is document depended.

Example Every stamp is 1€

Order

  • Line ressource A price 10 quantity 1
  • Line Resource B price 3 quantity 2
  • Tax Line Resource StampTax price 1 quantity 1 (added manually, no base_application?)

Invoice

  • Line ressource A price 10 quantity 1
  • Line Resource B price 3 quantity 2
  • Tax Line Resource StampTax price 1 quantity 1 (from simulation)

but when it is split:

Order

  • Line ressource A price 10 quantity 1
  • Line Resource B price 3 quantity 2
  • Tax Line Resource StampTax price 1 quantity 1 (added manually, no base_application?)

Invoice A

  • Line ressource A price 10 quantity 1
  • Tax Line Resource StampTax price 1 quantity 1 (from simulation)

Invoice B

  • Line Resource B price 3 quantity 2
  • Tax Line Resource StampTax price 1 quantity 1

Tax Line in invoice B comes from nothing. It might be added manualy, but it shall come from simulation.

Date changing Tax rate

Situation:

  • zulutime = 2009/01/01
  • t < zulutime: tax rate = 17%
  • t >= zulutime: tax rate = 19%
  • this is correctly defined on t < zulutime

Possibilities:

  • Order dates < zulutime, invoice dates < zulutime - no problem, use 17%
  • Order dates >= zulutime, invoice dates >= zulutime - no problem, use 19%
  • Order dates < zulutime, invoice dates >= zulutime - case A
  • Initially order dates < zulutime, invoice dates < zulutime, invoice dates changed to >= zulutime, case B

For Case A there is possible to use Simulation and properly configured rules.

For Case A, after accepting decision to simulation, Tax Line movements shall diverge by its vat ratio.

Tax Inclusive

Look at Tax Inclusive System for more discussion.

This is not implemented yet price system in ERP5, but shall be supported by such interface.

Notes:

  • might be (or not?) solved by negative tax rate + script to solve rounding issues

Tax rate Invoice price depended

For Invoice with total_price <= 5000 €: Tax Rate 12% For Invoice with total_price > 5000 €: Tax Rate 15%

Notes:

  • some place (predicate, price depended tax value?) to define
  • and proper choose

Tax rate sum of Invoices price depended

Example condition:

  • sum of started sale invoice transactions <= 100 000 €: Tax Rate 9%
  • sum of started sale invoice transactions > 100 000 €: Tax Rate 11%

Notes:

  • might require recalculation of all invoices
  • OR logic, to be sure, that for invoice n, where n is last before limit, n+1 will use tax rate

Splitting with different taxes

Case 1:

  • Sale Order 1
    • Sale Order Line 1 Resource A Tax 3%
    • Sale Order Line 2 Resource B Tax 5%

Case 2:

  • Sale Order 1
    • Sale Order Line 1 Resource A Tax 3%
  • Sale Order 2
    • Sale Order Line 2 Resource B Tax 5%

Case 1 & Case 2 produce:

  • Invoice 1
    • Invoice Line 1 Resource A Tax 3%
    • Invoice Line 2 Resource B Tax 5%

Notes:

  • how support splitting

Manual Tax divergence solving

If trade condition is correctly defined, than tax is correct, so no tax related changes have to be done on Invoice.

Case of wrong Purchase Invoice Transaction from supplier:

  • Purchase Order price 100€ VAT rate 10% VAT amount 10€
  • Purchase Invoice Transaction price 100€ VAT rate 10% VAT amount 10€

Notes:

  • there have to be possibility of changing VAT rate and updating simulation with new value (no new divergence shall appear)
  • similar problem with "not so perfect system" which gathers many Purchase Orders from supplier into one invoice

Builder updating invoice

Phase 1:

  • Sale Order 1
    • Sale Order Line 1 Resource A price 10 € Tax 10%

Invoice 1 generated, system configured to support merging.

  • Sale Order 2
    • Sale Order Line 2 Resource B price 12 € Tax 10 %

Invoice 1 updated.

Taxes are equal.

Notes:

  • only builder configuration

Line added to packing list

New line with taxable resource added to packing list

--

if you consider the packing list is just about saying "I moved this from here to there", you don't care about taxes yet and it's on the invoice that this has to be done. -jerome

Two orders with same resource, distinct vat rate

Order 1

  • Resource A price 10 quantity 10 TAX: 10%, base_contribution/base_amount/tax/normal

Order 2

  • Resource A price 10 quantity 20 TAX: 5%, base_contribution/base_amount/tax/reduced

Both orders' movements are merged at Invoice. Wanted behaviour: Invoice:

  • Invoice Line 1 Resource A price 10 quantity 10 base_contribution/base_amount/tax/normal
  • Tax Line 1 TAX: 10% base_application/base_amount/tax/normal
  • Invoice Line 2 Resource A price 10 quantity 20 base_contribution/base_amount/tax/reduced
  • Tax Line 2 TAX: 5% base_application/base_amount/tax/reduced

Same shall apply if there would be one order with such lines.

-- There is a category movement group for base_contribution at cell / line level on invoice builder -jerome

Related Articles