I think a lot of the pain points around this cantrip mentioned is this thread are based entirely around subjective interpretations of what is necessary to make it work. I suggest an opposite approach, find out in your group what you think the effective power of a cantrip should be, and use it thus. If your group wants jedi level power, it CAN be used that way, (by the time the guard realizes what happens, the wizard has disappeared in the crowd). This is even better, because as the wizard moves around the town there is always the chance he will run into the same guard.
I play an Arcane trickster and have used this plenty of times to great effect. In the market, I use it to barter, I don't however cast it as I enter a shop, I cast it at the moment before i make the roll, (no one spends one minute going and getting something, I ask the me to get it to me, I ask them the cost, I cast the spell, Make the check, pay and leave and leave, fifty seconds later the store owner has no idea where I am. Sometimes the DM might choose to have a maniac shop owner come after me, but most times the shop owner won;t leave his store front to chase me down. The hostile comes in, if I see him again or try to purchase from him again. I also use it to pick pocket, memorably when I was once almost caught. Social checks have limits, one check wont get you a free item of good value, but maybe at a decent discount. Is a store owner going to kill call guards because he is shorted a couple gold? Or is he just going to become highly inhospitable to what he perceives as a con man.
It's situationally useful, as it should be.