mergify[bot] 55806c51f2
fix: Gross and Net Profit Report - incorrect calculation of totals
* fix: account group totals calculation to consider include_in_gross

(cherry picked from commit 8dcb9302b417618505ea24e5566c017eff451c1e)

* refactor: remove unused parameters

(cherry picked from commit 50822f207ec5272d4d71a2b6579693da2088105d)

* refactor: merge separate loops for calculating group / leaf node totals
rename function
remove return statement as the list is  mutated

(cherry picked from commit 1a3b9c5bdfb9fac04a3a7d8724e6b3c3b593ec19)

* fix: add total col for gross and net profit

(cherry picked from commit cb9b4fbb91f4b73916416167932064ef5965eed1)

---------

Co-authored-by: Anoop Kurungadam <anoop@earthianslive.com>
2023-05-25 18:12:50 +05:30
..
2022-03-28 18:52:46 +05:30
2021-11-05 11:16:29 +05:30
2022-03-28 18:52:46 +05:30

Accounts module contains masters and transactions to manage a traditional double entry accounting system.

Accounting heads are called "Accounts" and they can be groups in a tree like "Chart of Accounts"

Entries are:

  • Journal Entries
  • Sales Invoice (Itemised)
  • Purchase Invoice (Itemised)

All accounting entries are stored in the General Ledger

Payment Ledger

Transactions on Receivable and Payable Account types will also be stored in Payment Ledger. This is so that payment reconciliation process only requires update on this ledger.

Key Fields

Field Description
account_type Receivable/Payable
account Accounting head
party Party Name
voucher_no Voucher No
against_voucher_no Linked voucher(secondary effect)
amount can be +ve/-ve

Design

debit and credit have been replaced with account_type and amount. against_voucher_no is populated for all entries. So, outstanding amount can be calculated by summing up amount only using against_voucher_no.

Ex:

  1. Consider an invoice for ₹100 and a partial payment of ₹80 against that invoice. Payment Ledger will have following entries.
voucher_no against_voucher_no amount
SINV-01 SINV-01 100
PAY-01 SINV-01 -80
  1. Reconcile a Credit Note against an invoice using a Journal Entry

An invoice for ₹100 partially reconciled against a credit of ₹70 using a Journal Entry. Payment Ledger will have the following entries.

voucher_no against_voucher_no amount
SINV-01 SINV-01 100
CR-NOTE-01 CR-NOTE-01 -70
JE-01 CR-NOTE-01 +70
JE-01 SINV-01 -70