Well, this may be feasible with Multi-Warehouse ( see the \’Single Mode> Assigned Areas\’ configuration).
The \’Assigned Areas\’ option restricts shipping by Country/Region/State/Zip Code/Zip Code Range, whereby the delivery is possible only from the warehouse (shipping origin) which serves the customer’s area.
So, your customer fills in his/her zipcode (otherwise it will be detected automatically) and the system shows ONLY the products that belong to the warehouse (shipping origin) that covers the customer\’s region. Customers\’ regions could be based on zip code range.
If you have one shipping origin, you will need to set up copies of your warehouse. I.e you must create abstract/virtual warehouses with the same settings and assign the warehouses to different states or zipcode ranges.
Actually, Multi-Warehouse is a comercial extension and designed to perfom much more complicated tasks but you can consider it as an option.
If you find it interesting, you can visit our site to find out more about the product and try out the demo: