From 335558da3383379afb6625992cf679d3fc00b4bd Mon Sep 17 00:00:00 2001 From: Neil Tiffin Date: Thu, 7 Mar 2024 08:50:52 -0600 Subject: [PATCH] Update the period close and year end processing sections --- images/gl-year-end-closing.png | Bin 0 -> 36591 bytes part-processes.tex | 91 +++++++++++++++++++-------------- 2 files changed, 53 insertions(+), 38 deletions(-) create mode 100644 images/gl-year-end-closing.png diff --git a/images/gl-year-end-closing.png b/images/gl-year-end-closing.png new file mode 100644 index 0000000000000000000000000000000000000000..0c42e409bd423c65422e4264e8a2150e8e3d3048 GIT binary patch literal 36591 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 literal 0 HcmV?d00001 diff --git a/part-processes.tex b/part-processes.tex index 336baff..9d62915 100644 --- a/part-processes.tex +++ b/part-processes.tex @@ -947,56 +947,71 @@ \subsection{Importing bank transactions - CSV} \section{Period closing} \label{sec-business-processes-accounting-period-closing} -Period closing is a concept used by accountants to ensure that audited and -known-correct accounting data stays correct by ``freezing'' it: by closing -an accounting period no modifications can be made to the accounting data -before a certain date. +Period closing\index{closing}\index{period closing} is a concept used by accountants to ensure that accounting data is not allowed to change without proper authority. +This helps protect against errors when entering new transactions and fraud. +The best practice is to close an accounting period, usually monthly, as soon as it is reconciled. -LedgerSMB supports this concept through the \menupath{System \ma Audit Control} -menu, where you'll find the ``Close Books up to'' item. By filling out a date -in the input field and hitting Continue posting to dates before the entered -date will be disallowed. +When a period is closed no transactions can be entered prior to the end date of the period, including previous periods. -% @@@ screenshot +To open or close a period the user must have be assigned the \texttt{yearend\_run}\index{yearend\_run} role, then they can navigate to the screen "Period closing dates" using \menupath{General Journal \ma Year End}. +For an example, see \figref{fig:sec-year-end-closing}. + +In the bottom part of the screen the user can add a date +in the input field and hit the corresponding button \texttt{Close Period} to close all periods prior to that date. +Note that periods are normally closed one-by-one in successive order. + +Re-opening a period also opens all succeeding periods. + +\begin{figure}[ht] + \centering + \includegraphics[width=\graphicswidth]{images/gl-year-end-closing.png} + \caption{Period and Year End Closing} + \label{fig:sec-year-end-closing} +\end{figure} + +Note that due to a design limitation prior to the release of LedgerSMB 1.7, +invoices in foreign\index{foreign currency} currencies\footnote{This pertains exclusively + to invoices and transactions in foreign + currencies and has no effect in case of invoices and transactions in the default + currency.} can't be reversed\index{transaction reversal} on dates +other than their original posting date. That is: they can, but their +reversal will result in P\&L and balance sheet effects which are not desirable. +Since period closing disables posting before a certain date this +functionality may have negative side effects in versions prior to 1.7. -\begin{quote} -Note that due to a design limitation in LedgerSMB 1.3 - to be lifted with the -general AR/AP redesign - invoices in foreign currencies can't be reversed on -other dates than their original posting date. That is: they can, but their -reversal will result in P\&L and balance sheet effects which presumably isn't -desirable. Since period closing disables posting before a certain date this -functionality may have negative side effects in some set ups. - -Also note that this pertains exclusively to invoices and transactions in foreign -currencies and has no effect in case of invoices and transactions in the default -currency. -\end{quote} \section{Year-end processing} \label{sec-business-processes-accounting-year-end-processing} -Year end closing is a concept which prepares the accounting books for the next -accounting year. Note that this is unrelated to the calendar year but to the -accounting year of the company instead. To muddy the waters even more: there's -no inherent requirement for this process to be run at least once a year. If the -first book year of the company spans more than a year, then this procedure will -be run more than a year after starting up the company. - -This procedure freezes the accounting data in the year to be closed as described -in the previous section. Additionally it clears out the profit and loss accounts: -setting all the account -balances to zero by posting their balance to the retained earnings account. Some -businesses prefer to create a retained earnings account for each book year they +Year end closing\index{year end} is a concept which prepares the accounting books for the next +accounting year\footnote{Not the calendar year.}\index{accounting year}. There's +no inherent requirement for this process to be run at least once a year. +This procedure closes the books up to the given date. +If the first book year of the company spans more than a year, +then the closing will span more than a given year. +If it has been more than a year since the last year end close then +this closing will span all data since the last year end close. + +This procedure freezes the accounting data as described in \secref{sec-business-processes-accounting-period-closing}. Additionally it clears out all of the profit and loss accounts by +setting the balances to zero and posting their balance to the retained earnings account. + +Some businesses prefer to create a retained earnings account for each book year they close. LedgerSMB supports that use-case by allowing the user to select which retained earnings account the balance should be posted to. -Some companies want may to include additional transactions related to dividend -payment regarding the current year: reduce the equity by the amount paid as -dividends in transactions marked as ``year-end transaction''. Support -for this use case isn't available in LedgerSMB 1.3. +In order to run year end closing the user must have the role \texttt{yearend\_run}\index{yearend\_run}. -% @@@ screenshot +In order to re-open a year end closing the user must have the role \texttt{yearend\_reopen}\index{yearend\_reopen}. +Typically the role to re-open an accounting period is reserved for upper management as any changes to previous periods may have tax, legal, or other government reporting impacts. + +The year procedure is run by filling in the data in the top part of the "Period closing dates" view, then clicking the button \texttt{Post Yearend}. For example, see \figref{fig:sec-year-end-closing}. + +Be careful here, because the UI default value is the first G/L account available for this procedure, +not necessary the correct retained earnings account. +Some companies want may to include additional transactions in the year end close. +Direct support for this use case isn't currently available. +Use a manual G/L transactions to accomplish this. \section{Fixed asset accounting}