Is it possible to overwrite the WooCommerce geolocation?



I have set up WooCommerce to issue pricing and custom shipping based on location. Everything is working fine.

However, the client requested that if a South African is overseas and they want to purchase, they should have the ability to overwrite the location by manually selecting South Africa and therefore inheriting the right pricing and shipping methods.

Can anyone point me in the right direction? I appreciate your input.


Hi Archie22is,

It sounds like this is about the overseas customer is a new customer creating an account but registering is restricted by geolocation.

If so, and in order to not mess things up as "everything is working fine", maybe the settings for the geolocation based address validation could change from restricting to instead be helpfully suggesting the address?

Or maybe a WooCommerce extension like "Multiple Ship to Addresses" could be an option?


Thank you @Erik_J

What the customer wishes to accomplish is:

Say you are British and you use a VPN to access the site (or you are on a business trip in the United States). The website registers that you are in the USA and gives you dollars and USA shipping methods, you should be able to select your country from a list (the United Kingdom in this case) and the geolocation should inherit the settings (currency and shipping methods).

How would I overwrite the settings?


The wonderful thing about open source code is anything is possible.


Any ideas @ZooKeeper?


I think Wordpress should be burned with fire much like CodeIgniter so no. I feel sorry for people who have to work on those platforms. Not sorry enough to lend my expertise in any way that would even slightly perpetuate usage, sorry.


@Archie22is, you haven't mentioned in what setup you want the overwrite made.

Anyway, I can't see how an override of the geolocation locked address could be made based on conditions from the case you describe.

That's ok, but you seems to have locked the costumer's billing address to the geolocation, that's your main problem.

You also seem to have disabled the option to ship to another address, that's a good policy. This you could change to solve this case, but then you opens for fraud if the account is compromized, not so good.

I don't think you can make a conditional rule that apply to this case, but I may be wrong. :slight_smile:

Maybe you could try a "Multiple Shipping" extension to care for proxy customers or gift shopping, but I'm not sure that would work if the shipping is locked to the billing address.

The only "overwrite" solution I can see is to inform the customer, if he isn't a US citizen, to contact the shop to manually set his account's address. (E.g. that message could show in a custum field before the country address details are entered.)

But I strongly suggest you to remove the geolocation lock on the billing address. It doesn't improve or protect anything, and IMHO it's only useful if the shop only ships to its own country.

I believe the geolocation should rather be used to suggest an address in order to make the registration easier at checkout. Keep disabling another shipping address though. :slight_smile:


This topic was automatically closed 91 days after the last reply. New replies are no longer allowed.