The fares data has fields about this at a ticket level (
not the restriction level). The fields are effectively complete garbage unfortunately, they're blatantly wrong more often than they're right.
In this case, OPR, the ticket data says "Outbound: no; Inbound: yes", which is where BRFares is getting it from. However you can see that's nonsense, as the human readable text (which is what actually applies, and frankly what is actually maintained to some degree) says it's valid unless the restriction code text bans it:
https://www.nationalrail.co.uk/ticket-types/tickets/opr/