This has been requested for a long time. Often a user ends up in this situation when they create their account without thinking much about, it but then realizes later that others will see this name. Another situation is when a user one day creates a Store and wants to brand it differently than their associated username. Due to technical challenges, we had worked around this issue for sellers by allowing them to mask their username with the custom_id field. Now we are dropping this hack and doing it for real.
But we realize there is a possible drawback to letting usernames change. It's the primary means of user identification on our site. Could this allow someone to run from a bad reputation?
We don't think so.
First, what usually happens is that many non-selling users, well intentioned or not, just create another account. There is nothing we can do to stop this, and so anything that reduces this behavior is good. (Sellers have their accounts officially validated, so that's a different story.)
Second, our system knows all the old names and what accounts they associate to. Any URL link that takes a username will also accept the old name. This means anyone's new username can be found just by plugging in the old user name.
Third, we are limiting the number of changes. We're not saying how many exactly, but the number is small.
As a last note, sellers who have previously used custom_id will likely want to change their username to match that value. Username will soon replace custom_id as the primary value used in the store URL and throughout the site moving forward.