This is a really interesting question, and certainly one we’ve discussed as a team. (I even dug into our archives and found a proposal comment from 2016 where Jonas ponders something similar…!). I definitely get where you’re coming from!
But I think that merchants are fundamentally different to, say, categories. Categories don’t have a “true” value; the correct category for a transaction is whatever you think it should be. And so letting you change categories, and even create your own custom categories, makes a ton of sense.
But for merchants, there is a “true” value: I think we do want this data to be accurate to what really went on in the world, in some way. If we get it wrong, customers will notice! If you don’t recognise a transaction, you’ll probably dispute it—or even replace your card for worry of fraud. A bad outcome would be we let you customise your merchant data, and six months later you made a mistake or you forgot you change it, and then dispute the transaction
I do think there are some tricky and wholly subjective questions, like Sainsbury’s vs Sainsbury’s Petrol. I think a nice heuristic for making those decisions is whether you might want different categories for them: in this case the defaults should be Groceries and Petrol, respectively. And so we should try and be fine-grained enough to allow you to set those different categories.
And finally, there are some real advantages of everyone sharing the same merchant groupings. It enables features that wouldn’t otherwise be possible, like Year in Monzo!