I find it very difficult sometimes. Most of the stores in my neighborhood are chain stores - grocery, major discount retailers, etc. - but every now and then I have an opportunity to support locally owned small retailers. Today was one of those opportunities. I needed a replacement heating element for my bathroom heater. The two major hardware stores nearby only sell complete units so I would need to go to a small repair firm to get the part.
I called the first one on my list. They were able to locate the part number after I gave them the model number of the heater unit. Then they told me I would need to mail them a check to an address across town and then after they received and cashed the check they would order the part. They had no idea how long it would take for me to get it. Since in this scenario they had my money and I did not have my heater part, I called the next shop on my list.
This shop kept telling me that I had a bad model number. They were pretty insistent that it was wrong. Actually it isn't wrong, it's just an old discontinued unit. She told me once I could provide the "right" model number or the part number they would order it. I never got as far as the payment practices because I didn't have the "right" number.
So finally, I resorted to the internet. After I plugged in the model number and the word "heating element" up popped a nice internet store website that 1) showed all the different model numbers that this heating element would fit, 2) had the same price (only a few pennies less) than the price quoted to me by shop number 1, and 3) would take my credit card number and ship it immediately. Since it is getting colder here and this is the only source of heat for our bathroom, I placed my order. The entire transaction took about 2 minutes.
So much for our local businesses. I didn't use internet shopping on a price decision, I used it on a service decision. The human service I was receiving was just unsatisfactory.