The stores get the BASE models if you will. iMacs usually come in four base models, two lower end, two higher end.
So two have 21.5 inch screens, and two have 27" inscreens.
The lower ends have i3's and higher ends have i3 - i5's.
The reason they do this is so they can push out iMacs in large quantiities. They could have for example a assembly line pushing out all 21.5 iMacs with i3 Processor with 3.06 and 4 gigs of ram, they don't have to stop and put in user requested parts. Its simple and fast, mass production of one unit.
These base models are pretty much the only models that get sent to retail stores, you CAN get a i7 for example in a iMac, but you have to configure it and it is treated differently at the factory, being fitted with something not sold in the thousands, comparatively.
Its like how you go to any pc manufacture website, and theres a rush model that can be sent out in 24 hours, they mass produce that model, thats why its usually cheaper and faster to ship. No person has to handle and change things.