I would like to apply a tax rule for any customer who is shipping to New Jersey. I would ideally like to update the cost and tax amount via an AJAX call from the onepage checkout. I have a customised OnepageController to manage this currently, so the shipping amount is updated via AJAX.

I have entered a tax zone & rate for every US state, set to 0% except for New Jersey. I have then created the associated Tax Rule, one for every state except NJ, then one for NJ only. Now it will apply NJ tax to every customer no matter what, even if I change the shipping state to one I know does not have an associated tax rule.

I have a customised checkout that starts with the shipping address (after guest checkout / login). I don't understand why Magento is not applying the tax rules I have defined. It seems simple enough in principle.

I've looked at using TaxJar, and it has added a bunch of NJ tax rules. Unfortunately it also always applies the NJ tax no matter where I put the shipping address.

I've checked a lot of tutorials and posts and none of them helped. I've gone over all the admin settings many times and they are fine and how they should be (I think).

Any help to get this working would be much appreciated.

1 Answer 1


If you only have sales tax nexus in New Jersey, then you only need to provide tax rates for NJ with a single tax rule including those NJ rates. The other states aren't necessary. Based on what you described I would check the following:

  • Under System > Configuration > Tax, ensure Tax Calculation Based On is set to Shipping Address. If set to origin, you'll always collect tax based on your origin address under System > Configuration > Shipping Settings.

  • Under System > Configuration > Tax, ensure Default State is set to * and Default Post Code is set to *. This way your cart won't automatically apply sales tax at checkout before a shipping address is entered.

  • Review your tax rates under Sales > Tax > Manage Tax Zones & Rates to ensure that you don't have a wildcard rate that may affect all states.

I believe the first option I mentioned might be causing your store to always apply NJ sales tax.

  • Hi, thanks for your help. I've checked everything you mentioned and it is all as you say it should be. With our current set up, the default shipping address is set as California, with a CA zip, so I would expect the default to have 0 tax. However, it just always applies NJ tax no matter what.
    – Alex
    Jan 25, 2017 at 18:40
  • Does this only appear to happen with your customized checkout process? Have you tested with all third-party cart / checkout extensions disabled? If it's happening with Magento's default checkout, you may want to post a link to an export of your current tax rates. If it's specific to your code, more detail is needed around that. Thank you! Jan 25, 2017 at 18:54
  • We're not using third-party for the checkout, it's a custom re-write of the OnepageCheckout controller / templates. Like I say, the default shipping address for customers is set to CA, but for some reason it applies NJ tax to these orders. It makes no sense whatsoever to me now. Even with an explicit CA tax amount set to 0%, it still applies NJ tax rule to every customer. It seems to be applying all tax rules to all customers no matter what.
    – Alex
    Jan 26, 2017 at 12:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.