The question is why do they need the zip code? Is it to match to the delivery address or is it to verify zip code matches what is on file for the credit card? Gas stations verify the zip code (or our modified zip code) with the card issuer to make sure is the the same as what's on the card file. That's why entering 90210 or 32830 (wdw) doesn't work unless your card was issued to you at an address with that zip code.
But if the merchant is verifying the delivery address, then the hotel zip code would work.