You also get BA miles when you exchange at a Travelex desk...
I've never pre-ordered through them.
As for the buy-back option, it's only handy if you expect to have cash left at the end of the trip, and even then only if what you have left will make up for the cost of the buy-back option.