Additionally you can think abut applying for an American Express Card. *Most* of the cards collect Amex Membership Rewards points which can be transferred to Avios in increments from 1,000 points onward.
Or you use an Americen Express co-branded credit card with BA, e.g. within the market of UK:
https://www.americanexpress.com/uk/c...airline,credit
or
https://www.americanexpress.com/uk/c...Plus-LearnMore
These cards
deliver additional MR reward points respectively Avios for nearly every purchase. @:-)
Hope this helps.
P.S. (Amended):
With these options American Express delivers two completely different loyalty programmes and opportunities. One is a kind of direct transfer to Avios with a co-branded xcredit card. The other is the collection of Mr reward points with no expiration dates and transfer opportunities to many partners like airlines, hotels and many more.