Tax avoidance is working out a scheme which reduces the tax you pay. Some schemes are acceptable and others aren’t. The IRD uses a test: “Was the scheme something which would have been contemplated by Parliament when it made the law?”
The department issues statements from time to time as a guide and the results of court cases also help.
A couple of examples:
Some people, when moving home, want to keep their old home as a rental. If they borrow money to buy the new house, the interest on the borrowed money is not tax deductible. You can get around this by selling the old home to an LTC (Look-through company), borrowing as much as the value of the house will stand and then using the money left over, after you have paid off your existing mortgage, to buy your new home.
All the interest on the mortgage over your old home becomes tax deductible. If the company makes a loss, you can claim this in your tax return.
What you can’t do is get an LTC to buy the home you're going to live in, pay the company a fair rent and claim the loss. If you try it and get found out, you’ll not only have to pay back the tax but also you’ll face harsh penalties.
Both schemes, however, can be described as “avoidance” and both are legal. But the second scheme is an example of avoidance which can be overturned by the Commissioner. They are avoidance because nothing is being hidden from the IRD.
Tax evasion is hiding income or creating artificial expenditure or similar acts, which are dishonest and therefore illegal. Get caught and you could go to jail.
What happens if we don’t know if a scheme is avoidance and therefore can’t advise you?
We can help you weigh up the risks and then you can choose whether you're willing to take them and face the consequences if you're caught. Normally, as long as what you’re doing is not evasion, the IRD has between four and five years to challenge you, depending on when you put in your tax return.
As each year goes over this time limit, it becomes what is termed “statute barred”. The IRD has to accept your tax return as being correct.