Taxes can be complex, with different accounting requirements, calculations and reporting requirements. The tax can vary by product and by the geographical location of the seller, or buyer. In the ADempiere tax model, the tax to use on a document is selected based on a tax category. The tax category is assigned to products and charges and must contain at least one summary or parent tax definition. Subordinate taxes determine the details and actual accounting consequences based on the situation and geography. For really difficult and unruly tax situations, a software or script rule can be created to determine what tax to apply.