changeset 19a27fe2805a in modules/account:default details: https://hg.tryton.org/modules/account?cmd=changeset;node=19a27fe2805a description: Improve documentation
issue9610 review292271005 diffstat: doc/conf.py | 61 ++++++++ doc/configuration.rst | 30 ++++ doc/design/account.rst | 194 ++++++++++++++++++++++++++ doc/design/configuration.rst | 16 ++ doc/design/fiscal-year.rst | 89 ++++++++++++ doc/design/index.rst | 16 ++ doc/design/journal.rst | 85 +++++++++++ doc/design/move.rst | 177 ++++++++++++++++++++++++ doc/design/tax.rst | 151 ++++++++++++++++++++ doc/design/template.rst | 128 +++++++++++++++++ doc/index.rst | 317 +----------------------------------------- doc/reference.rst | 49 ++++++ doc/setup.rst | 64 ++++++++ doc/usage/close.rst | 106 ++++++++++++++ doc/usage/create.rst | 57 +++++++ doc/usage/index.rst | 16 ++ doc/usage/process.rst | 21 ++ doc/usage/report.rst | 83 +++++++++++ doc/usage/structure.rst | 36 ++++ doc/usage/view.rst | 62 ++++++++ setup.py | 7 +- 21 files changed, 1458 insertions(+), 307 deletions(-) diffs (1869 lines): diff -r 9dc78c189562 -r 19a27fe2805a doc/conf.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/conf.py Mon Jan 18 12:57:35 2021 +0000 @@ -0,0 +1,61 @@ +# This file is part of Tryton. The COPYRIGHT file at the top level of +# this repository contains the full copyright notices and license terms. + +modules_url = 'https://docs.tryton.org/projects/modules-{module}/en/{series}/' +trytond_url = 'https://docs.tryton.org/projects/server/en/{series}/' + + +def get_info(): + import configparser + import os + import subprocess + import sys + + module_dir = os.path.dirname(os.path.dirname(__file__)) + + config = configparser.ConfigParser() + config.read_file(open(os.path.join(module_dir, 'tryton.cfg'))) + info = dict(config.items('tryton')) + + result = subprocess.run( + [sys.executable, 'setup.py', '--name'], + stdout=subprocess.PIPE, check=True, cwd=module_dir) + info['name'] = result.stdout.decode('utf-8').strip() + + result = subprocess.run( + [sys.executable, 'setup.py', '--version'], + stdout=subprocess.PIPE, check=True, cwd=module_dir) + version = result.stdout.decode('utf-8').strip() + if 'dev' in version: + info['series'] = 'latest' + else: + info['series'] = '.'.join(version.split('.', 2)[:2]) + + for key in {'depends', 'extras_depend'}: + info[key] = info.get(key, '').strip().splitlines() + info['modules'] = set(info['depends'] + info['extras_depend']) + info['modules'] -= {'ir', 'res'} + + return info + + +info = get_info() + +master_doc = 'index' +project = info['name'] +release = version = info['series'] +default_role = 'ref' +highlight_language = 'none' +extensions = [ + 'sphinx.ext.intersphinx', + ] +intersphinx_mapping = { + 'trytond': (trytond_url.format(series=version), None), + } +intersphinx_mapping.update({ + m: (modules_url.format( + module=m.replace('_', '-'), series=version), None) + for m in info['modules'] + }) + +del get_info, info, modules_url, trytond_url diff -r 9dc78c189562 -r 19a27fe2805a doc/configuration.rst --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/configuration.rst Mon Jan 18 12:57:35 2021 +0000 @@ -0,0 +1,30 @@ +************* +Configuration +************* + +The *Account Module* uses values from settings in the ``[account]`` section +of the :doc:`configuration file <trytond:topics/configuration>`. + +.. _config-account.reconciliation_chunk: + +``reconciliation_chunk`` +======================== + +The ``reconciliation_chunk`` defines the size of each block of sequential +`Account Move Lines <model-account.move.line>` that are searched for +`Reconciliation <model-account.move.reconciliation>` proposals. +Larger chunk sizes allow more lines to be considered together, and sometimes +better matches to be found. + +.. warning:: + + The number of combinations of lines considered, and consequently the search + time, increases exponentially along with the chunk size. + So you should keep this setting to a relatively low value. + +.. seealso:: + + The `Reconcile Accounts <wizard-account.reconcile>` wizard for details + of how this setting is used. + +The default value is: ``10`` diff -r 9dc78c189562 -r 19a27fe2805a doc/design/account.rst --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/design/account.rst Mon Jan 18 12:57:35 2021 +0000 @@ -0,0 +1,194 @@ +.. _model-account.account: + +Account +======= + +In Tryton the *Account* concept is used to represent the different accounts +that make up the `Company's <company:model-company.company>` chart of accounts. +These accounts are commonly organised into a structure, with each account +having a single parent and zero or more sub accounts. + +The balance of an account is made up from all the credits and debits into +the account and its sub accounts. +These values are in the company's +`Currency <currency:model-currency.currency>`, but a second currency can be +used on accounts that record transactions that happen in a different currency. + +Each account has an `Account Type <model-account.account.type>` which +defines some additional properties of the account. +A second type can be specified for accounts whose type depends on whether they +have a credit or debit balance. + +Only accounts that are not closed can be used as a source or destination for +`Account Moves <model-account.move>`. + +Tryton will only try and reconcile +`Account Move Lines <model-account.move.line>` in accounts that are correctly +marked when `Reconciling <wizard-account.reconcile>` accounts. + +In Tryton a *deferral* account is any account that appears on a company's +balance sheet, or is not shown on any reports. +The amounts in these accounts are carried forward to subsequent +`Fiscal Years <model-account.fiscalyear>`, and are stored using the +`Account Deferral <model-account.account.deferral>` concept. + +.. seealso:: + + A list of the accounts is available via the main menu item: + + |Financial --> Configuration --> General Account --> Accounts|__ + + .. |Financial --> Configuration --> General Account --> Accounts| replace:: :menuselection:`Financial --> Configuration --> General Account --> Accounts` + __ https://demo.tryton.org/model/account.account + + Accounts can be created from + `Account Templates <model-account.account.template>`. + +Wizards +------- + +.. _wizard-account.open_chart: + +Open Chart of Accounts +^^^^^^^^^^^^^^^^^^^^^^ + +This wizard opens the company's chart of accounts. + +.. seealso:: + + The chart of accounts can be opened using the main menu item: + + :menuselection:`Financial --> Charts --> Open Chart of Accounts` + +.. _model-account.account.type: + +Account Type +============ + +The *Account Type* concept defines the structure of the +`Company's <company:model-company.company>` accounting reports. +It defines whether the account type appears on the balance sheet or income +statement, and has a set of properties that indicate what any +`Accounts <model-account.account>` of this type can be used for. + +When used as the balance sheet or income statement the amount shown for the +account type includes the amounts from all the accounts of that type and +includes the amounts from all of its children. + +The amounts from accounts that also have a debit type are only ever included +in either the account's type, or its debit type, depending on whether the +accounts balance is in credit, or debit, respectively. + +.. seealso:: + + The list of account types can be found by opening the main menu item: + + |Financial --> Configuration --> General Account --> Account Types|__ + + .. |Financial --> Configuration --> General Account --> Account Types| replace:: :menuselection:`Financial --> Configuration --> General Account --> Account Types` + __ https://demo.tryton.org/model/account.account.type + + Accounts Types can be created from + `Account Type Templates <model-account.account.type.template>`. + +.. _model-account.account.party: + +Account Party +============= + +The *Account Party* concept is used to show the balances, and credits and +debits, for each `Party <party:model-party.party>` in an +`Account <model-account.account>`. + +.. _model-account.account.deferral: + +Account Deferral +================ + +The *Account Deferral* concept stores, by `Account <model-account.account>`, +any amounts that need to be carried forward to the next +`Fiscal Year <model-account.fiscalyear>`. +The data that gets stored here is managed automatically when fiscal years +are closed or re-opened. + +.. _model-account.general_ledger.account: + +General Ledger Account +====================== + +The list of *General Ledger Accounts* gives a top level view of a +`Company's <company:model-company.company>` general ledger. +For the specified period of time, it provides a summary of the debits and +credits into the `Accounts <model-account.account>`, and the starting and +ending values for the debits, credits and account balances. + +.. seealso:: + + The company's general ledger can be opened using the main menu item: + + |Financial --> Reporting --> General Ledger|__ + + .. |Financial --> Reporting --> General Ledger| replace:: :menuselection:`Financial --> Reporting --> General Ledger` + __ https://demo.tryton.org/model/account.general_ledger.account;context_model=account.general_ledger.account.context + +Reports +------- + +.. _report-account.general_ledger: + +General Ledger +^^^^^^^^^^^^^^ + +For each selected *General Ledger Account* the *General Ledger* report provides +a detailed list of all of the transactions that occurred during the specified +period of time. +These are summed up for each general ledger account, and the account balance +is also shown. + +.. _report-account.trial_balance: + +Trial Balance +^^^^^^^^^^^^^ + +The *Trial Balance* report allows a hard copy of the *General Ledger Account's* +summaries to be printed out. +It lists each selected general ledger account along with its start and end +balances and total debits and credits. + +.. _model-account.general_ledger.account.party: + +General Ledger Account Party +============================ + +The *General Ledger Account Party* concept provides the same information as the +`General Ledger Account <model-account.general_ledger.account>`, but grouped +by `Party <party:model-party.party>`. + +It can be used to show the information that is normally found in a `Debtors +or Creditors Ledger`_. + +.. _Debtors or Creditors Ledger: https://en.wikipedia.org/wiki/Ledger#Types_on_the_basis_of_purpose + +.. _model-account.aged_balance: + +Aged Balance +============ + +The *Aged Balance* shows a breakdown of how overdue payments are both to and +from customers and suppliers. +It allows the length of some terms to be set and then, for each +`Party <party:model-party.party>`, groups the payment amounts into the +appropriate term based on the maturity date from the payment's +`Account Move Line <model-account.move.line>`. +A payment amount appears in the first term it is equal to or more overdue than. + +Reports +------- + +.. _report-account.aged_balance: + +Aged Balance +^^^^^^^^^^^^ + +The *Aged Balance* report lets the user get a hard copy of the selected terms +and aged balances. diff -r 9dc78c189562 -r 19a27fe2805a doc/design/configuration.rst --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/design/configuration.rst Mon Jan 18 12:57:35 2021 +0000 @@ -0,0 +1,16 @@ +.. _model-account.configuration: + +Configuration +============= + +The *Account Configuration* contains the settings used to configure the general +behaviour and default values for accounting related activities. + +.. seealso:: + + Account configuration settings are found by opening the main menu item: + + |Financial --> Configuration --> Account Configuration|__ + + .. |Financial --> Configuration --> Account Configuration| replace:: :menuselection:`Financial --> Configuration --> Account Configuration` + __ https://demo.tryton.org/model/account.configuration/1 diff -r 9dc78c189562 -r 19a27fe2805a doc/design/fiscal-year.rst --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/design/fiscal-year.rst Mon Jan 18 12:57:35 2021 +0000 @@ -0,0 +1,89 @@ +.. _model-account.fiscalyear: + +Fiscal Year +=========== + +In accounting the concept of a *Fiscal Year* is used when generating a +`Company's <company:model-company.company>` financial reports. +In Tryton it groups together a set of `Periods <model-account.period>`. + +.. seealso:: + + Fiscal years can be found by opening the main menu item: + + |Financial --> Configuration --> Fiscal Years --> Fiscal Years|__ + + .. |Financial --> Configuration --> Fiscal Years --> Fiscal Years| replace:: :menuselection:`Financial --> Configuration --> Fiscal Years --> Fiscal Years` + __ https://demo.tryton.org/model/account.fiscalyear + +Wizards +------- + +.. _wizard-account.fiscalyear.create_periods: + +Create Periods +^^^^^^^^^^^^^^ + +For a *Fiscal Year*, the *Create Periods* wizard creates a set of monthly, +quarterly, or other fixed length periods. +The periods that are created cover the whole of the fiscal year, and do not +overlap. + +.. _wizard-account.fiscalyear.renew: + +Renew Fiscal Year +^^^^^^^^^^^^^^^^^ + +The *Renew Fiscal Year* wizard takes a previous *Fiscal Year* and lets the +user create a new fiscal year based on it. +When the wizard is started, by default, it is setup ready to create a new +fiscal year based on, and immediately following, the latest fiscal year. + +.. seealso:: + + The renew fiscal year wizard can be started from the main menu item: + + :menuselection:`Financial --> Configuration --> Fiscal Years --> Renew Fiscal Year` + +.. _wizard-account.fiscalyear.balance_non_deferral: + +Balance Non-Deferral +^^^^^^^^^^^^^^^^^^^^ + +At the fiscal year-end the *Balance Non-Deferral* wizard is used to +create `Account Moves <model-account.move>` that zero the balances of each +non-deferral `Account <model-account.account>` using a counterpart account. + +.. seealso:: + + The balance non-deferral wizard is started using the main menu item: + + :menuselection:`Financial --> Processing --> Balance Non-Deferral` + +.. _model-account.period: + +Period +====== + +An accounting *Period* represents a period of time between two dates. +It allows a `Company's <company:model-company.company>` accounts to be +processed, aggregated and analysed based on this fixed range of time. +Each period in Tryton belongs to a `Fiscal Year <model-account.fiscalyear>`. + +There are two different types of period, standard periods, and +adjustment periods. +Standard periods from the same fiscal year cannot overlap, and by default +Tryton will only use Standard periods when creating new +`Account Moves <model-account.move>`. +Adjustment periods are typically used for things like the +accounting moves created when `Closing a fiscal year`, and these periods may +overlap other periods. + +.. seealso:: + + Periods can be found by opening the main menu item: + + |Financial --> Configuration --> Fiscal Years --> Fiscal Years --> Periods|__ + + .. |Financial --> Configuration --> Fiscal Years --> Fiscal Years --> Periods| replace:: :menuselection:`Financial --> Configuration --> Fiscal Years --> Fiscal Years --> Periods` + __ https://demo.tryton.org/model/account.period diff -r 9dc78c189562 -r 19a27fe2805a doc/design/index.rst --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/design/index.rst Mon Jan 18 12:57:35 2021 +0000 @@ -0,0 +1,16 @@ +****** +Design +****** + +The *Account Module* introduces the following concepts: + +.. toctree:: + :maxdepth: 1 + + account + move + fiscal-year + journal + tax + template + configuration diff -r 9dc78c189562 -r 19a27fe2805a doc/design/journal.rst --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/design/journal.rst Mon Jan 18 12:57:35 2021 +0000 @@ -0,0 +1,85 @@ +.. _model-account.journal: + +Journal +======= + +A *Journal* represents a book of original entry from traditional manual +accounting. +In Tryton it allows `Account Moves <model-account.move>` of the same class +to be grouped together. +Every account move gets associated with a journal, and the journal defines +what sequence is then used to number the account move. + +Among the journal's properties is a type. +This limits where the journal can be used. + +.. seealso:: + + The journals can be found by opening the main menu item: + + |Financial --> Configuration --> Journals --> Journals|__ + + .. |Financial --> Configuration --> Journals --> Journals| replace:: :menuselection:`Financial --> Configuration --> Journals --> Journals` + __ https://demo.tryton.org/model/account.journal + +Reports +------- + +.. _report-account.move.general_journal: + +General Journal +^^^^^^^^^^^^^^^ + +In Tryton the general journal lists all of the +`Account Moves <model-account.move>` that happened between the selected start +and end dates. +It also includes details such as the accounts, debits and credits involved. + +.. seealso:: + + The general journal can be printed by using the main menu item: + + :menuselection:`Financial --> Reporting --> Print General Journal` + +Wizards +------- + +.. _wizard-account.move.open_journal: + +Open Journal +^^^^^^^^^^^^ + +The *Open Journal* wizard opens an editable list which can be used to quickly +enter in journal entries for a specific journal and +`Period <model-account.period>`. + +.. seealso:: + + The wizard can be started by using the main menu item: + + :menuselection:`Financial --> Entries --> Open Journal` + +.. _model-account.journal.period: + +Journal Period +============== + +For each `Company <company:model-company.company>`, a *Journal Period* links +together the concepts of a `Journal <model-account.journal>`, and an accounting +`Period <model-account.period>`. +Each journal period is created automatically when the first +`Account Move <model-account.move>` is created in the journal and period. +It provides a way of partially closing a period one journal at a time. + +.. seealso:: + + The company's journal periods can be listed by opening the main menu item: + + |Financial --> Reporting --> Journals - Periods|__ + + .. |Financial --> Reporting --> Journals - Periods| replace:: :menuselection:`Financial --> Reporting --> Journals - Periods` + __ https://demo.tryton.org/model/account.journal.period + + The company's open journal periods can be found using the main menu item: + + :menuselection:`Financial --> Entries --> Journals - Periods` diff -r 9dc78c189562 -r 19a27fe2805a doc/design/move.rst --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/design/move.rst Mon Jan 18 12:57:35 2021 +0000 @@ -0,0 +1,177 @@ +.. _model-account.move: + +Account Move +============ + +The *Account Move* concept is used to record transactions in a +`Company's <company:model-company.company>` accounts. +In Tryton each account move is made up from several +`Account Move Lines <model-account.move.line>`. +These lines form the separate parts of the transaction as required by +`double-entry bookkeeping`_ principles. + +Account moves are always tied to a specific accounting +`Period <model-account.period>`, and new account moves can only be created in +an open period. +All account moves are also entered into one of the +`Journals <model-account.journal>`. + +An account move can be changed until it is posted. +Posting an account move permanently adds it to the company's accounts. +Only account moves whose line's debits and credits are balanced can be posted. + +.. _`Double-entry bookkeeping`: https://en.wikipedia.org/wiki/Double-entry_bookkeeping + +.. seealso:: + + Account moves can be found by opening the main menu item: + + |Financial --> Entries --> Account Moves|__ + + .. |Financial --> Entries --> Account Moves| replace:: :menuselection:`Financial --> Entries --> Account Moves` + __ https://demo.tryton.org/model/account.move + +Wizards +------- + +.. _wizard-account.move.cancel: + +Cancel Moves +^^^^^^^^^^^^ + +The *Cancel Moves* wizard creates new account moves whose debits and credits +cancel out those from the original account moves. +If any of the `Account Move Lines <model-account.move.line>` that got cancelled +are in `Accounts <model-account.account>` that are marked as to be reconciled +then the original lines are `Reconciled <model-account.move.reconciliation>` +with those that cancel them out. + +.. _model-account.move.line: + +Account Move Line +================= + +Each *Account Move Line* is used to represent a single debit, or credit, to +a specific `Account <model-account.account>`. + +It is also used to record additional details about the transaction, such as: + +* the amount in a second `Currency <currency:model-currency.currency>`, +* the `Party <party:model-party.party>` involved with the transaction, +* the date when the line matures and a payment for the (payable or receivable) + line should happen, and +* how the amount is split up for `Tax <model-account.tax.line>` purposes. + +Account move lines can only exist as part of an +`Account Move <model-account.move>`. +A valid line is part of an account move that has balanced debits and credits. +Once the account move that a line belongs to has been posted the main +properties of the line can no longer be changed. +These facts help ensure the integrity of the +`Company's <company:model-company.company>` accounts and the accounting reports +generated by Tryton. + +Wizards +------- + +.. _wizard-account.move.line.group: + +Group Lines +^^^^^^^^^^^ + +The *Group Lines* wizard allows payable and/or receivable *Account Move Lines* +to be grouped together and a single unique payable or receivable account move +line is created for the net amount of the grouped lines. +The maturity date used for the newly created account move line is the +earliest maturity date from the lines that were grouped together. + +.. _wizard-account.move.reconcile_lines: + +Reconcile Lines +^^^^^^^^^^^^^^^ + +The *Reconcile Lines* wizard matches together *Account Move Lines* from +the same account that have credits and debits which are equal. +If the selected account move lines do not balance then the wizard will offer +to create a write-off account move for the difference, so the reconciliation +can be completed. +When the reconciliation is done the lines are linked together using a new +`Reconciliation <model-account.move.reconciliation>`. + +.. _wizard-account.move.unreconcile_lines: + +Unreconcile Lines +^^^^^^^^^^^^^^^^^ + +The *Unreconcile Lines* wizard undoes a reconciliation. +It does this by removing the +`Reconciliation <model-account.move.reconciliation>` that linked together +the *Account Move Lines*. + +.. note:: + + Running this wizard will not reverse any other operations that may have + been triggered when the reconciliation was initially performed. + +.. _model-account.move.reconciliation: + +Reconciliation +============== + +In Tryton a *Reconciliation* groups together some +`Account Move Lines <model-account.move.line>` whose total debits and credits +balance. +These account move lines must all have the same +`Account <model-account.account>` and `Party <model-party.party>` and must +not already be part of another *Reconciliation*. + +Each *Reconciliation* stores information about the reconciliation and when it +happened. + +Wizards +------- + +.. _wizard-account.reconcile: + +Reconcile Accounts +^^^^^^^^^^^^^^^^^^ + +The *Reconcile Accounts* wizard is used to find and reconcile groups of +`Account Move Lines <model-account.move.line>` that have matching total +debits and credits, in `Accounts <model-account.account>` that are marked +for reconciliation. + +The wizard goes through each account and `Party <party:model-party.party>` +in turn, and attempts to find the best possible reconciliations from the +unreconciled account move lines that should be considered. + +It does this by splitting up the account move lines into sequential +`chunks <config-account.reconciliation_chunk>`. +It then tries all possible combinations of the account move lines within each +chunk, in an attempt to find the best set of balanced lines. + +.. seealso:: + + The reconcile accounts wizard can be started from the main menu item: + + :menuselection:`Financial --> Processing --> Reconcile Accounts` + +.. _model-account.move.reconcile.write_off: + +Reconcile Write Off +=================== + +The *Reconcile Write Off* concept is used to configure which +`Journal <model-account.journal>` and debit or credit +`Accounts <model-account.account>` are used for write-offs generated when +`Reconciling Lines <wizard-account.move.reconcile_lines>`. + +.. seealso:: + + A list of the available reconcile write off settings can be found by + opening the main menu item: + + |Financial --> Configuration --> Journals --> WriteOff Methods|__ + + .. |Financial --> Configuration --> Journals --> WriteOff Methods| replace:: :menuselection:`Financial --> Configuration --> Journals --> WriteOff Methods` + __ https://demo.tryton.org/model/account.move.reconcile.write_off diff -r 9dc78c189562 -r 19a27fe2805a doc/design/tax.rst --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/design/tax.rst Mon Jan 18 12:57:35 2021 +0000 @@ -0,0 +1,151 @@ +.. _model-account.tax: + +Tax +=== + +The *Tax* concept allows the taxes a `Company <company:model-company.company>` +uses to be represented in Tryton. +Taxes can be for a fixed amount, or a percentage of an item's price. +The tax can also be setup to be included as part of an item's price for any +later taxes that get applied, resulting in it being compounded by these later +taxes. + +A date range can be used to restrict when a tax applies. + +Applying a tax will also apply all of its children. + +.. seealso:: + + The taxes can be found by opening the main menu item: + + |Financial --> Configuration --> Taxes --> Taxes|__ + + .. |Financial --> Configuration --> Taxes --> Taxes| replace:: :menuselection:`Financial --> Configuration --> Taxes --> Taxes` + __ https://demo.tryton.org/model/account.tax + + Taxes can be created from `Tax Templates <model-account.tax.template>`. + +Wizards +------- + +.. _wizard-account.tax.test: + +Test Tax +^^^^^^^^ + +The *Test Tax* wizard allows a user to test how different taxes get applied. +It does this without altering any data on the system, and lets the user +instantly see the result of applying different taxes. + +.. seealso:: + + The test tax wizard can be started using the main menu item: + + :menuselection:`Financial --> Configuration --> Taxes --> Test Tax` + +.. _model-account.tax.line: + +Tax Line +======== + +The *Tax Line* concept is used to record how an +`Account Move Line <model-account.move.line>` is split up for tax purposes. +Each tax line represents a tax amount, or base amount, for a specific +*Account Move Line* and `Tax <model-account.tax>` combination. + +.. _model-account.tax.group: + +Tax Group +========= + +The *Tax Group* concept is used to group together `Taxes <model-account.tax>` +of the same type. +These tax groups can then be used in `Tax Rules' <model-account.tax.rule>` +lines to change which taxes are applied to an item. + +.. seealso:: + + The tax groups can be found using the main menu item: + + |Financial --> Configuration --> Taxes --> Tax Groups|__ + + .. |Financial --> Configuration --> Taxes --> Tax Groups| replace:: :menuselection:`Financial --> Configuration --> Taxes --> Tax Groups` + __ https://demo.tryton.org/model/account.tax.group + +.. _model-account.tax.rule: + +Tax Rule +======== + +A *Tax Rule* allows taxes to be substituted for other taxes based on a set of +rules. +When the tax rule is applied the rule defined by its first matching line is +used. + +The tax rule's lines contain a set of properties, such as the +`Tax <model-account.tax>`, its `Group <model-account.tax.group>`, or a date +range. +These are used to work out if the tax rule line matches the tax. +If the tax matches, then a substitution tax is added and the origin tax is +removed, unless the tax rule line indicates that the origin tax should also +be kept. + +.. seealso:: + + The available tax rules can be found by opening the main menu item: + + |Financial --> Configuration --> Taxes --> Tax Rules|__ + + .. |Financial --> Configuration --> Taxes --> Tax Rules| replace:: :menuselection:`Financial --> Configuration --> Taxes --> Tax Rules` + __ https://demo.tryton.org/model/account.tax.rule + + Tax rules can be created from + `Tax Rule Templates <model-account.tax.rule.template>`. + +.. _model-account.tax.code: + +Tax Code +======== + +In Tryton *Tax Codes* are used to collect together tax amounts and base amounts +for tax reporting. + +Each tax code is made up from lines, each of which collect together either the +tax or base amounts for a specific `Tax <model-account.tax>` and type of +transaction. +An operator then allows this value to be negated if required. + +The tax codes can be placed into a structure with each having a parent and +some children. + +The amounts shown by each tax code are based on the values from tax code's +lines, and the amounts provided by the tax code's children. + +.. seealso:: + + The list of tax codes can be found using the main menu item: + + |Financial --> Configuration --> Taxes --> Tax Codes --> Tax Codes|__ + + .. |Financial --> Configuration --> Taxes --> Tax Codes --> Tax Codes| replace:: :menuselection:`Financial --> Configuration --> Taxes --> Tax Codes --> Tax Codes` + __ https://demo.tryton.org/model/account.tax.code + + Tax codes can be created from + `Tax Code Templates <model-account.tax.code.template>`. + +Wizards +------- + +.. _wizard-account.tax.code.open_chart: + +Open Chart of Tax Codes +^^^^^^^^^^^^^^^^^^^^^^^ + +The *Open Chart of Tax Codes* wizard opens the chart of tax codes, showing the +tax codes and amounts for the selected periods of time. + +.. seealso:: + + The open chart tax code wizard can be started from the main menu item: + + :menuselection:`Financial --> Charts --> Open Tax Chart` diff -r 9dc78c189562 -r 19a27fe2805a doc/design/template.rst --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/design/template.rst Mon Jan 18 12:57:35 2021 +0000 @@ -0,0 +1,128 @@ +.. _concept-account.template: +.. _model-account.account.template: +.. _model-account.account.type.template: +.. _model-account.tax.template: +.. _model-account.tax.code.template: +.. _model-account.tax.rule.template: + +Templates +========= + +The *Templates* are used to predefine a set of basic accounting structures +and rules. +The templates have the same properties as their non-template equivalents +except they are not linked to a `Company <company:model-company.company>`. + +There are templates for: + +* `Accounts <model-account.account>`, +* `Account Types <model-account.account.type>`, +* `Taxes <model-account.tax>`, +* `Tax Codes <model-account.tax.code>`, and +* `Tax Rules <model-account.tax.rule>`. + +These templates are used together to form a complete accounting structure for +particular country and/or company type. + +.. seealso:: + + The templates can be found using the following menu entries: + + * |Financial --> Configuration --> Templates --> Account Templates|__ + * |Financial --> Configuration --> Templates --> Account Type Templates|__ + * |Financial --> Configuration --> Templates --> Taxes Templates|__ + * |Financial --> Configuration --> Templates --> Tax Codes Templates|__ + * |Financial --> Configuration --> Templates --> Tax Rule Templates|__ + + .. |Financial --> Configuration --> Templates --> Account Templates| replace:: :menuselection:`Financial --> Configuration --> Templates --> Account Templates` + __ https://demo.tryton.org/model/account.account.template + .. |Financial --> Configuration --> Templates --> Account Type Templates| replace:: :menuselection:`Financial --> Configuration --> Templates --> Account Type Templates` + __ https://demo.tryton.org/model/account.account.type.template + .. |Financial --> Configuration --> Templates --> Taxes Templates| replace:: :menuselection:`Financial --> Configuration --> Templates --> Taxes Templates` + __ https://demo.tryton.org/model/account.tax.template + .. |Financial --> Configuration --> Templates --> Tax Codes Templates| replace:: :menuselection:`Financial --> Configuration --> Templates --> Tax Codes Templates` + __ https://demo.tryton.org/model/account.tax.code.template + .. |Financial --> Configuration --> Templates --> Tax Rule Templates| replace:: :menuselection:`Financial --> Configuration --> Templates --> Tax Rule Templates` + __ https://demo.tryton.org/model/account.tax.rule.template + +Wizards +------- + +.. _wizard-account.create_chart: + +Create Chart +^^^^^^^^^^^^ + +The *Create Chart* wizard takes a set of templates and creates the +corresponding accounts structure for a single +`Company <company:model-company.company>`. +This includes structures like the chart of accounts, balance sheet and income +statement, and taxes and related tax management and reporting structures. + +.. seealso:: + + The create chart wizard can be started from the main menu item: + + :menuselection:`Financial --> Configuration --> Templates --> Create Chart of Account from Template` + +.. _wizard-account.update_chart: + +Update Chart +^^^^^^^^^^^^ + +The *Update Chart* wizard updates a `Company's <company:model-company.company>` +accounts structure with any changes that have been made to the underlying +templates. + +.. seealso:: + + The update chart wizard can be started from the main menu item: + + :menuselection:`Financial --> Configuration --> Templates --> Update Chart of Account from Template` + +.. _model-account.move.template: + +Account Move Template +===================== + +An *Account Move Template* provides a predefined structure for an +`Account Move <model-account.move>`. + +Each account move template can define a set of keywords. +Values for these keywords are requested from the user when the template is +used. +These values are then substituted for the keyword placeholders defined in the +account move template's fields. + +The account move template's lines, and their tax lines, mirror the structure of +`Account Move Lines <model-account.move.line>` and +`Tax Lines <model-account.tax.line>` respectively. +However, in selected fields they also allow the use of expressions that can +contain the keyword placeholders. + +.. seealso:: + + The account move templates can be found by using the main menu item: + + |Financial --> Configuration --> Templates --> Account Move Template|__ + + .. |Financial --> Configuration --> Templates --> Account Move Template| replace:: :menuselection:`Financial --> Configuration --> Templates --> Account Move Template` + __ https://demo.tryton.org/model/account.move.template + +Wizards +------- + +.. _wizard-account.move.template.create: + +Create Move +^^^^^^^^^^^ + +The *Create Move* wizard is used to create a new +`Account Move <model-account.move>` based on a selected +`Move Template <model-account.move.template>`. + +.. seealso:: + + The create move wizard can be started from the main menu item: + + :menuselection:`Financial --> Entries --> Create Move from Template` diff -r 9dc78c189562 -r 19a27fe2805a doc/index.rst --- a/doc/index.rst Mon Jan 04 21:33:28 2021 +0100 +++ b/doc/index.rst Mon Jan 18 12:57:35 2021 +0000 @@ -1,310 +1,17 @@ +############## Account Module ############## -The account module defines fundamentals for most of accounting needs. - -The module generates minimal chart of accounts for many languages. The XML -files for each language are generated from the same original XML file thanks to -the localize.xsl XSLT script. The script will produce on the standard output -the desired XML file. The XSLT script can be launched with the following -command:: - - xsltproc --stringparam lang <lang> localize.xsl minimal_chart.xml - -where ``lang`` is one of the languages. - - -Fiscal Year -*********** - -A fiscal year aggregates a set of periods that are included between -two dates. A Fiscal year can be *Open*, *Closed* or *Locked*. Closing a fiscal -year will close all the corresponding periods. A *Locked* fiscal can not be -re-open. - -- Name: The name of the fiscal year. -- Code: The code, useful for fast data entry and searching. -- Starting and Ending Date: The dates in which the periods should be - included. -- Company: The company for which the fiscal year is defined. -- State: Can be *Open*, *Closed* or *Locked*. -- Periods: The list of periods. -- Post Move Sequence: The sequence to use for numbering moves in this - fiscal year. - -The *Balance Non-Deferral* wizard allow to create a move that will debit/credit -each non-deferral account in such way to have a balance equals to zero for the -fiscal year and debit/credit a counter part account. - - -Period -****** - -A period is mainly defined by a Starting and an Ending date, a Fiscal -Year, a Type and a State (*Open*, *Closed* or *Locked*). - -The type can be *Standard* or *Adjustement*: Periods of type -*Standard* on the same fiscal year can not overlap. Period of type -*Adjustement* can overlap other periods and are typically used for all -the accounting moves that must be created when closing a fiscal year. -By default, the system uses only *Standard* period when creating -moves. - -Each account move must be linked to a period and a move must be -created on an open period. - - -Account Type -************ - -The Account Type Model defines the structure of the accounting -reports as balance sheet and income statement. -It also defines check boxes to filter its accounts by usage. - - -Account -******* - -An Account is defined by these fields: - -- Name -- Code -- Company -- Parent Account -- Currency -- Type: The Account Type of the account. -- Debit Type: The Account Type of the account when debit > credit. -- Start and End Date: The period for which the account can be used. -- Replaced By: the account to use after end date. -- Second currency: Force all moves for the account to have this - secondary currency. -- Closed: Forbid move on the account. -- Reconcile: Allow move lines of this account to be reconciled. -- Party Required: Make party required for move lines of this account. -- Taxes: This list of tax auto-complete move with new moves lines - corresponding to thoses taxes if the user create a line linked to - the current account and if the journal type is *Expense* or - *Revenue*. -- Note - - -Journal -******* - -A Journal contains the following fields: - -- Name -- Code -- Active: A checkbox that allow to disable the tax. -- Type: By default take one of the following values: *General*, - *Revenue*, *Expense*, *Cash*, *Situation*. - - -Reconcile Write Off -******************* - -A reconcile write off is used to set the writeoff options when reconciling -unbalanced moves. It has the following fields: - -- Name -- Company -- Journal: Will be used for creating the write off move -- Credit Account and Debit Account: The accounts used for the write off move - depending on the amount sign. -- Active: A checkbox that allow to disable the writeoff. - - -Move -**** - -A Move groups a list of Move Lines. It contains the following fields: - -- Name -- Reference -- Period -- Journal -- Effective Date: The date the move was created. -- Post Date: The date the move was posted. -- State: Can be *Draft* or *Posted*. A move should be balanced before - being posted. Once posted the move gets a Reference number, the - lines are posted and they can not be edited anymore. -- Lines: The move lines. - - -Moves Line: -*********** - -A Move Line is an amount of money that is credited to or debited from -an account. The fields are: - -- Name -- Reference -- Debit and Credit: Define the debited or credited amount. Only one - field can be filled. -- Account: The account. -- Move: The move that links all the corresponding lines. -- State: Can take one of the following value: - - - *Draft*: The line is part of a non-balanced move. - - *Valid*: The line is part of a balanced move. - - *Posted*: The line is part of a posted move. +The *Account Module* defines the fundamentals needed for basic double entry +accounting. +It also includes templates for a basic chart of accounts, balance sheet and +income statement. -- Second Currency and Amount Second Currency: allow to keep track of - the original amount if the underlying transaction was made in an - other currency. -- Maturity Date: used for payable and receivable lines. The Maturity - Date is the limit date for the payment. -- Reconciliation: Hold a reconciliation number if applicable. -- Journal, Period, Date: The values on these fields comes from the - corresponding move. -- Tax Lines. Gives the distribution of the amount line on the account - chart - -The Move Line is displayed using the account's name eventualy surrounded by -parenthesis when it is a credit line. - -The *Reconcile Lines* wizard allow to link move lines of the same -acount for whose the credit sum is equal to the debit sum. If the -selected lines are not balanced, the wizard offer to create a -write-off line with the difference to make the reconciliation. - -The *Unreconcile Lines* wizard allow to do the inverse operation (but -doesn't reverse other operations that could have triggered by the -reconciliation). - -The *Reconcile Accounts* wizard allow to process one by one each party and -account for reconciliation. The wizard tries to propose the best reconciliation -possible. The configuration `reconciliation_chunk` in `account` section allow -to define the length of lines that is allowed to search for proposal. The -default is 10. - -The *Group Lines* wizard allow to group payable and/or receivable lines in -order to have a unique payable or receivable line. - - -Tax Code -******** - -The tax codes defines a tree structure and are used to create the tax -reports. They are used to collect the tax amounts and the base amounts -of the invoices. The Tax Code model contains the following fields: - -- Name -- Code -- Active: A checkbox that allow to disable the tax code. -- Company: The company for which the tax code is defined. -- Parent, Children: Parent and children tax codes. -- Start and End date: The period for which the tax code is reported. -- Amount: The sum of lines for the selected periods: - - - Operator: `+` or `-` - - Tax - - Amount: *Tax* or *Base* - - Type: *Invoice* or *Credit* - - -Tax -*** - -The tax model defines taxes, how the tax amount are computed and which -tax code to use when creating invoices. The Tax model is defined by -the following fields: +.. toctree:: + :maxdepth: 2 -- Name -- Description -- Group -- Active: A checkbox that allow to disable the tax code. -- Sequence -- Type: May be *Percentage*, *Fixed*, or *None* for empty tax. -- Amount: If Type is *Fixed*, defines a fix amount for the tax. -- Percentage: If Type is *Percentage*, defines the percentage of the - tax. -- Update Unit Price: If checked then the unit price for further tax calculation - will be increased by the amount of this tax. -- Parent, Children: Parent and children taxes -- Company: The company for which the tax is defined. -- Invoice Account: The account to use when creating move lines for - invoicing with this tax, for credit on revenue or for debit on - expense. -- Credit Note Account: The account to use when creating move lines for - credit notes with this tax, for debit on revenue or for credit on - expense - -If a code field is left empty, the corresponding amounts will be -ignored by the tax reports. - - -Tax Rule -******** - -The tax rule defines a set of rules that will be applied when computing taxes. -It's composed by a name, it's kind and a list of lines. If a tax matches a tax -rule line, it will be replaced by the *Substituion Tax*. The *Original Tax* -will be included only if the *Keep Origin* check is checked. - - -Templates -********* - -The Template models (Account Template, Account Type Template, Tax -Template, Tax Code Template, etc) are the equivalent of their -counterparts except that they are not linked to a company. Two wizard -(*Create Chart of Account from Template* and *Update Chart of Account -from Template*) allow to create and update the accounts from the -account templates (and consequently all other models associated to -templates). - -Move Template -************* - -A move template allows to configure predefined moves. A Move Template is -defined by the following fields: - -- Name -- Company -- Keywords: The list of keywords used in the template. -- Journal -- Date: The date of the move. It must be leaved empty for today. -- Description: The description of the move. The keyword values can be - substituted using the name surrounded by braces ('{' and '}'). -- Lines: The list of template lines. -- Active - -A wizard to create moved base on templates is available in the *Entries* menu. -The templates are also available as actions when opening a journal. - -Move Template Keywords -********************** - -The keywords define the values asked to user to create the move based on the -template. The fields are: - -- Name -- String: The label used in the wizard form. -- Sequence: The sequence used to order the fields in the wizard form. -- Type: - - - *Char* - - *Numeric* - - *Date* - - *Party* - -- Required -- Digits: Only for numeric keyword. - -Move Line Template -****************** - -- Operation: *Debit* or *Credit* -- Amount: An expression that can use any keywords to compute the amount. -- Account -- Party: Only for account that requires a party. -- Description -- Taxes: The list of template tax lines - -Tax Line Template -***************** - -- Amount: An expression that can use any keywords to compute the amount. -- Code: The tax code to use. -- Tax + setup + usage/index + configuration + design/index + reference diff -r 9dc78c189562 -r 19a27fe2805a doc/reference.rst --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/reference.rst Mon Jan 18 12:57:35 2021 +0000 @@ -0,0 +1,49 @@ +************* +API Reference +************* + +Periods +======= + +.. class:: ActivePeriodMixin + + This mixin_ makes it easy to create a :class:`~trytond:trytond.model.Model` + which is active between a start and end date. + The date range, `Periods <model-account.period>`, or + `Fiscal Years <model-account.fiscalyear>` that are set in the context are + used to determine if a particular record should be considered active, or + not. + +.. class:: PeriodMixin + + This mixin_ provides a start and end date to classes that inherit it. + It also limits any parent or child fields of the class to the same + `Company <company:model-company.company>` and to dates in the same period. + +Taxation +======== + +.. class:: TaxableMixin + + This is a mixin_ that helps create classes that need to calculate + `Taxes <model-account.tax>`, tax lines, and tax and base amounts from + a list of taxable lines. + +.. _mixin: https://en.wikipedia.org/wiki/Mixin + +********************* +Development Reference +********************* + +The *Account Module* includes minimal charts of accounts for many languages. +The :abbr:`XML (eXtensible Markup Language)` files that contain the localised +charts of account are all generated from the same source XML file. +The :file:`localize.xsl` :abbr:`XSLT (XML Stylesheet Language Transform)` file +defines how the source XML file is transformed into a localised chart of +accounts. + +To output a localised chart of accounts for language ``<lang>`` run: + +.. code-block:: bash + + xsltproc --stringparam lang <lang> localize.xsl minimal_chart.xml diff -r 9dc78c189562 -r 19a27fe2805a doc/setup.rst --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/setup.rst Mon Jan 18 12:57:35 2021 +0000 @@ -0,0 +1,64 @@ +***** +Setup +***** + +.. _Setting up the accounts structure: + +Setting up the accounts structure +================================= + +After you've activated the *Account Module* the module configuration will run +the `Create Chart <wizard-account.create_chart>` wizard and allow you to +create your `Company's <company:model-company.company>` accounts structure +from a template. +It is normally a good idea to do this at this point, if you can. + +This will use the `Templates <concept-account.template>` from your selected +:guilabel:`Account Template` and create things like a Chart of +`Accounts <model-account.account>`, +the `Account Types <model-account.account.type>` used to generate the +balance sheet and income statements, and appropriate +`Taxes <model-account.tax>`, `Tax Codes <model-account.tax.code>`, and +`Tax Rules <model-account.tax.rule>` to go with them. + +.. tip:: + + If skipped running the *Create Chart* wizard you can always run it later + from its main menu item. + +.. _Creating a fiscal year: + +Creating a fiscal year +====================== + +In order to be able to record any of your company's transactions in Tryton +you must first create a :ref:`Fiscal Year <model-account.fiscalyear>`. +This is because every account move happens during an accounting +:ref:`Period <model-account.period>`, and each period belongs to a fiscal +year. + +You can create a new `Fiscal Year <model-account.fiscalyear>` from the +[:menuselection:`Financial --> Configuration --> Fiscal Years --> Fiscal Years`] +main menu item. + +.. tip:: + + The start and end of a fiscal year may align with a calendar year + (1 January to 31 December) in which case it is common to use the year as + its name. + + It is not essential that a fiscal year and calendar year align, in fact a + fiscal year may be longer or shorter than a calendar year, depending on + your country's legal requirements and financial reporting standards. + +Once you have filled in the required information the +`Create Periods <wizard-account.fiscalyear.create_periods>` wizard allows you +to create a set of standard `Periods <model-account.period>`. +You should choose an appropriate period length for your +`Company <company:model-company.company>`, bearing in mind some reports are +generated based on periods, and periods allow you to build up your accounts in +smaller chunks. + +.. tip:: + + Tryton also provides easy ways of `Creating additional fiscal years`. diff -r 9dc78c189562 -r 19a27fe2805a doc/usage/close.rst --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/usage/close.rst Mon Jan 18 12:57:35 2021 +0000 @@ -0,0 +1,106 @@ +.. _Closing a period: + +Closing a period +================ + +To help you keep your accounts tidy, and help you avoid errors, Tryton lets you +close each of your `Company's <company:model-company.company>` accounting +`Periods <model-account.period>` as soon as they are finished. + +Check everything is ready +------------------------- + +Before you go ahead and close the period it is a good idea to check that +you have recorded all the transactions related to the period in Tryton. +This includes any `Account Moves <model-account.move>` that are needed for +things like prepayments, accruals or depreciation. +You may also want to check that things like bank balances reconcile, and +account moves have been posted. + +.. tip:: + + If you are not ready to close the period, but want to restrict which + `Journals <model-account.journal>` are still open then you can partially + close a period. + In Tryton this is done by using the + [:menuselection:`Financial --> Processing --> Close Journals - Periods`] + main menu item. + +Close the period +---------------- + +Once you are happy everything seems to be okay you use the +[:menuselection:`Financial --> Processing --> Close Periods`] main menu item +to close the period. + +.. note:: + + Many companies will also have their own additional processes which need + to be run at period end. + These may include things like generating reports, and reporting taxes. + +.. tip:: + + If you need to make changes to a closed period you can re-open it, unless + it has been locked. + + To re-open a closed period use the + [:menuselection:`Financial --> Processing --> Close Periods`] menu item. + To find a closed period, you will need to clear the filter so that all the + periods are listed, not just the open ones. + +.. _Closing a fiscal year: + +Closing a fiscal year +===================== + +There are several steps you need to follow in order to close a +`Fiscal Year <model-account.fiscalyear>` in Tryton. + +Check everything is ready +------------------------- + +To help you prepare to close the fiscal year you will often want to first +ensure all its `Periods <model-account.period>` are closed, by following your +normal procedures for `Closing a period`. + +Now is also a good time to double check that you haven't forgotten anything, +and ensure that there are no obvious errors, or anomalies. + +Reset non-deferral accounts +--------------------------- + +Next, you need to move the balances of all the non-deferral `Accounts +<model-account.account>` (also known as nominal or temporary accounts) to an +appropriate deferral account (also known as real or permanent account). +The best way to do this is to use the `Balance Non-Deferral +<wizard-account.fiscalyear.balance_non_deferral>` wizard. + +.. tip:: + + When using the balance non-deferral wizard, you should create an adjustment + period for the year end closing entries. + It is best practice to use the last day of the fiscal year as both the + start and end date for this period. + +.. tip:: + + The first time you use the balance non-deferral wizard, you may need to + create a special ``Situation`` `Journal <model-account.journal>` for + the year end closing entries. + +Create other year end entries +----------------------------- + +With the initial closing entries created you can now go ahead and create any +other moves that are required by the accounting processes of your country. +These will be moves for things like taxes on revenue, dividends, and so on. +When creating these you may want to use the adjustment period you used in +the last step. + +Close the fiscal year +--------------------- + +Finally once all the year end and closing moves have been posted you can close +the fiscal year from the +[:menuselection:`Financial --> Processing --> Close Fiscal Year`] menu item. diff -r 9dc78c189562 -r 19a27fe2805a doc/usage/create.rst --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/usage/create.rst Mon Jan 18 12:57:35 2021 +0000 @@ -0,0 +1,57 @@ +.. _Creating additional fiscal years: + +Creating additional fiscal years +================================ + +You will need a different `Fiscal Year <model-account.fiscalyear>` for each +year that you want to record accounting transactions. + +You can create these in the same way as you +`created your initial fiscal year <Creating a fiscal year>`. + +.. tip:: + + An alternative, and often simpler, way of creating a new fiscal year is to + use the `Renew Fiscal Year <wizard-account.fiscalyear.renew>` wizard. + +.. _Creating journal entries: + +Creating journal entries +======================== + +In Tryton `journal entries`_ are represented by +`Account Moves <model-account.move>`. +With the right modules activated Tryton will automatically create many of +the account moves for you. +However, there are times when you will need to manually move amounts from one +`Account <model-account.account>` to another. +You do this by using the items found under the +[:menuselection:`Financial --> Entries`] main menu item. + +.. _journal entries: https://en.wikipedia.org/wiki/Journal_entry + +One-off entries +--------------- + +For entries that are only needed once, for example to set an account's +initial opening balance, you can manually create an *Account Move*. + +The [:menuselection:`Financial --> Entries --> Open Journal`] main menu item +provides another way of entering the details of an account move. +It provides a list of individual +`Account Move Lines <model-account.move.line>`, which can be added to as +required. + +Reoccurring entries +------------------- + +The best way to create accounting entries for things that are expected to +happen more than once is to use an +`Account Move Template <model-account.move.template>`. + +You must first create the *Account Move Template* and set it up to ask for the +things that might change each time it is used. + +You then run the +`Create Move from Template <wizard-account.move.template.create>` wizard to +create account moves based on a template of your choice. diff -r 9dc78c189562 -r 19a27fe2805a doc/usage/index.rst --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/usage/index.rst Mon Jan 18 12:57:35 2021 +0000 @@ -0,0 +1,16 @@ +***** +Usage +***** + +Accounting configuration, data, and reports are found under the +[:menuselection:`Financial`] main menu item. + +.. toctree:: + :maxdepth: 1 + + create + view + report + process + close + structure diff -r 9dc78c189562 -r 19a27fe2805a doc/usage/process.rst --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/usage/process.rst Mon Jan 18 12:57:35 2021 +0000 @@ -0,0 +1,21 @@ +.. _Reconciling accounts: + +Reconciling accounts +==================== + +In Tryton account reconciliation is a process that matches up debits and credit +in an `Account <model-account.account>` which balance out to zero. + +This allows you to easily see, for example, which payments were for which +transactions, and which things still need to be paid for. +Any `Reconciliation <model-account.move.reconciliation>` that an +`Account Move Line <model-account.move.line>` is part of is shown by the +account move line's :guilabel:`Reconciliation` field. + +The `Reconcile Accounts <wizard-account.reconcile>` wizard is used to manually +run this account reconciliation. + +.. note:: + + Some other processes in Tryton will automatically reconcile account move + lines when appropriate. diff -r 9dc78c189562 -r 19a27fe2805a doc/usage/report.rst --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/usage/report.rst Mon Jan 18 12:57:35 2021 +0000 @@ -0,0 +1,83 @@ +.. _Using the general ledger: + +Using the general ledger +======================== + +Opening the [:menuselection:`Financial --> Reporting --> General Ledger`] +main menu item shows a list of the +`General Ledger Accounts <model-account.general_ledger.account>`. + +You select the `Fiscal Year <model-account.fiscalyear>` and optionally the +starting and ending `Periods <model-account.period>`, or dates, to see data +for a specific time period. + +Each general ledger account can be opened to provide a breakdown of the items +in that account. +This breakdown can be done to a +`Party <model-account.general_ledger.account.party>` or +`Account Move Line <model-account.move.line>` level. + +A `General Ledger <report-account.general_ledger>` report, and a +`Trial Balance <report-account.trial_balance>` can also be printed from here. + +.. tip:: + + If you are only interested in accounts which have debits or credits you + can use the filter to get a list of these by entering:: + + Debit: !0 or Credit: !0 + + Note: You should replace ``Debit`` and ``Credit`` with the correct names + used in the language you are using Tryton in. + +.. _Using the balance sheet: + +Using the balance sheet +======================= + +The [:menuselection:`Financial --> Reporting --> Balance Sheet`] shows the +`Company's <company:model-company.company>` assets and liabilities for the +chosen date. + +You can use the :guilabel:`Comparison` checkbox to do a comparison of the +company's data for two different dates. + +Opening a line from the balance sheet lists the +`Accounts <model-account.account>` that were included in the balance sheet's +line. +You can then open these accounts to get a list of the individual +`Account Move Lines <model-account.move.line>` that made up that account's +debits and credits. + +.. _Using the income statement: + +Using the income statement +========================== + +The [:menuselection:`Financial --> Reporting --> Income Statement`] shows the +`Company's <company:model-company.company>` revenue and expenses for the +chosen period of time. + +You can use the :guilabel:`Comparison` checkbox to do a comparison of the +company's data for two different periods of time. + +Opening a line from the income statement lists the +`Accounts <model-account.account>` that were included in the income statement's +line. +You can then open these accounts to get a breakdown of the amount to a +`Party <model-account.general_ledger.account.party>` or +`Account Move Line <model-account.move.line>` level. + +.. _Getting aged balances: + +Getting aged balances +===================== + +You can get an `Aged Balance <model-account.aged_balance>` for both suppliers +and customers. + +You can change what unit of time is used for the terms, and length of each +term, to suit you needs. + +You can also print a copy of the aged balances by using the +`Aged Balance <report-account.aged_balance>` report. diff -r 9dc78c189562 -r 19a27fe2805a doc/usage/structure.rst --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/usage/structure.rst Mon Jan 18 12:57:35 2021 +0000 @@ -0,0 +1,36 @@ +.. _Making changes to the accounts structure: + +Making changes to the accounts structure +======================================== + +When you've created your `Company's <company:model-company.company>` accounts +structure from a template you can extend it without needing to do anything +special. + +If you want to change any of the `Accounts <model-account.account>`, +`Account Types <model-account.account.type>`, +`Taxes <model-account.tax>`, `Tax Codes <model-account.tax.code>`, and +`Tax Rules <model-account.tax.rule>` that were created from the +`Template <concept-account.template>` then you need to use the +:guilabel:`Override Template` option on the items you want to change. + +.. note:: + + Items where you have overridden the template will not be changed when you + are `Updating the accounts structure`. + +.. _Updating the accounts structure: + +Updating the accounts structure +=============================== + +If you created your `Company's <company:model-company.company>` accounts +structure from a template you will find that the template is occasionally +updated or improved to match any updated accounting requirements. + +To bring these changes into your accounts structure you use the +`Update Chart <wizard-account.update_chart>` wizard. + +.. note:: + + Any items where you have overridden the template will not be changed. diff -r 9dc78c189562 -r 19a27fe2805a doc/usage/view.rst --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/usage/view.rst Mon Jan 18 12:57:35 2021 +0000 @@ -0,0 +1,62 @@ +.. _Viewing journal entries: + +Viewing journal entries +======================= + +In Tryton there are plenty of different ways of getting information about +the `journal entries`_ that record your +`Company's <company:model-company.company>` accounting transactions. + +Each journal entry is represented by an `Account Move <model-account.move>`. +These account moves, and the `Account Move Lines <model-account.move.line>` +that make them up, can be found by: + +* Using the items in the [:menuselection:`Financial --> Entries`] main menu + item. +* `Viewing your chart of accounts data` and opening the accounts. +* `Using the general ledger` and opening the accounts. +* `Using the balance sheet` and opening the lines and then accounts. +* `Using the income statement` and opening the lines and then accounts. + +.. tip:: + + Account moves that are created by, or relate to, other documents or items + on you Tryton system can also often be found from those documents or items. + +.. _journal entries: https://en.wikipedia.org/wiki/Journal_entry + +.. _Viewing your chart of accounts data: + +Viewing your chart of accounts data +=================================== + +The `Open Chart of Accounts <wizard-account.open_chart>` wizard can be run +from the main menu to open your chart of accounts. + +This provides a structured view of all the `Accounts <model-account.account>` +that form your `Company's <company:model-company.company>` accounts. + +.. tip:: + + Each account can be opened to show the + `Account Move Lines <model-account.move.line>` that contributed to the + debits and credits shown for that account. + +.. _Viewing your tax code data: + +Viewing your tax code data +========================== + +The `Open Chart of Tax Codes <wizard-account.tax.code.open_chart>` wizard can +be run from the main menu to open your chart of tax codes. + +From here you are able to see data about what `Taxes <model-account.tax>` have +been applied and what amounts these were based on. +The `Tax Codes <model-account.tax.code>` are normally structured so that you +can find the data that you need to do your tax reporting. + +.. tip:: + + Each tax code can be opened to show the + `Tax Lines <model-account.tax.line>` that contribute to the tax code's + amount. diff -r 9dc78c189562 -r 19a27fe2805a setup.py --- a/setup.py Mon Jan 04 21:33:28 2021 +0100 +++ b/setup.py Mon Jan 18 12:57:35 2021 +0000 @@ -10,9 +10,12 @@ def read(fname): - return io.open( + content = io.open( os.path.join(os.path.dirname(__file__), fname), 'r', encoding='utf-8').read() + content = re.sub( + r'(?m)^\.\. toctree::\r?\n((^$|^\s.*$)\r?\n)*', '', content) + return content def get_require_version(name): @@ -80,7 +83,7 @@ download_url=download_url, project_urls={ "Bug Tracker": 'https://bugs.tryton.org/', - "Documentation": 'https://docs.tryton.org/', + "Documentation": 'https://docs.tryton.org/projects/modules-account/', "Forum": 'https://www.tryton.org/forum', "Source Code": 'https://hg.tryton.org/modules/account', },