I'd like to set up Ubercart shipping zones (as a component) rather than re-selecting 5, 10 or 15 countries (each time for different quantities) that are within a particular shipping zone (e.g. as defined by Australia Post).

I've attempted to use admin/config/workflow/rules/components, but it appears setting up a shipping component for a zone (e.g. Europe Zone) needs to reference a  particular shipping method that's already defined.

This is more a convenience than a necessity - when selecting countries, after saving I can export the component and compare with similar zone components (for different quantities) to quickly check all countries are included. I've caught a few omissions already, so that seems an expedient thing to do.




Found the solution:

In this example setting a shipping zone with many countries in the Asia-Pacific Zone (which in this example includes China, Cambodia, Vietnam, Fiji, Vanuatu ... etc) per the Australia Post list.

  1. admin/config/workflow/rules/components/add

    Add component

  2. Define component name, e.g. ZONE Asia-Pacific
  3. In the Variables section, select Entity -> Order, Label "ZONE Asia-Pacific", and machine name "zone_asia_pacific" or whatever suits.

Shipping Zones select Order

  1. Click "Continue" (at bottom).
  2. Add Condition, selection data comparison "Check an order's shipping country"
    Select "shippoing address"
  3. Once selected, now begin selecting multiple countries (in Linux, Firefox, hold CTRL while selecting). Noting that "Data selector" has changed to "zone-asia-pacific":
  4. Save.
  5. Add new flat-rate shipping quote via "admin/store/settings/quotes"
    Add new condition, selecting (go to bottom, components) "Asia-Pacific Zone" component.


  6. Add another condition for quantity criteria (for shipping 2 x items to Asia-Pacific)
  7. replicate for quantities 3, 4, 5 etc. using Asia-Pacific Zone component (in this example, this will skip the need to re-select 25 countries when multi-selecting countries in that zone).



In regards to the large multitude of countries not covered by the various zones that are defined, "Rest of World" is set using NOT Zone Asia-Pacific AND NOT Zone US-Canada AND NOT Zone Europe, etc.