If the US is no longer minting pennies, why are companies not required to round to the nearest $0.05?

I understand that pennies are still in circulation, but the sheer amount of times I’ve been to a restaurant, store, or fast food place and paid in cash, only to be told “Sorry, we no longer carry pennies” and they try to hand me back less change than I’m owed, is ridiculous. My girlfriend wanted Sonic last week and while we were waiting to order, we watched an elderly woman pay exact change in the stall next to us. Fast forward about ten minutes when I was paying and the guy does the same “we don’t carry pennies” and after I informed him they did have them because I watched someone else pay with pennies, he replied “we’re not allowed to hand them back out, sorry”.

For the last 13 years, I’ve made it a point to only pay in cash and the amount of times within the last month or so that I’ve had people try to rip me off is insane. Sure, it’s only a couple of cents here and there, but I’m not a multi-billion dollar corporation and that shit adds up after a while – not only against the customer but also for the business. Also, I have no doubt in my mind that if a bill comes around that forces companies to round to the nearest $0.05, they will always round up. It hasn’t even happened and I’ve already come to terms with it, but if big businesses aren’t going to be carrying exact change anymore, then they shouldn’t be allowed to charge exact change. So how long do we think it’ll be until something like this gets addressed?

I can’t be the only one more than mildly irritated that companies across the US are doing this constantly to people who pay in cash; hoping they won’t mind not receiving their three cents they are owed.