ReachZone

Block WooCommerce checkout outside your delivery area

How to stop orders to addresses you can’t deliver to, so you never have to cancel and refund them.

Why WooCommerce’s own shipping zones aren’t enough

WooCommerce shipping zones match a country, a state or a list of postcodes. That works for national shipping, but a local delivery area is usually a distance or a shape on the map, and one postcode can be half inside it and half outside. ReachZone adds zones based on where the address really is: a radius, an area you draw, a postcode list, or a drive time.

What happens to an address outside every zone

  • Your delivery methods disappear from the shipping options for that address, and the shipping section shows your “outside the delivery area” message instead.
  • If the shopper still tries to place the order, checkout refuses it with the same message. This works in the classic checkout (checkout validation) and the Block checkout (a cart error from the Store API).
  • Orders that don’t need shipping (downloads, services) are never blocked.

Keep local pickup open

Under Settings → Pickup, tick “Always keep local pickup available, even outside the delivery zones”. Shoppers outside your area can then still order for collection, and the zone rules (fee, minimum order) don’t apply to pickup.

Write your own message

Under “Checkout behaviour and messages”, change the “Message outside the delivery area”. A message that says what the shopper can do converts better than a plain no, for example: “We deliver within 8 km of our shop. You can still order for pickup.”

When the address can’t be checked

Sometimes an address can’t be placed on the map: a typo, a brand-new street, or a free plan without street-address lookups. You choose what happens:

  • Block checkout until the address can be checked (recommended): the shopper sees your “could not check” message and can use the address checker on your site, by address or postcode.
  • Allow the order: checkout goes on and you check the address yourself.

On the free plan, shoppers pass the check with a postcode that one of your postcode zones covers, or by sharing their location in the checker. Paid plans look up the street address.

Tell shoppers before they reach checkout

Add the address checker block or the [reachzone_checker] shortcode to your home page or product pages, so shoppers see “we deliver here” (with the fee and delivery time) before they fill a cart. The setup guide shows where.