****** Design ****** The *Account Product Module* mainly extends existing accounting and product concepts. .. _concept-product: Product ======= The *Product* concept is extended with a set of methods that allow access to the product's accounting related properties. Many of these properties are set in the product's accounting category. The accounting category is a special type of `Product Category <model-product.category>`. Unlike standard product categories, each product can only have a single accounting category. .. seealso:: The `Product <product:concept-product>` concept is introduced by the :doc:`Product Module <product:index>`. .. _model-product.category: Product Category ================ The *Account Product Module* allows some *Product Categories* to be marked as accounting categories. These product categories can have accounting properties such as `Taxes <account:model-account.tax>`, and revenue and expense `Accounts <account:model-account.account>` associated with them. When placing categories into a structure all the categories in the structure must be either standard categories or accounting categories. This means an accounting category cannot have a standard category as its parent or as any of its subcategories. .. seealso:: The `Product Category <product:model-product.category>` concept is introduced by the :doc:`Product Module <product:index>`. .. _model-analytic_account.rule: Analytic Account Rule ===================== The *Account Product Module* extends the *Analytic Account Rules* allowing `Products <concept-product>` and `Categories <model-product.category>` to be used as criteria by the analytic rule engine. .. note:: This feature is only available when the *Analytic Account Module* is activated. .. seealso:: The *Analytic Account Rule* concept is introduced by the :doc:`Analytic Account Module <analytic_account:index>`.