Interim Rounding For Apply To Rate Components

The calculations for Apply To rate components involve several steps with interim values stored along the way. For every interim value that is stored, rounding rules are applied. The following steps describe the interim rounding rules:

  • If the value type is not Unit Rate, the amounts for all the cross-reference rate components are added together and stored in the database as the Base Amount. The base amount is stored with a precision of .01 and it is rounded to the nearest value based on the currency's precision.
  • The rate component calculates its charge and keeps the result in a temporary field with a precision of .00001.
  • The remaining steps depend on whether or not a tax exemption is applicable
  • If NO tax exemptions are applicable, the temporary field is rounded based on the rate component's rounding rules to produce the final amount.
  • If there are tax exemptions, the temporary field is rounded to the nearest .01 decimal precision prior to applying the tax exemptions. When the tax exemption is applied, the result is rounded according to the currency precision and stored as the Exempt Amount. The system calculates the final amount by subtracting the exempt amount from the rounded temporary amount and then applying the rate component's rounding rules.