I don't mind staff asking, to be helpful, like RJ does, but if you give a reasonable reason then staff must sell the ticket. The problem is that if a customer feels it is none of their business, and refuses saying exactly that, it is going to get the ticket clerk's back up. I'd say that scenario will probably result in the ticket not being sold, a complaint being made, and end in a bad result for BOTH parties. It really is in the interests of staff to try to be helpful, but customers shouldn't be interrogated. A simple "Do you already have a ticket to X, I may be able to find a cheaper option/excess for you?" by the staff, trying to be helpful, and then a simple reason by the customer, who should NOT be made to feel they are being interrogated, is all that is needed.
It works both ways.
If the member of staff was wording it in a way that is trying to be helpful, and the customer was rude back, I'd have sympathy for the staff.
What we don't know is whether the member of staff was trying to be helpful (as RJ does) or if they were accusatory and got the customer's back up. We also don't know how the customer responded.
I think that a good test is the Oyster example quoted by RJ. If a member of staff refuses on that basis, then they really are totally and utterly wrong and have no excuses. It's not always clear-cut, but sometimes it is.