There are libraries available to do that e.g. Route-Nova Zip-code is a Java library to calculate the distance between two zip codes.
Have you made any decisions on the technology you will use for your ecommerce site? Your geolocation/zip code component will need to work with whatever you choose for that.
Just another thought: if your angle is a very personal service, would it make sense to have a static ecommerce site and take orders by phone initially? That would help test out your business idea and maintain the personal touch.
Hope that helps.