Show HN: A Tax Calculator for India

(github.com)

63 points | by kartickv 1862 days ago

12 comments

  • superboum 1862 days ago
    There is a software/framework/library named OpenFisca[1] that helps you turn law (for taxes) in software. They modeled some countries like Senegal, Tunisia or France. I know that they also use it to build easy to use web interfaces or to create visualization and better understand how a tax applies to a population. You can take a look at their documentation[2] too.

    [1] https://openfisca.org/en/ [2] https://openfisca.org/doc/index.html

  • kartickv 1862 days ago
    I built this command-line tax calculator as a side project.

    This script determines:

    - When you're made an offer for a given CTC, how much will you take home every month?

    - If you want a certain amount of take-home pay every month, what CTC should you ask for? This is for Indians.

    This script handles:

    - Differing tax treatments for employees and consultants. The latter are eligible for presumptive taxation under section 44AD.

    - Health and education cess

    - Surcharge

    - GST

    - PF and pension

    - Section 80C investments

    - Professional tax

    • amirathi 1860 days ago
      Nice work! Do consider slapping a simple UI and hosting it somewhere online. You'll be surprised how many organic visits it'll get a year or two from now.

      Bonus points if the website copy overlaps well with search keywords :)

    • godzilla82 1862 days ago
      I am not sure if you have handled this or even if it is possible to handle the fact that the "basic" component of the salary is not a fixed percentage of the CTC. So two people with same CTC can have different "basic". This basic component also determines the max exemptions you can claim for e.g. under HRA. Also, employers themselves try to structure the basic and the HRA components to reduce the tax burden of their employees by modifying the basic. Exemptions under HRA have to be declared by the employer.
      • kartickv 1862 days ago
        Good point. The comments at the top of the file say what's handled and what's not, and HRA is not.

        About basic, yes, that's a pain.

        • godzilla82 1861 days ago
          Sorry, dont want to sound too negative, but the tax calculator is so simple it doesn't handle even the most basic stuff. I am guessing you have never paid tax at the income tax website. I would suggest you to go the income tax website and see the inputs that the calculator takes.
          • kartickv 1861 days ago
            I did look at that and many other tax calculators, and some are so complex that people don't know what to put in. It's intimidating.

            I built this for my needs. If you want it to handle HRA, or LTA, or income 1 crore and above, etc, that's an entirely reasonable point of view, and I'd welcome a pull request if you have the time.

            • godzilla82 1860 days ago
              But am I correct in my assumption that you have never paid taxes yet? :) Any one who has ever been on a payroll will know that the basic component is dynamic. Also I don't know anyone who does not claim any exemptions!
              • kartickv 1859 days ago
                Ha ha, no I've paid a variety of taxes: income, professional, capital gains... I've been an employee and now a startup founder. I also help others with taxes.

                The script does have a field for EMPLOYEE_TAX_DEDUCTION. It defaults to 1.6 lac, assuming 1.5 lac for 80C and 10K for the rest (like medical insurance under 80D or whatever). But you can change it to whatever number you want to include other exemptions like HRA and LTA.

                I think some things like PF and HRA are calculated based on basic income, but I was able to approximate the calculation without bringing basic income into account. Salary for the purpose of PF is limited to 15K anyway.

                Again, enhancements welcome.

    • jpatokal 1862 days ago
      For the non-Indians in the audience, what is "CTC"?
      • victor106 1862 days ago
        Cost To Company

        When I was in India a number of years ago, this term got thrown around a lot. I had no idea what it meant.

        It basically means what is the total cost to a company for hiring you. Not just the salary they pay you but other costs like insurance, stock options, other benefits etc.,

      • webbrahmin 1862 days ago
        Cost to Company ie what an employee costs a company. It is also sometimes used in place of salary although incorrectly.
      • kartickv 1862 days ago
        Sorry for that. As the other comments point out, it's used inconsistently. The way I've used it here is to include the employer's contribution to pension and provident fund (retirement savings), not just the employee contribution.
    • kranner 1862 days ago
      Section 44ADA, not 44AD.

      44AD is for businesses and has a presumptive taxable income of 8% of gross income. 44ADA is for (eligible) individuals and has a presumptive taxable income of 50% of gross income.

      • kartickv 1862 days ago
        You can change the 50% to the 8% by editing that parameter in the code.

        According to my CA, individuals might be eligible for both depending on what they do. It's not just for businesses. If you're providing a service, like a freelance programmer, it's 50%. But if you're building your own product, it's 8%. Or some such distinction.

        In any case, the script supports both; just change the parameter.

  • known 1862 days ago
  • ddeokbokki 1862 days ago
    I started freelancing and did something similar for the UK, wanna start a collection of tax calculators per country?
  • thrifter 1862 days ago
    In a similar vein, I developed a search engine for sales taxes in Canada (works for all provinces and territories). It was a much, much bigger undertaking than I initially thought, but here it is: http://isittaxed.ca/

    I am considering open sourcing this project so that there could be a search engine like this for other countries.

    • pandemic_region 1862 days ago
      useful only in countries where the full price is not displayed upfront ?
      • thrifter 1862 days ago
        Correct. In Canada, you only see the retail price. The Canadian consumer still needs to know if the item is taxable and what tax(es) that might be. It's an issue for people on a tight budget.

        I edited my first comment from "every" to "other". Thank you.

  • maelito 1862 days ago
    The french government provides a similar tool, from what I've understood of the indian model. It is of course open source.

    https://mycompanyinfrance.fr/social-security/salaried

  • LearnProg17 1862 days ago
    This is awesome! I have similar thing in google docs file. Also with addition for home loan repayment schedule.

    One suggestion: could you separate the code and tax slab configuration, different files.

    • kartickv 1862 days ago
      Thanks for your feedback and suggestions. Since this is my side project, I can't spend too much time on it. Can you send me a pull request?

      Actually, separating out the things should be modified from things that shouldn't would be a significant improvement. Like:

      # Section 1: Configuration: Change this as appropriate:

      FOO =

      BAR =

      # Section 2: Logic: Don't change this:

      ...

  • lewisjoe 1862 days ago
    Thanks. I'll try to make a spreadsheet out of this when I find time. I've got quite a few non programmers who'd benefit from something like this.
  • modi15 1862 days ago
    You should host it somewhere.
  • pauljeba 1861 days ago
    This is nice, I was actually looking for something like this.
  • abhishekgahlot 1862 days ago
    It would have been better if written in JS and hosted with UI elements on github pages to be used directly without running after cloning.