Even if legal tender, any retail establishment has the right to refuse to take money.
You'll find many outlets won't accept Scottish notes, or £50 notes. That is their right.
Wouldn't happen to know where that's written in law would ya? I always thought that it was the consumers responsibility to offer payment for goods rather than ensure payment was taken. Eg: I offered you legal tender, a £50 note, if you don't want to accept it I will still be leaving the shop with the goods. Your choice. no? 
From the Bank of England website F.A.Q.
Does legal tender status matter for everyday transactions?
No. Whether you pay with banknotes, coins, debit cards or anything else as payment is a decision between you and the other person involved in the transaction.
In addition, shops are not obliged to accept legal tender. If you hand over a £50 note to pay for a banana in your local grocery store, the staff are within their rights to choose not to accept it. Likewise for all other banknotes – it’s a matter of discretion.