Geolocation should only be used for general customisation -- not something as drastic as disabling add to cart buttons. It's very possible that:
- the user is using a proxy to connect to the internet so their location is masked (aka: incorrect)
- they are not browser the store from their "home" location (aka: travelling / holiday / etc)
- the geolocation data returned is simply incorrect.
In those cases you could be blocking people that should be allowed to buy. I suppose for some stores those drawbacks are worth the risk.
Never seen an app, but nothing a quick search of store wouldn't answer for yourself. It can be handled without an app in any case.