Is it a good idea to add separate account (having name and number) for each customer and for each supplier or it is better to use the debtors under accounts receivable group for all customers and creditors under accounts payable group for all suppliers?
Another thing: Is it recommended to have separated VAT account for each customer account (but the VAT account to be under the tax asset group) ad separated VAT account for each supplier account (but the VAT account to be under the duties and taxes group) or to have one VAT account for all customers and one VAT account for all the suppliers?
Earlier in ERPNext, we used to have separate account for each customer and supplier. But to compatible with International standard, we have deprecated that and use a single account head. Still you will have all the reports for a specific customer or supplier.
For VAT as well, I will suggest to keep a single VAT account for all the customers and suppliers.
Would it be possible to use old version’s code to customize my installation such that an account is created for each customer/supplier and still maintain system upgradability in the future?
I think you can do that by creating separate account and assigning it to the respected customer or supplier in their master form.
No need for customisation. But this needs to be done manually every time u create a new customer or supplier.
Having Separate Ledger Account for each Customer or Supplier is bad idea. It is design used by Old legacy systems like Tally in India.
But, in the modern concept of having Customer master and Supplier Master and then linking it with Accounts Receivable (Debtors) Ledger in COA and Accounts Payable (Creditors) Ledger respectively is much better approach. The primary reason for such change could be RDBMS.
The idea was to streamline the process of customer/supplier creation with less manual intervention. The company has use cases where having separate accounts make it easier for customer and supplier accounts settlement.
For example, they have scenarios where an entity would engage with the company in supplier and customer transactions. Instead of going through standard cash settlements, they opt for creating journal vouchers debiting and crediting entity accounts (supplier and customer) to reflect required settlement. No cash or money handling involved. All within the System.
This is how they are doing things in the current system and they were hoping to do the same with ERPNext.
They can do the same in ERPnext also.
But Using Debtor and Creditor is more streamlined then Individual Ledger account in chart of account for Customer and Supplier.
In ERPNext they can do it either by payment entry or Journal entry.
It is upto the user how they want to use ERPnext account.