In theory, you're correct. Unfortunately, not all devices identify correctly (iOS devices are especially bad in this regard).

I'm also running horribly light – while ZenCart would do a lot of this kind of stuff, I want to make casual purchases as trivial and easy as possible. (That and the SQL calls killed my low-end webhost plan.)