Skip to content
English
  • There are no suggestions because the search field is empty.

How Multi-Tax Configuration and Tax Groups Work

Source: company.rb

  • Enabling multi_tax automatically creates a "Sales Tax" group at 10% if no tax group currently exists — this is a convenience default for Australian companies
  • BUG: The mutual exclusion between price_includes_tax and multi_tax is NOT properly enforced — the code uses == (comparison) instead of = (assignment), so the intended disabling of one when the other is turned on does not actually happen. Both can be active simultaneously, potentially causing incorrect tax calculations
  • Turning off multi_tax is a destructive operation: it clears tax group data from ALL open invoices and events, which cannot be undone without re-entering the data
  • Tax rate calculation supports per-product-group rates, with a fallback to the company-level rate if no group-specific rate is defined
  • Default values for a new company: cash_or_account is "C" (Cash), tax name is "GST", and tax rate is 10%

Support scenarios

  • "Tax is being calculated twice / Tax amounts look wrong" → Check if both price_includes_tax and multi_tax are enabled simultaneously. Due to a known bug, the system doesn't prevent both from being active. One should be disabled.
  • "I turned off multi-tax and all my open invoices lost their tax groups" → This is expected but destructive behavior. Turning off multi_tax clears tax group data from all open invoices and events. The data cannot be automatically recovered — tax groups need to be re-applied manually or multi_tax re-enabled.
  • "A 'Sales Tax' group appeared that I didn't create" → When multi_tax is first enabled and no tax groups exist, the system auto-creates a "Sales Tax" group at 10%. This can be renamed or reconfigured.