First, let's talk about the concepts behind each locale. In Canada, if I sell something to someone in the same province as me (this is defined as being a province I have a physical presence in, be it a sales office or a warehouse), I must charge GST and PST. If I sell something to someone in a province I do not have a presence in, I only charge GST. This gets a little more complicated due to HST (Harmonized Sales Tax, a tax that combines PST and GST which the federal governement collects) If only one of the two parties uses HST, in theory, the lower GST rate should be used. In practice, full HST is usually charged. If I sell outside of Canada, I charge no taxes.
Following this logic, I will collect taxes (when I sell things) and I will pay taxes (when I buy things). In actuality, companies are not required to pay taxes - only end users (you and me) do. However, the government doesn't want to have to deal with the hassle of figuring out who to charge taxes to or not, so they delegate that obligation to companies. What this means is that each company, when they file taxes, says "Hey, I'm not supposed to pay taxes, but I did, for X$. So you owe me X$. However, I collected on your behalf Y$. So, why don't we just substract what I owe you from what you owe me and call it even?". This is called "Netting".
So here's how we set this up in Netsuite:
2. Setup > Accounting > Tax Control Accounts: Recreate all of the "PST Expense" accounts. When Nexuses are created, NS created all the Tax Accounts that go along with them. Unfortunately, Netsuite creates PST on Purchase accounts as Expenses. They should be, in fact, Other Assets. So, you have to go and manually recreate the accounts via the Setup > Accounting > Tax Control Accounts (note: do NOT create the accounts directly in your Chart of Accounts. They MUST be created via Tax Control Accounts). When you recreate them, NS will at this point correctly set them as Other Assets.
3. Setup > Accounting > Tax Codes: Adjust all codes to match reality. Tax Codes define the tax percentage to use for the PST, GST or HST to use in each province. Netsuite creates these automatically when the Nexuses are created, but they are all wrong (out of date with Tax law changes). You need to edit them all to reflect current reality.
You need: a code for each possible HST rate (currently 12, 13 and 15), one GST 5% and GST 0%, and then one PST code for each province, even if they use HST (PST would be 0) or if there simply is no PST (Alberta).
4. Setup > Accounting > Tax Groups: Bundle up the Tax Codes into Tax Groups. Using the Tax Codes you created, assemble the Tax Group for every province. You'll need 1 per province you don't have a presence in, charging GST or HST only. For provinces you have a presence in, you'll need a group for the full amount of the PST and GST (or HST) and a GST Only one. Then, you'll need a global code for No Taxes.
Make sure to set the "Province" field adequately, as this is how Netsuite will determine which code to use for which Province.
Next up, the United States.
There are many components to US taxes: State, County, City and then occasionally additional exceptions (but no Federal!)
Rules for what taxes a company charges vary. In general, however, you must charge all applicable taxes for any State you have a presence in. So, if I have a warehouse in New York and California, if you sell to customers in those states, you must charge the State, County, City taxes etc. for the Shipping Address of that customer. This is substantially simpler if you only sell out of physical outlets (retail stores), as then you only ever charge the tax code for the address of your store. Only if you ship must you charge correct County, City, etc. Basically, you must charge taxes for the location where the goods are taken possession of.
There are potentially hundreds, if not thousands, of tax codes to keep track of.
However, a US company charges NO tax for anyone outside their presences. Also, a US company pays taxes on Purchases, but does not track this amount as it is not refundable like it is for Canada. So, the amount is bundled in the purchase price, and what is supplier cost and what is sales tax is not visible.
Now, let's set this up in Netsuite:
1. Setup > Accounting > Nexuses: Create Nexuses for all States you charge tax in.
2. Setup > Accounting > Use State Tax Sales Table: Import the Tax Codes and Groups for every State you have a Nexus for.This handy functionality will import every possible Tax Code and Group for a given state. There are hundreds of these per state, so this is a huge time saver. The Tax Groups are all configured to say which ZIP code they belong to.
That's it! The State Tax tables do all the work for us!
Lastly, let's take a look at VAT setup using Netsuite's International Tax Bundle.
European taxes usually have less variation in the number of possible tax codes in use, but the importance and complexity of reporting is usually greater.
Netsuite handles international taxes via the installation and use of a free bundle, the International Tax Bundle.
Note that the bundle should be installed before creating international Subsidiries and Nexuses (so think ahead!). This isn't mandatory though - it's just that if you do it before creating your Nexuses, you will have less configuration work to do.
To install the bundle:
1. Go to Setup > Company > Enable Features: On the SuiteFlex tab, make sure the Custom Records box is checked.
2. Go to Setup > Customization > Install Bundle.
3. Enter the following criteria:
Location = Repository
Availability = Public
Keywords = International Tax Reports
4. Click Search.
5. Click the link for International Tax Reports (Bundle ID 14864).
6. Click Install.
The Bundle has an entire section in the Netsuite Help system, under
Accounting > Taxation > VAT and GST Reporting > International Tax Reports SuiteApp.
There are sub-sections for all supported countries under Accounting > Taxation > VAT and GST Reporting > VAT/GST Reports
Read the documentation for the country of the subsidiary(ies) you are installing the bundle for, as each country requires special extra steps to configure. The Help files will explain in detail the configuration required for each Tax Code.
Aside for helping you create your Tax Code, the International Tax Bundle also comes with some very important reports to help you control and file your taxes correctly. Firstly, there is the report called "Tax Reports (International)". This is a vague name, but this is because this "report" is actually several reports. On this interactive screen, you are asked to select the Country you want to report on; the report then adjusts itself to display the report the specified country's government requires companies to provide when filing taxes.
Other useful reports included in the bundle include:
- Intrastat Report: This is used for reporting movement of goods within the EU, which is another mandatory governement report that must be produced by European companies selling physical goods
- EU Sales List (ESL) Report: Shows total deliveries of goods to EU customers, by customer.
- Purchase and Sales by Tax Code Summary/Detail: Simple report showing purchase or sales transactions by Tax Code, used to help you control your taxes and make sure you did not make any mistakes
Much like in Canada, most European countries use a system where you deduct the taxes you paid from the taxes you collected, and hand over the difference to the government (Netting).
VAT uses 3 accounts (system-created) to control taxes:
- VAT on Sales (Money you charged to customers - this is a Liability)
- VAT on Purchases (Money you paid to suppliers - this is an Asset)
- VAT Liability (Used to store the different between the two above)
First off, make sure to always enter the appropriate tax codes whenever you create sales and purchase transaction records. When you are ready to process your taxes, Netsuite recommends you Close the tax period before you do your tax reporting and tax payments, to make sure values don't change when you begin the process. (Go to Setup > Accounting > Taxes > Manage Tax Periods.)
Then, run and review the VAT on Sales and VAT on Purchases summary and detailed reports. If necessary for adjustments, reopen the tax period and run the reports again.
Once you're sure everything looks right, if VAT on Sales is greater than VAT on Purchases (usually is), prepare and post an appropriate Journal Entry that:
- Debits the VAT on Sales account for the amount shown on the VAT on Sales report
- Credits the VAT on Purchases account for the amount shown on the VAT on Purchases report
- Credits the VAT Liability account for the net amount
When it is time to pay your tax liability to the government, you can write a check to the tax agency. You can write a tax liability check for any non-US edition or nexus at Transactions > Bank > Pay Tax Liability
This will Credit a Bank account of your choice and Debit VAT Liability.
Voilà! Hope this little crash course in Taxes in Netsuite was helpful. Do keep in mind many exceptional scenarios can come up, and some businesses may have special tax obligations not covered by the above setup. Always make sure to consult with a tax expert for your jurisdiction before setting up Netsuite.