This page shows the source for this entry, with WebCore formatting language tags and attributes highlighted.


Amazon can't validate phone numbers


I almost never use Amazon. I almost never buy things. Recently, I had the pleasure of discovering that Amazon---a trillion-dollar company that delivers stuff all over the world---cannot properly validate phone numbers when you add an address.<fn> I entered a phone number<fn> for an address to "help with delivery". No matter how I entered the number, I got the error message, <error>Please remove invalid characters from phone number field (sic)<fn></error> I started with copy/pasting the phone number straight out of Apple Contacts: +1 (789) 555-4338 <error>Please remove invalid characters from phone number field</error> (789) 555-4338 <error>Please remove invalid characters from phone number field</error> 789 555-4338 <error>Please remove invalid characters from phone number field</error> 789 555 4338 <error>Please remove invalid characters from phone number field</error> 7895554338 <error>Please remove invalid characters from phone number field</error> At this point, with numbers being the only potentially <iq>invalid characters</iq>, I was at my wit's end.<fn> I gave up and typed in a random phone number from the town where I grew up. Accepted. Pathetic. It's bad enough that they only <i>validate</i> the number and don't tell you what to fix. A better solution would be to return a normalized form and ask the user to approve it. E.g., "did you mean +1 (789) 555-4338?". They do something like this for the zip codes already. If they are incapable of that, then they should improve on the catch-all error message, which is not useful. It should indicate---at the very least---which characters are valid and should include an example of what they're looking for, so I can emulate it. The whole purchase process is balky and unpolished; it's exactly what I would expect from a monopoly that doesn't have to care about its customers' needs---because it's the only game in town.<fn> <hr> <ft>I was using a desktop browser.</ft> <ft>This has been mangled to a non-functional number. The original phone number was both correct and valid.</ft> <ft>It should read "phone-number field".</ft> <ft>I suspected that there was a non-printing Unicode character in there somewhere---e.g. a ZWJ (zero-width joiner) or something---but wasn't in the mood to humor Amazon's atrocious validation any further at that point.</ft> <ft>For example, there's the very sleazy way they try to trap you into signing up for Prime---several times, in different ways and throughout the purchase process. Also, their shipping options are nearly deliberately misleading and oddly priced. Would you like it two days sooner and free? Sign up for Prime! How about two days later but free? That's an option, too. How about one day later but costing $8.50? What? Why would I do that for one business-day fewer? Is that somehow more reliable than free? Is there a catch I'm not seeing? Why is there even an option for $12.50 with another, different span of days? Finally, their web application still uses the buttons from 20 years ago: the graphics are fuzzy, low-res icons with built-in borders. They haven't changed a bit. Once you're on one of these pages, you can't even navigate back to the site to add more items (I was in the "adjust quantities" page).</ft>