Welcome to the newest twist in revenue management -- more and more airlines are doing this now, not just BA. Basically they want more money for that seat than OWE ticket provides and that seat will never be available to you (it might be available for a BA sold OWE though). The software to do this kind of differentiation is now available, and seat availability is no longer just by booking code (as it was until about a year ago). For some routes and days of week (or times of day) it is almost impossible to get OWE seats. Your solution is to find a different flight number (time of day/day of week/routing). Five years ago (during the SARS slump) it was possible to get OWE A seat on any flight at any time, but now that loads are up that is simply not the case, and as fuel prices go up the airlines have great incentive to discriminate against certain tickets. Within OW BA seems to be the only one doing this, but I know of a dozen airlines that are as bad or worse than BA when it comes to this.