Have said all along: If they are doing nothing "wrong" in the eyes of the law, HMRC, etc. then it means that the taxation system is broken, not the companies.
You can't rely on companies to do the "moral thing". That's not in their remit. They have a legally prescribed duty to their shareholders only. If their shareholders would rather have more more from shares than more customers from doing the "moral right", that's what happens. Hate it as much as you like, that's what things say. Go set up a company and you'll see that.
As such, if we can't rely on companies to pay tax out of morality, you have to have laws that make them pay tax out of legal compliance. If the laws don't say that, or aren't enforced, then that's the bigger problem. We can't even MAKE them pay this tax, in a court of law.
So the companies involved are doing what's in their shareholder's best interests (there's a kind-of argument about the moral high ground being better for business, but that doesn't necessarily hold and isn't so obvious or clear-cut as to bind their hands), they aren't breaking the law, and they're still paying no taxes on a multi-million pound income.
That's the problem - that it's possible, without breaking the law, to do so. That stinks of a taxation system so full of holes that you're losing tax hand over fist and there's nothing you can do about it except change the taxation system. And that takes years precisely because a lot of these kinds of companies will flee or become unprofitable in those circumstances and that greatly affects political support (which, let's be honest, is purchased these days - one way or another - either through loss of business, loss of jobs, or just sheer back-handers).
Starbacks et al found a loophole which they are able to exploit without comeback from the legal authorities. That's what needs to be fixed. Punishing Starbacks etc. specifically doesn't solve the problem, doesn't stop the untold number of other companies that aren't as famous doing the exact same thing, doesn't get your tax back. Changing the taxation law... does.
It's like never watching TV live and then people saying that you're not paying your fair share of the TV Licence. You aren't obliged to. You never have been able to. You COULD be made to, but that would involve a change in the law. You are doing nothing "wrong" in the eyes of the law, even if you are freeloading at other's expense. But you don't get dragged through the world's press for doing that.
I think Starbucks et al probably shouldn't have this kind of arrangement. I don't think they should be able to have millions of pounds of INCOME (profit or not) from UK customers and not pay at least a single-digit percentage of tax on it every year to the UK taxation system. But that's not what the law says in this case. So although they can be dragged over the coals of the media and get a bad image, nobody can force them to pay that "missing" tax because it's simply not due.
And that, my friends, is because of over-paid politicians of every party crafting tax laws that can be taken advantage of (deliberately or accidentally). Who should be paying the missing billions? Those guys.