If someone is still interested in how to validate zip codes I've found a solution:
Using Google Geocoding API
we can check validity of ZIP code having both Country code and a ZIP code itself.
For example I live in Ukraine so I can check like this: https://maps.googleapis.com/maps/api/geocode/json?components=postal_code:80380|country:UA
Or using JS API: https://developers.google.com/maps/documentation/javascript/geocoding#ComponentFiltering
Where 80380
is valid ZIP for Ukraine, actually every (#####) is valid.
Google returns ZERO_RESULTS
status if nothing found.
Or OK
and a result if both are correct.
Hope this will be helpful.