Files
tryton/modules/customs/doc/design.rst
T

120 lines
3.3 KiB
ReStructuredText

******
Design
******
The *Customs Modules* introduces or extends the following concepts:
.. _model-customs.tariff.code:
Tariff Code
===========
The *Tariff Code* stores the `Harmonized System`_ code for a `Country
<country:model-country.country>` or `Organization
<country:model-country.organization>` active for a period of the year.
.. seealso::
The *Tariff Codes* can be found by opening the main menu item:
|Customs --> Tariff Codes|__
.. |Customs --> Tariff Codes| replace:: :menuselection:`Customs --> Tariff Codes`
__ https://demo.tryton.org/model/customs.tariff.code
.. _model-customs.duty.rate:
Duty Rate
=========
The *Duty Rate* stores the import or export rate applied for a `Tariff Code
<model-customs.tariff.code>` over a period and a `Country
<country:model-country.country>` or `Organization
<country:model-country.organization>`.
The rate can be expressed as a fixed amount or an amount per `Unit of Measure
<product:model-product.uom>` in a `Currency
<currency:model-currency.currency>`.
.. seealso::
The *Duty Rates* can be found by opening the main menu item:
|Customs --> Duty Rates|__
.. |Customs --> Duty Rates| replace:: :menuselection:`Customs --> Duty Rates`
__ https://demo.tryton.org/model/customs.duty.rate
.. _model-customs.agent:
Agent
=====
The *Agent* defines a `Party <party:model-party.party>` as a import or export
agent.
.. seealso::
The *Agents* can be found by opening the main menu item:
|Customs --> Agents|__
.. |Customs --> Agents| replace:: :menuselection:`Customs --> Agents`
__ https://demo.tryton.org/model/customs.agent
.. _model-customs.agent.selection:
Agent Selection
===============
The *Agent Selection* defines which agent to use based on criteria such as the
origin and destination `Countries <country:model-country.country>`.
.. seealso::
The *Agent Selections* can be found by opening the main menu item:
|Customs --> Agents --> Selection|__
.. |Customs --> Agents --> Selection| replace:: :menuselection:`Customs --> Agents --> Selection`
__ https://demo.tryton.org/model/customs.agent.selection
.. _concept-product:
Product
=======
The *Product* concept is extended with a set of methods that allow retrieving
the product's `Tariff codes <model-customs.tariff.code>` based on criteria.
The tariff codes can be set directly on the product or on a special type of
`Product Category <model-product.category>`.
Unlike standard product categories, each product can only have a single customs
category.
.. seealso::
The `Product <product:concept-product>` concept is introduced by the
:doc:`Product Module <product:index>`.
.. _model-product.category:
Product Category
================
The *Customs Module* allows some *Product Categories* to be marked as customs
categories.
These product categories can have customs properties such as `Tariff Codes
<model-customs.tariff.code>` associated with them.
When placing categories into a structure all the categories in the structure
must be either standard categories or customs categories.
This means a customs 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>`.
.. _`Harmonized System`: http://en.wikipedia.org/wiki/Harmonized_System