ERPNext Journal Entry Types
When working with ERPNext accounting, one thing that creates confusion is the Journal Entry “Entry Type”.
Many users ignore it and just use “Journal Entry” for everything. But actually, each type has a purpose, and ERPNext behaves differently based on what you select.
I wrote this as a working reference to understand each type properly and to use it correctly during implementation and daily operations.
Inter Company Journal Entry
Purpose
Used for transactions between two companies in the same ERPNext instance.
Typical use
Shared expenses, internal billing, group companies.
Impact on Journal Entry
• Allows creating a linked entry in another company
• ERPNext connects both entries automatically
• Validates matching debit/credit if same currency
Important Notes
• You must complete both sides (each company)
• If one is cancelled, link is removed
Quick Example
Company A charges Company B:
Company A
Debit: Intercompany Receivable
Credit: Income
Company B
Debit: Expense
Credit: Intercompany Payable
Bank Entry
Purpose
Any transaction involving a bank account.
Typical use
Customer payments, supplier payments, bank charges.
Impact on Journal Entry
• Reference Number and Date become mandatory
• ERPNext may auto-fill default bank account
Important Notes
• Always use this for bank transactions, helps in reconciliation
• Missing reference will block submission
Quick Example
Customer payment:
Debit: Bank
Credit: Customer (Debtors, with party)
Cash Entry
Purpose
Used for cash transactions.
Typical use
Petty cash, cash expenses, cash sales.
Impact on Journal Entry
• ERPNext may auto-fill default cash account
• No mandatory reference fields
Important Notes
• Keep separate from bank for clean reporting
• Useful for cash book tracking
Quick Example
Office expense paid in cash:
Debit: Expense
Credit: Cash
Credit Card Entry
Purpose
Used to track credit card transactions.
Typical use
Company card expenses, online payments.
Impact on Journal Entry
• No special validation
• Works like normal journal entry
• Mainly for classification
Important Notes
• Treat credit card as liability until paid
• Requires separate payment entry later
Quick Example
Card purchase:
Debit: Expense
Credit: Credit Card Account
Debit Note
Purpose
Supplier-related adjustment.
Typical use
Purchase returns, supplier corrections, TDS cases.
Impact on Journal Entry
• Can trigger automatic TDS calculation
• ERPNext may add tax row
• Adjusts supplier balance automatically
Important Notes
• Use when reducing supplier payable
• Only one supplier allowed if TDS applied
Quick Example
Return goods to supplier:
Debit: Supplier (Payable)
Credit: Purchase Return
Credit Note
Purpose
Customer-related adjustment.
Typical use
Sales returns, discounts, corrections.
Impact on Journal Entry
• Can trigger TCS (tax) logic
• Can link to Stock Entry
• Adjusts customer balance
Important Notes
• Use when reducing customer receivable
• Often linked with sales return
Quick Example
Customer return:
Debit: Sales Return
Credit: Customer (Receivable)
This is the continuation of the Journal Entry types. Same idea, simple notes I use during implementation and troubleshooting.
Contra Entry
Purpose
Used for internal transfer between cash and bank accounts.
Typical use
Cash deposit to bank, cash withdrawal, transfer between accounts.
Impact on Journal Entry
• No special validation enforced
• Used mainly for classification
• No impact on profit/loss (balance sheet only)
Important Notes
• Should only involve Bank and Cash accounts
• No party involved
• Keeps reports clean when separating internal transfers
Quick Example
Withdraw cash from bank:
Debit: Cash
Credit: Bank
Excise Entry
Purpose
Legacy type, mainly used for old tax systems (pre-GST type setups).
Typical use
Excise duty adjustments (rare now)
Impact on Journal Entry
• No special behavior
• Works exactly like normal Journal Entry
Important Notes
• In most modern setups, this is not used
• Can be replaced with normal Journal Entry
Quick Example
Pay excise duty:
Debit: Tax Liability
Credit: Bank
Write Off Entry
Purpose
Used to write off small balances or bad debts.
Typical use
Uncollectible customer balances, small supplier differences.
Impact on Journal Entry
• Shows extra section for write-off
• Can fetch outstanding invoices automatically
• Helps bulk write-off
Important Notes
• Very useful during year-end
• ERPNext can auto-fill multiple entries
• You still need to add expense account manually
Quick Example
Write off customer balance:
Credit: Debtors (Customer)
Debit: Bad Debt Expense
Opening Entry
Purpose
Used to enter opening balances during system setup or migration.
Typical use
Starting ERPNext or new financial year opening.
Impact on Journal Entry
• ERPNext marks it as “Is Opening = Yes”
• Treated differently in reports
Important Notes
• Must be balanced
• Should be entered at start of fiscal year
• Includes all assets, liabilities, equity
Quick Example
Opening bank balance:
Debit: Bank
Credit: Opening Equity
Depreciation Entry
Purpose
Used to record asset depreciation.
Typical use
Monthly or yearly depreciation of assets.
Impact on Journal Entry
• Must use depreciation-type accounts
• Linked to Asset module
• Updates asset value automatically
Important Notes
• Usually auto-created from Asset
• Manual entry possible but risky
• Must include asset reference
Quick Example
Monthly depreciation:
Debit: Depreciation Expense
Credit: Accumulated Depreciation
Asset Disposal
Purpose
Used when asset is sold, scrapped, or removed.
Typical use
Selling old equipment, scrapping damaged asset.
Impact on Journal Entry
• Updates asset status to disposed
• Stops future depreciation
• Links entry to asset
Important Notes
• Must clear asset value and accumulated depreciation
• May include gain or loss
Quick Example
Dispose asset:
Debit: Accumulated Depreciation
Debit: Loss (if any)
Credit: Asset Account
Periodic Accounting Entry
Purpose
Used in periodic inventory system to adjust stock values.
Typical use
Month-end stock adjustment when not using perpetual inventory.
Impact on Journal Entry
• Allows posting directly to stock accounts
• Has special “Get Balance” button
• Requires difference account
Important Notes
• Only works if perpetual inventory is disabled
• ERPNext calculates difference automatically
• Used mostly monthly
Quick Example
Adjust stock difference:
Debit: Stock Account
Credit: Stock Adjustment
Exchange Rate Revaluation
Purpose
Used to adjust foreign currency balances based on latest rates.
Typical use
Month-end revaluation of USD bank or foreign accounts.
Impact on Journal Entry
• Usually system-generated
• Adjusts account value without actual transaction
Important Notes
• This is unrealized gain/loss
• Reversed or recalculated next period
Quick Example
Currency gain:
Debit: Bank (increase value)
Credit: Exchange Gain
Exchange Gain or Loss
Purpose
Used when actual payment happens at different exchange rate.
Typical use
Customer pays invoice at different rate than original.
Impact on Journal Entry
• System-generated automatically
• Handles difference between invoice rate and payment rate
Important Notes
• This is realized gain/loss
• Created during reconciliation
Quick Example
Payment at higher rate:
Debit: Exchange Gain
Credit: Debtors
Deferred Revenue
Purpose
Used when revenue is received but earned over time.
Typical use
Subscriptions, annual contracts, prepaid services.
Impact on Journal Entry
• Created automatically over time
• Moves amount from liability to income
Important Notes
• Starts from Sales Invoice
• Requires service period dates
• Runs through “Process Deferred Accounting”
Quick Example
Monthly recognition:
Debit: Deferred Revenue
Credit: Income
Deferred Expense
Purpose
Used when expense is paid upfront but used over time.
Typical use
Insurance, rent, prepaid services.
Impact on Journal Entry
• Created automatically over time
• Moves amount from asset to expense
Important Notes
• Starts from Purchase Invoice
• Requires service period
• Same process as deferred revenue
Quick Example
Monthly expense:
Debit: Expense
Credit: Deferred Expense