GST india - supplier / customer tax details

Hello, my first post on the website and first of all, i am very excited with this project and i am an accountant and i am seriously considering moving my entire client base to erpnext. Anyways, i have downloaded the virtualbox image to play with the setup and i have found a couple of issues that are there but just need a bit of help.

  • At the time of making a sale or a purchase invoice, once we select a customer for example, there is a head “address and contact” which has details like “customer address, billing address gstin, territory, etc”. The issue at hand is that i should be able to fill this detail at the time of creating a new supplier so that this detail gets auto populated. ie, if only in a particular invoice i need to.

  • If i ignore this “address and contact” head while entering a sale invoice, checking the GSTR-1 report, it does NOT show the GSTIN of the supplier but i have already saved in “tax id” of the customer at the time of creation of account.

  • We should be able to add “territory” to the company and by doing so, if the customer was created with a different territory, it should auto select " out of state gst". Like if i have a company and i set its territory to “delhi”. Now, if i create a new customer and set territory to “rajasthan”, it should auto select out state gst and vice versa.

  • why dont we have a “cash customer” in POS, ie in the case of pos sale, we arent supposed to have debtors and a simple " cash debit to sales". Right now i had to create a debtor named “cash” and sell pos sales to that customer. What is the idea behind this? why cannot we recieve cash payment from nameless customers as is in retail sales ?

  • Why is there two columns for seemingly same use, “territory” and “place of supply”? am i missing something?

  • totally unrelated to GST localisation, but is there a way we can select a company to work on so that we do not mix up multiple companies… for example, i have a dozen companies running and dozens of employees working on separate companies. say, just below the name so that a particular employee is only working on one company and there is no need to write the name of a company every time. this has the effect of one person ONLY working on one company at a time. once the work is done, they could simply change to another company and start working…

My suggestions:

  1. Allow us to enter all the details from “address and contact” at the time of creation of customer /supplier.
  2. POS sales, allow us to simply receive cash without putting it to a specific customer

EDIT: what is stock and item? whats the difference?
EDIT 2: Freight. How to book it and also pay tax on reverse charge basis on the same? same goes with regular purchases but that can wait a while

At the time of making a sale or a purchase invoice, once we select a customer for example, there is a head “address and contact” which has details like “customer address, billing address gstin, territory, etc”. The issue at hand is that i should be able to fill this detail at the time of creating a new supplier so that this detail gets auto populated. ie, if only in a particular invoice i need to.

That’s exactly how it works now. You have to add Address (with GST) and contact details from the party master itself, and then select it in the transaction.

We should be able to add “territory” to the company and by doing so, if the customer was created with a different territory, it should auto select " out of state gst". Like if i have a company and i set its territory to “delhi”. Now, if i create a new customer and set territory to “rajasthan”, it should auto select out state gst and vice versa.

Please add it as a feature suggestion on Github Issues. For now, you will have to select values manually.

totally unrelated to GST localisation, but is there a way we can select a company to work on so that we do not mix up multiple companies… for example, i have a dozen companies running and dozens of employees working on separate companies. say, just below the name so that a particular employee is only working on one company and there is no need to write the name of a company every time. this has the effect of one person ONLY working on one company at a time. once the work is done, they could simply change to another company and start working…

If you add multiple companies in your account, then you will see option to select your company in every transaction.

We should be able to add “territory” to the company and by doing so, if the customer was created with a different territory, it should auto select " out of state gst". Like if i have a company and i set its territory to “delhi”. Now, if i create a new customer and set territory to “rajasthan”, it should auto select out state gst and vice versa.

You can try creating Tax Rule for all the other states, it should achieve the same results: https://erpnext.org/docs/user/manual/en/accounts/setup/tax-rule

I’m glad you’re excited about your ERPNext journey. Let me address your queries and suggestions in detail:

1. Auto-population of Address and GSTIN in Sales/Purchase Invoices:

In ERPNext, the “Address and Contact” section is linked to the customer or supplier profile. If you want these fields, such as GSTIN, to auto-populate while creating invoices, make sure that all relevant details are filled in during the creation of the supplier or customer master.

To ensure this:

  • Go to the Customer or Supplier module.
  • While creating a new record, fill in the “Address,” “Tax ID,” “Territory,” and other relevant fields.
  • This way, when you select a customer in a sales invoice, the address and GSTIN should automatically appear.

Additionally, if the details are missing in the invoice, it might affect the GSTR-1 report, as GSTIN information is critical for accurate tax filings.

2. Auto-selection of Interstate GST Based on Territory:

The “Territory” feature in ERPNext is useful for managing sales or purchases across different regions. However, for auto-selecting the appropriate GST type (Intra or Inter-State), you can customize the territory settings by configuring tax rules.

Steps to achieve this:

  • Set up tax templates with rules based on the territory of the customer and your business location.
  • When a customer is from a different territory than the company’s registered state, the system can be customized to auto-select “Out of State GST.”

You may need to work with a developer or use ERPNext’s customization features to fine-tune this behavior.

3. POS Sales and Cash Customers:

In a typical retail setup, sales might happen directly to cash customers without capturing specific customer details. ERPNext, by default, requires a customer name for all transactions, including POS sales. However, the concept of a “cash customer” can be handled in two ways:

  • Create a Generic ‘Cash Customer’: As you’ve already done, you can create a customer named “Cash” and use that for all anonymous POS transactions.
  • Customization: ERPNext can be customized to skip the customer field and directly map payments as cash received for POS sales. This can be done by modifying the POS profile and sales invoice settings to make this smoother. You might need a developer to help implement this if the existing system doesn’t fit your needs.

4. Difference Between ‘Territory’ and ‘Place of Supply’:

  • Territory: This refers to the geographic location for sales purposes, helping with sales analytics and regional reporting.
  • Place of Supply: This is a GST-specific concept and is used to determine whether a transaction is intra-state or inter-state for tax purposes. The place of supply helps in determining the correct GST to be applied (CGST/SGST or IGST).

While they may seem similar, they serve different purposes—territory for sales reporting, and place of supply for tax compliance.

5. Working with Multiple Companies:

ERPNext supports multi-company setups. If you have employees working across different companies, you can assign them specific permissions to restrict their access to only one company at a time.

  • User Permissions: You can configure user permissions so that an employee only sees one company when they log in.
  • Switching Between Companies: In the top right corner of the ERPNext interface, users can switch between companies without needing to enter the company name every time.

6. Freight and Reverse Charge Mechanism (RCM):

For freight charges under GST, where Reverse Charge Mechanism (RCM) applies, you need to handle it separately in the purchase entry. Here’s how you can manage it:

  • While creating a Purchase Invoice, add the freight charges as a separate line item.
  • Set up a tax template specifically for RCM on freight, where the tax will be calculated, and RCM will be reflected accordingly.
  • This will ensure proper accounting of freight expenses and GST under RCM.

7. Stock vs. Item:

  • Stock: Refers to the physical inventory of goods available in your warehouse or stores.
  • Item: Refers to a product or service that can be sold or purchased. Not every item is necessarily a stock item (e.g., services or non-stock items).

In ERPNext, an item can be marked as a “Stock Item” if it’s something you maintain physical inventory for, whereas non-stock items like services don’t require inventory tracking.

Conclusion:

Your suggestions are quite valid. Allowing the entry of “Address and Contact” details at the time of customer/supplier creation and simplifying POS sales with cash customers are common needs for retail and accounting scenarios. With the right customization, ERPNext can be tailored to suit these requirements.

Hope this helps, and feel free to ask if you need further clarification!