By being efficient and making proper use of modern logistical technology?
I actually think that there would be a much smaller environmental impact from one van delivering 50 parcels than 50 people driving into city centres to go shopping! And if the vans are clogging up the streets then think what the individual cars would be doing. You can bet that most of the people not buying online are not going to the shops on foot, by bike or even by bus or train.
I saw a supermarket delivery van doing its rounds when I was out on my bike last night. When the driver opened the back I could see that it contained at least 100 plastic crates of shopping. That's an awful lot of car journeys saved.
The last few deliveries from different companies gave me detailed tracking and each time I got a text message on the morning of the delivery giving an hour's window for the delivery. Each was made 20-30 minutes into that hour.
I think the best solution is what a lot of companies are doing now which is to offer to deliver parcels to local shops or post offices.
I agree about the drop off at shops and depots, but we are too lazy and want same day drop off ,min our back garden between the hours of 2.22 and 2.28 cos that when neighbours has finished and before the corrie omnibus starts... Besides, this, its not one truck delivering 50 items.
Even with the best organisational systems in the world, we then want it all sent back...the same day, at no extra cost, then a few other sizes, or colours sent out , for most of them to be sent back again. Makes one person driving to the shopping centre and trying it first look suddenly quite efficient.
I'm making a general point on the demands of society and our inherent laziness though, not really arguing with your counter.