brotherton-erpnext/erpnext/accounts
ruthra kumar 758ea7bfe1
Merge pull request #35330 from ruthra-kumar/cr_note_posts_gl_for_itself
refactor: cr/dr note should be standalone even when created from another invoice
2023-08-23 20:38:14 +05:30
..
accounts_dashboard/accounts
custom style: format code with black 2022-03-28 18:52:46 +05:30
dashboard_chart fix: Default fiscal year in accounting, buying and sellingcharts 2023-07-19 13:17:12 +05:30
dashboard_chart_source perf: use get_cached_value instead of db.get_value in accounts module 2022-11-03 13:38:48 +05:30
doctype Merge pull request #35330 from ruthra-kumar/cr_note_posts_gl_for_itself 2023-08-23 20:38:14 +05:30
form_tour fix: replace quotation with invoice in first onboarding (#35389) 2023-05-23 15:35:55 +05:30
module_onboarding/accounts fix(minor): move variants to separate tab (#31354) 2022-06-15 16:08:05 +05:30
notification chore: remove all six compat code 2021-11-05 11:16:29 +05:30
number_card
onboarding_step fix(minor): move variants to separate tab (#31354) 2022-06-15 16:08:05 +05:30
page chore: remove utf-8 compat code 2021-11-05 11:16:29 +05:30
print_format feat: change print format to reflect doctype changes 2023-06-14 12:56:28 +05:30
print_format_field_template feat: Taxes template for selling/buying doctypes 2021-10-21 12:06:02 +05:30
report fix: Accounts Payable Currency bug 2023-08-22 14:12:42 +05:30
test test: add test for receivable summary report 2023-08-21 17:56:50 +05:30
workspace/accounting feat(ux): account workspace number cards 2023-08-10 17:46:35 +05:30
__init__.py
deferred_revenue.py fix: incorrect usage get_cached_value on single doctypes 2023-08-01 07:58:09 +05:30
general_ledger.py Merge branch 'develop' of https://github.com/frappe/erpnext into balancing-accounting-dimensions 2023-07-29 11:53:03 +05:30
party.py refactor: use payment ledger to fetch advance amount 2023-08-21 09:19:38 +05:30
README.md docs: specification of payment ledger 2022-06-17 17:57:07 +05:30
test_party.py style: format code with black 2022-03-28 18:52:46 +05:30
utils.py refactor: limit output to 50 in reconciliation tool 2023-08-21 20:50:32 +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