The sad part is that zip code proximity is not a hard task in and of itself, it's keeping current with changes in towns and zip code mappings that make it difficult.
When I compared the 1999 with the 2000 data, IIRC, I found pretty much no new zipcodes, but many new town names.
Recently I've been doing quite a bit of cross country driving and it has taken me into towns that don't exist according to the 2000 data. The zip codes exist. The zip codes for the most part are in the same place. It's the name of the town that doesn't exist. New developments like Cuesta Verde....
And to get ecommercy, which towns are likely to hold the yuppies using your service? The new towns. For the most part a zip-code lookup will work, but there's a reasonable chance a townname lookup will fail.
If you visit the USPS, you will find that the towns do exist as well, but it's in their please don't crawl me database.
From what I recall of the zipdy package it appears there are about 40,000 zip codes, not really all that many. And not that many town names either. It's a crime that the information is available online, that's it a small dataset but that they don't allow spidering it. I once estimated less than a floppy compressed for the full dataset and just a few Kbytes to publish just diffs.
To put on a political hat, this is something a reinventing gov't administration should have released to the people (and I guess they did) and something a small business is number one kind of administration should be releasing to the people.
Very seriously, if anyone knows of a pro-bono lawyer that might be interested in this sort of thing, I would love to speak with him or her.