I've read that a shop can refuse for any reason but I have a suspicion this may be discrimination in my case.
I'm a 23yr old black guy and I live in Ireland. I'm frequently told by family, friends, etc... that I don't even look over 18yrs old and look to be in my teens.
This has led me to getting denied alcohol in a store twice even with a valid identification. The first time this happened was when I was 19yrs old and the shop assistant asked me for another form of I.D. I didn't have it, so she refused the sale.
Ever since then I started carrying around my Irish passport as an I.D. and so far, it has worked. But last week I wanted to buy nicotine gum, which is age-restricted. I showed the sales assistant my age card and she didn't believe me, so I showed her my passport and she said that she still couldn't accept it.
Surely that has to be discrimination, right? I was even told by a manager in another Tesco that I would be fine with two forms of valid I.D.