Double-entry bookkeeping records every transaction in at least two accounts, with total debits always equal to total credits. Assets and expenses increase with a debit; liabilities, capital and income increase with a credit. Entries go into a journal, are posted to ledgers and checked with a trial balance. Under GST, output tax is a liability account and input tax credit is an asset account.
Double-entry bookkeeping is the system behind every set of proper books, from a corner shop's ledgers to a listed company's accounts. The idea is simple: every transaction affects at least two accounts, and the total of debits always equals the total of credits. This guide explains the debit and credit rules, shows journal entries for common GST transactions, and walks through ledgers and a trial balance.
What is double-entry bookkeeping?
Every business transaction is an exchange. When you sell goods for cash, you receive cash and give up goods (and earn income). When you buy on credit, you receive goods and take on a debt to the supplier. Double entry captures both sides.
Each transaction is recorded as:
- one or more debits, and
- one or more credits,
- with the total debits equal to the total credits.
Because every entry balances, the whole set of books balances. That gives you a built-in arithmetic check and, more importantly, a complete picture of what the business owns, owes, earns and spends.
The Companies Act requires companies to keep books on the double-entry system (ICAI's study material on accounts of companies summarises section 128). For any GST-registered business, section 35 of the CGST Act requires true and correct accounts of supplies, stock, input tax credit and output tax — which in practice means double-entry books.
What are the five types of accounts?
| Account type | Examples | Increases with | Decreases with | Normal balance |
|---|---|---|---|---|
| Assets | Cash, bank, stock, debtors, input GST, equipment | Debit | Credit | Debit |
| Expenses | Purchases, rent, salaries, electricity | Debit | Credit | Debit |
| Liabilities | Creditors, loans, output GST payable | Credit | Debit | Credit |
| Capital / equity | Owner's capital, retained profit | Credit | Debit | Credit |
| Income | Sales, interest received, commission | Credit | Debit | Credit |
The underlying equation is:
Assets = Liabilities + Capital
and, during the year, income increases capital while expenses reduce it.
The traditional "golden rules"
Many Indian accountants learned the golden rules:
- Personal accounts (people, firms, banks): debit the receiver, credit the giver.
- Real accounts (assets): debit what comes in, credit what goes out.
- Nominal accounts (income and expenses): debit expenses and losses, credit income and gains.
Both approaches produce the same entries. Use whichever you find easier.
How do the books flow from transaction to statement?
- Source document: invoice, bill, receipt, bank statement, voucher.
- Journal (book of original entry): the transaction recorded with date, accounts debited and credited, amounts and narration. Busy businesses use subsidiary books: sales register, purchase register, cash book, bank book.
- Ledger: each journal line is posted to its account so each account shows a running balance.
- Trial balance: list of all ledger balances; debits must equal credits.
- Adjustments: closing stock, depreciation, outstanding and prepaid expenses.
- Financial statements: profit and loss statement and balance sheet.
How do you record GST sales and purchases?
GST adds tax accounts to ordinary entries. Under the GST record rules, every registered person other than a composition taxpayer must keep an account of tax payable, tax collected and paid, input tax and input tax credit claimed. In the books, that typically means separate ledgers such as Output CGST, Output SGST, Output IGST, Input CGST, Input SGST and Input IGST.
- Output GST (tax charged on sales) is a liability — you owe it to the government.
- Input GST (tax paid on purchases you can claim) is an asset — it reduces what you owe.
Worked example: one month of a Pune hardware trader
A Pune hardware trader, registered in Maharashtra, starts the month with ₹2,00,000 capital in the bank. All goods carry GST at 18% for this example.
1. Purchase from a Mumbai supplier on credit: taxable value ₹1,00,000, CGST 9% ₹9,000, SGST 9% ₹9,000 (intra-state). Total ₹1,18,000.
| Account | Debit (₹) | Credit (₹) |
|---|---|---|
| Purchases | 1,00,000 | |
| Input CGST | 9,000 | |
| Input SGST | 9,000 | |
| Supplier (Creditor) | 1,18,000 |
2. Cash sale within Maharashtra: taxable value ₹60,000, CGST ₹5,400, SGST ₹5,400. Total ₹70,800.
| Account | Debit (₹) | Credit (₹) |
|---|---|---|
| Cash | 70,800 | |
| Sales | 60,000 | |
| Output CGST | 5,400 | |
| Output SGST | 5,400 |
3. Credit sale to a builder in Karnataka (inter-state): taxable value ₹50,000, IGST 18% ₹9,000. Total ₹59,000.
| Account | Debit (₹) | Credit (₹) |
|---|---|---|
| Builder (Debtor) | 59,000 | |
| Sales | 50,000 | |
| Output IGST | 9,000 |
4. Rent paid by bank: ₹20,000 (assume the landlord is unregistered, so no GST).
| Account | Debit (₹) | Credit (₹) |
|---|---|---|
| Rent | 20,000 | |
| Bank | 20,000 |
5. Part payment to the supplier by bank: ₹80,000.
| Account | Debit (₹) | Credit (₹) |
|---|---|---|
| Supplier (Creditor) | 80,000 | |
| Bank | 80,000 |
6. Builder pays ₹59,000 by bank.
| Account | Debit (₹) | Credit (₹) |
|---|---|---|
| Bank | 59,000 | |
| Builder (Debtor) | 59,000 |
Setting off GST
Output tax: IGST ₹9,000, CGST ₹5,400, SGST ₹5,400 = ₹19,800. Input tax: CGST ₹9,000, SGST ₹9,000 = ₹18,000.
The credit is used against the liability following the GST set-off order (explained in input tax credit rules). Overall, ₹19,800 − ₹18,000 = ₹1,800 net payable in cash, subject to how the set-off works head by head. When you pay, debit the output tax accounts and credit input tax accounts and bank.
How do you prepare a trial balance?
After posting, the ledger balances (before the GST set-off entry) are:
| Ledger | Debit (₹) | Credit (₹) |
|---|---|---|
| Bank (2,00,000 − 20,000 − 80,000 + 59,000) | 1,59,000 | |
| Cash | 70,800 | |
| Purchases | 1,00,000 | |
| Input CGST | 9,000 | |
| Input SGST | 9,000 | |
| Rent | 20,000 | |
| Capital | 2,00,000 | |
| Supplier (1,18,000 − 80,000) | 38,000 | |
| Sales (60,000 + 50,000) | 1,10,000 | |
| Output CGST | 5,400 | |
| Output SGST | 5,400 | |
| Output IGST | 9,000 | |
| Total | 3,67,800 | 3,67,800 |
Debits equal credits, so the arithmetic is right. The builder's account is nil after payment, so it does not appear.
To turn this into profit, you need closing stock. If ₹45,000 of goods (at cost, valued under AS 2) remain unsold, cost of goods sold is ₹1,00,000 − ₹45,000 = ₹55,000, gross profit is ₹1,10,000 − ₹55,000 = ₹55,000, and after rent, net profit is ₹35,000. That calculation is the subject of profit and loss statement; the valuation choice is in stock valuation methods.
What errors does a trial balance not catch?
| Error type | Example | Caught by trial balance? |
|---|---|---|
| Omission | Rent payment not recorded | No |
| Commission (wrong account, right side) | Rent posted to electricity | No |
| Principle | Equipment purchase posted as expense | No |
| Compensating | Two errors that cancel out | No |
| Original entry | ₹8,500 entered as ₹5,800 on both sides | No |
| One-sided posting | Debit posted, credit missed | Yes |
| Casting / totalling | Ledger total added wrong | Yes |
This is why you also reconcile the bank account to the bank statement, reconcile input tax credit with GSTR-2B, and confirm balances with major customers and suppliers.
How does billing software handle double entry?
When you raise an invoice in accounting-linked billing software, it posts the debtor, sales and output tax entries in the background. Purchases post the expense or stock, input tax and creditor. Billing Software by Betterwork creates GST invoices, credit and debit notes, and GSTR-ready reports from the same transactions, so the sales register your accountant receives already splits taxable value and tax by head. You still need to understand the entries to review them and make year-end adjustments.
How do you record returns and credit notes?
Returns reverse the original entry, including the tax.
If the Karnataka builder from the example above returned goods worth ₹5,000 (taxable value) plus IGST ₹900, and the trader issued a credit note:
| Account | Debit (₹) | Credit (₹) |
|---|---|---|
| Sales returns (or Sales) | 5,000 | |
| Output IGST | 900 | |
| Builder (Debtor) | 5,900 |
Stock increases by the cost of the goods returned when the stock register is updated. Purchase returns work the other way: debit the supplier, credit purchases (or purchase returns) and credit the input tax accounts.
How do you record receipts, payments and bank charges?
Sales and purchases are only half the month. Every rupee that moves through the bank also needs a matching pair of entries. Continuing the Pune trader's example:
| Transaction | Debit | Credit | Amount |
|---|---|---|---|
| Karnataka builder pays the invoice by UPI | Bank | Builder (debtor) | ₹59,000 |
| Trader pays the Mumbai supplier | Supplier (creditor) | Bank | ₹1,18,000 |
| Bank charges ₹200 plus 18% GST of ₹36 (credit assumed eligible) | Bank charges ₹200; Input CGST ₹18; Input SGST ₹18 | Bank | ₹236 |
Notice that a receipt does not touch sales and a payment does not touch purchases. The sale and purchase were already recorded when the invoices were raised; the bank entries only settle the party balances. Recording a customer receipt as fresh "sales" is one of the most common ways small businesses double-count income.
A simple month-end routine
- Enter or import every sales and purchase invoice for the month.
- Post all bank and cash receipts and payments against the right party.
- Reconcile each bank account with its statement and investigate unmatched lines.
- Review debtor and creditor ledgers for unapplied receipts or advances.
- Run the trial balance and clear any suspense balance before closing the month.
Common mistakes
- Booking sales including GST as income, overstating sales by the tax amount.
- Putting all GST into one ledger instead of separating CGST, SGST and IGST, input and output.
- Treating blocked credit as input tax; it belongs in the cost of the purchase or expense.
- Recording owner's personal withdrawals as business expenses instead of drawings.
- Posting capital purchases as expenses, understating assets and profit.
- Trusting a tallied trial balance without bank and party reconciliations.
- Writing entries without narration or document references, making them impossible to verify later.
Key takeaways
- Every transaction has equal debits and credits.
- Assets and expenses increase with debits; liabilities, capital and income with credits.
- Output GST is a liability; claimable input GST is an asset.
- Journal → ledger → trial balance → adjustments → financial statements.
- A balanced trial balance is necessary but not sufficient; reconcile bank, GST and parties.
- Keep separate GST ledgers by head and by input/output.
This guide is general information, not tax advice. Rules last checked on 20 October 2026; confirm with your tax professional for your situation.
