Unfortunately, the only options to Geotarget your website in search engines are by country/region.
However, you can accomplish the same thing using MaxMind, which offers a GeoIP City database that breaks down visitors by:
- Postal/Zip Code
- City Name
- Metro Code
- Latitude & Longitude
When visitors arrive at your website, their IP address can be compared against this database using the above criteria, for example
zip code, and redirected to the appropriate URL of your e-commerce site.
You can integrate this with your website using a number of different server-side language API's:
Many of these have easy to use open source modules. For example, I use this PHP extension: Geo IP Location, as well as this Perl module: GEO-IP
There's a free version of the database, GeoLite, which is updated once a month, and a more accurate paid version, GeoIP City. You can try an an online demo here.
It's interesting to note that the Sample Code displays your current location live on their site, so you can see what values are returned for your browser right now. For States, look under
subdivisions -> iso_code