CESS Tax on Tobaco products

In case of tobaco products, apart from the GST tax, CESS tax also gets applied. The CESS has 2 parts. One is fixed percetage and other is based on the SKU quantities

Tax rules are as follows

The fixed percentage tax can be implemented using the existing sales and purchase tax templates. The tax template feature can be enhanced to support quantity bases charges by adding “On Quantity” option in the template -

Any views?

not to sound like an asshole but flectra has a much better GST integration for at least the indian GST is concerned and quite simply, after 15 months or so of GST implementation, we still do not have basic functionality like you just mentioned.
I have been clamoring to the team to work on getting the basics corrected with erpnext on accounting front of GST in india but it simply isnt happening.
The issue you just mentioned is just one of the issues. Have you tried to make a sales invoice with more than 1 item tax ? it has to be done under “0” class as mentioned in the documentation and yet even though it calculates tax just fine, it doesnt print in separate lines as SHOULD happen in a multi tax invoice.
I have been holding off adopting erpnext in my office to work on our clients just for these reasons. and before anyone says this is free, i just last night paid for renewal of 3 TALLY gold licenses because we need to keep our software updated. So, its not about money for me atleast. I can donate and am willing to be a paying customer but the software isnt just right. At least for the indian business owner/ accountants
/end rant

What do you need on GST for ERPNext to do all that you want it to do?

Do you have a complete list?

Guys: No point in wringing your hands in frustration. The fact that you choose to do it here means that there is something alluring about ERPNext that keeps bringing you back here. Send me the list, I will send you the schedule. If the schedule is acceptable, enjoy! If not, be prepared to jump in and contribute - either money to change my developers’ (or some other developer’s) schedule. Or to contribute the code yourself.

@Sachin_Mane: If I understand that right, there are two parts to the cess. One is directly dependent on the Invoice and becomes payable (or at least liable) at the time of cutting the invoice. The other component is a clock that keeps running saying, okay I invoiced 200 units, 450 units, 675 units, 800…925, 1150 and Boom you will need to pay (or be liable) for the Cess for 1000 and the clock gets rest to 150. Des that sound okay to you?




@JayRam To start with
1 The data in the reports wrong. For some reason not all invoices are picked. For B2B it picks up data for B2C where as B2C and B2LC are almost blank.
2. If the entry is in Journal entry then it does not get picked.


@JayRam both parts are payable and part of the invoice. The CESS tax amount although is calculated using formulas I posted at the top. We plan to implement it by addting one more option in the tax template and adding necessary logic to calculate the tax. I think the current template based approach is good. The rates can be overridden at the item level.

huh… b2cl is a tough cookie. technically the way it is “right now”, is that ALL non b2b entries come into b2cs. so, if you make a sales invoice of even say 10 lakh, for a non b2b customer, it will come into b2cs.
b2cl is a sheet for b2c entries that are made “outside the state”. so, if a customer from other state buys your product and does NOT give a GSTIN, that entry will come into b2cl and no where else. hope that helps

Will it solve the problem if you set up two Tax Accounts, instead of one, like IGST is one the other being IGST Tobacco Cess and similarly for CGST & SGST?

Since the item decides the tax rate and the cess, at the item level, you call in these rates.

Did I hear you say that if you are invoicing 100 units, the base tax rate and the Cess rate becomes payable (or liable) at the time of invoicing?

Even otherwise a custom report that you build should be able to give you a clear picture about how much money you need to remit to the government.



I know. I’ve had challenges with this. How about we try to classify a Customer Type: Individual as B-C and a Customer Type: Company as B-B. The value of the invoice should help us make the determination whether it is large or small. Or is there someway that can also be determined?



oh thanks for not writing off my comment as a dash and burn, anyways Have you looked at odoo or flectra GST implementation? i have been testing that and its actually quite nice. they have all tax rates already built up, they have the “logic” reasonably set up. would it be possible to import of copy the “indian gst implementation” from odoo or at least you could look it up and see how its done.
if you can get that done, along with “indian accounting” module it would be a good jump from our current situation.
the government as introduced new “simplified” returns which are expected to go live from january 2019. at the same time, GSTR-3B which is still not live on erpnext is going to stay for the next 6 months also.
oh. we should be able to “import” the GSTR-1 and GSTR-2 reports that we can export. say i have a small implementation on tally and i want to switch here. the easiest way we have right now would be to export the sales/purchase returns for the previous tax period and then import the same into erpnext. i have tried that and it did not work. importing GSTR-1,2 would mean i can start working right away because most of our work is primarily just sales/ purchases.
one feature ive been trying to get the developers to implement from tally is “tax rate history”.
it was supossed to be a small addition but there is no activity on it.

also, check this website

its free for one user and this should give you a complete picture of what a good gst implementation should be like.
the income tax department is down our throats right now till 30-september. i am not sure i can help you with a complete list but these should give you a good headstart.

i am not a developer by any means but i am trying to get a guy i know who says he knows python to start working on it. if that lazy kid can start, then i would love to help with the development part. @FinForce is a technically sound person and he actually does some custom implementations or he said the other day. maybe he could chip in as he and his team do actual development work

edit: check this odoo plugin
icfoss / texbyte_gst · GitLab

1 Like

I don’t mean to say your comments and observations don’t have a basis. Plus I don’t want to sound condescending or preachy, but this is open source. Again I don’t want to sound offensive or holier-than-thou, bu I have come to realize over years, that with open source comes great power (you don’t have to negotiate terms of your partnership agreement with anybody. The code is there for you to change/modify/better, etc., It is free, so you are automatically cut the clutter and prospects suddenly look at you and go huh, free, huh? And start considering your proposal seriously. Of course there are whole bunch of downsides to open source and free stuff that you have to overcome, so I’m not saying it’s a walk in the park).

And as with anything else in life (brace yourself, here comes another cliche) - With great power comes great responsibility.

So, if you see something that’s not quite up to the mark, you have two options: carpe-diem - seize the day and the issue and make it better, or wait for somebody else to carpe-diem.

Sure, these conversations help in building a community, but the moment we seize something is when we have fulfilled our commitment and responsibility to open source.

Sure you are busy now, but this project will definitely be around till you find some free time. By then maybe this problem will be solved. Maybe not. If it is we will be watching, judging if you will really follow up on your word to embrace ERPNext. If it is not we will still be watching and judging if you will carpe-diem.

Before people jump on me and say “practice what you preach, buddy” (there I knew I was sounding preachy!), I must say that there are times when I can seize something and times when I can’t. I don’t try to let the community get into my skin in the instances when I can’t seize something and I focus and feel happy about the times I do.

Helpfully yours


I think the consideration for B-Cs and B-CL is very simple. If a customer doesnot have a GST number then it is B-C sale. If the sale is less than Rs.250000 then it is B-Cs and if it is greater than that then it is B-CL.


you really think that. sad. as i said, i currently am locked in a 10am-12 am daily office struggle that will end on 30-september or earlier if they give an extension. yesterday i wrote the comment on my commute to work and im doing the same right now. if you think that i am not interested in this whole thing then its your opinion and i cant change that but did you even try to go through some issues i raised in my last comment and the links i mentioned ? or was it just pseudo-ad hominem ?

Hasta la vista

Well, we really appreciate your taking time out from your super busy schedule to let us know your thoughts and ideas.

Really appreciate it!



PR sent for supporting Item Quantity based tax calculations.


This is great. We (Epoch) are working to fix the GST documentation because many of my clients have the same problems you described. I don’t mean to get personal, nor offensive, but in Open Source you take what you get and when you have time, resources & bandwidth, you fix it.

So, I’m glad you are on stage two of this journey. :slight_smile:

Some of the things you described are already being implemented. For others, your inputs would be very helpful.

Can you also helping in testing our customizations?



ok. glad to know.
So, as i have already mentioned, i am a tax practitioner and as such, have to deal with the very best and worst of the software troubles there can be. That said, i would be glad to switch a couple of my small clients over to erpnext to test it out but, my staff will give me hell for switching yet again because over the past year i’ve had to build and incorporate half a dozen excel utilities which while were fun to make, the staff dont feel the same excitement on having to update each file for every client every other day just because i squashed a couple of bugs. :sweat_smile:
But anyways, i am willing to help test the stuff out, all i would require to start with is the multi item multi tax issue sorted because if i do switch a client, i will be unable to generate a correct gst compliant invoice as everyone has two or more tax rates and doing tally back and forth would definitely cause a revolt in my office.
i could start with one client who i think only deals with one item, hmm… let me think about it

Can you please describe this with some spreadsheet based illustrations?

If we build it, will you get your clients?



sure. Let me just upload a couple of screenshots to imgur.


i have uploaded a bunch of screenshots. please go through them one by one to see where the error in presentation and printing comes in. Again, the calculation is just fine. The issue is this cannot be called a valid gst invoice as it does not show the correct tax breakup rate wise. As i said, i am more than happy to be the test dummy for new features if it means helping the community but

posts 1 & 6 are the final invoice print with incorrect tax breakup.
Post 7 shows the correct breakup rate wise. All i am asking is breakup in this fashion. I can share a more presentable look of the tax breakup later.
post 3 shows how i have set “0” in tax template on the suggestions from the documentation. Note it does not say 9% cgst/sgst anywhere.
post 2, 5 shows the in situ tax calculation. this is almost fine but it would be better if the software spat out separate cgst 2.5%, cgst 6%, sgst 2.5%, sgst 6% so that we could cross check with the physical invoice for any errors
6 shows the item master for 5% gst rate

yeah. I mean this has been one of the biggest hurdles for implementing erpnext in production. i can work around not having GSTR-3B report which is only the second of the two returns we have to file today but as i said, we have built in house excel tools for that so that thing isnt bothering me much. Here is the deal. You start working on solving this one small thing and i will work on migrating 1 -3 clients over to erpnext. i could get the development VM if you ask for it. The office works mainly over LAN and i have a bunch of stuff running exclusively as VM’s because they become easier to backup and manage so thats what i am thinking. tell me if i need to change anything and i will start work on it right away. The import sales/purchase invoice function is not something i could get working so migration would mean starting over. This will take a bit of time but i am fully ready to invest time and energy into it