Given that each ZIP code in the United States of America specifies a unique state, why do you need to specify a state whenever you're filling out address fields to make a credit card purchase on the internet? Given the vagaries of brick-and-mortar mail delivery, especially in the pre-digital age, providing superfluous information on your envelop no doubt makes things easier for the postal service and provides some chance of rescue in the event of erroneous addressing. But whatever program processes your form after you hit "okay" ought to be able to infer the rest of the information from -- 04616 is Brooklin, ME; 10003 is New York, NY; 20009 is Washington, DC -- from the ZIP code alone rather than giving you an error message and demanding that you fill in the blanks.