I did several very large projects for Wal-Mart in the mid-1980's. One was a communications device that I designed to connect bar-code readers to Series One computers used in each of the stores. It allowed them to choose from more vendors of bar-code readers because my device supported more protocols. I made a proof-of-concept prototype, and then when the project won approval, I made thousands of these devices to put them in each of the stores. I also did similar devices for other projects, some telephony products and some general-purpose devices like a NiCad charger for the hand-held bar-code readers that reduced memory effect. That one little product saved them 11 million dollars per year in batteries.I received payments for each of my invoices in about 90 days, which I understand from other vendors was better treatment than most companies got. Some waited 120 days and more for payment. Wal-Mart wanted extremely competitive pricing, and they used vendors from around the world so they could find the lowest price possible. But I didn't blame them for any of these things - It was their right and I saw it as reasonably smart.
However, I got tired of working so hard for pennies. I did earn a profit on my designs, and the quantities involved made each project fairly lucrative. But in the end, I didn't feel it was worth it. So I stopped dealing with Wal-Mart after a few projects. Seems to me everyone has the same choice. If you don't want to deal with Wal-Mart, don't.