I think it’s probably to do with exchange rates.
Like if you go to the post office and buy euros at a rate of 1.3 euros per 1 pound…. If you were to then sell them back to the post office you would only be offered a rate of 1.2 euros per 1 pound for example.
Will most likely be the same on these sites.