Shipping Zones
Shipping zones are used for mail-order deliveries -- orders that are shipped via postal or courier services rather than delivered by your own drivers. You define geographic zones using postal code patterns and set the rates customers are charged at checkout.

Shipping zones require Enable Shipping to be enabled in your store settings. Navigate to Settings > Edit Settings > Sales & Integrations tab and toggle on Enable Shipping. This is separate from the local delivery feature flag.
Shipping vs. Delivery
| Feature | Local Delivery | Shipping |
|---|---|---|
| Fulfillment | Your own drivers | Postal/courier service |
| Zone Definition | Postal code patterns | Postal code patterns |
| Fee Structure | Per-zone flat fee | Flat rate, per-kg rate, free threshold |
| Tracking | In-app via Driver PWA | External tracking number |
| Speed | Same-day or next-day | Varies by carrier |
Both features can be enabled simultaneously. Customers choose between local delivery and shipping at checkout (if both are available for their address).
Accessing Shipping Zones
- Log in to the Admin Panel.
- Navigate to
/admin/shipping_zones(this page is accessible by direct URL when shipping is enabled). - The shipping zone list loads.
Creating a Shipping Zone
- Click Add Shipping Zone.
- Fill in the zone details:
Zone Name
A descriptive name for the zone.
- Required: Yes
- Example: "Saskatchewan", "Western Canada", "Ontario & Quebec"
Postal Code Patterns
Shipping zones use postal code patterns (the same format as delivery zones) to define their geographic coverage:
- Prefix match:
S7*-- Matches all postal codes starting with S7. - Broader prefix:
S*-- Matches all postal codes starting with S (Saskatchewan). - Multiple patterns: Add multiple patterns to cover multiple regions in a single zone.
Create zones based on shipping cost tiers, not geography. If it costs the same to ship to Alberta and British Columbia, put them in the same zone using their respective postal code prefixes.
Shipping Rates
Each shipping zone supports two rate systems. The system checks rate tiers first; if none exist or the order weight doesn't match, it falls back to the flat/per-kg calculation.
Rate Tiers (Weight-Based)
Shipping zones can have one or more shipping rate tiers — weight brackets with a fixed rate for each bracket. For example: 0–500g = $8, 501–2000g = $14, 2001g+ = $22. If the order weight exceeds all tiers, the highest tier's rate is used.
Flat / Per-KG Rates (Fallback)
| Field | Description |
|---|---|
| Flat Rate | A fixed shipping fee regardless of order size or weight. |
| Per-KG Rate | An additional fee per kilogram of order weight. Set to $0.00 if not used. |
| Free Shipping Threshold | Order amount above which shipping is free. Leave blank or set to $0.00 if free shipping is not offered. |
For example, a zone with no rate tiers might be configured as:
- Flat rate: $12.00
- Per-kg rate: $2.00
- Free shipping threshold: $150.00
This means a 2kg order would cost $16.00 to ship ($12 + 2 x $2), unless the order total exceeds $150, in which case shipping is free.
Country & Region Matching
Shipping zones can optionally be scoped by country code (2-letter ISO, e.g., CA) and/or region code (province/state). When set, a zone only matches addresses in that country/region. Leave blank for a catch-all zone that matches any country/region.
- Click Save.
Editing a Shipping Zone
- Click the zone name in the list.
- Modify the zone name, postal code patterns, or shipping rates.
- Click Save Zone.
Updated shipping rates apply to new orders only. Orders already placed use the rate that was active at checkout.
Zone Priority
If a customer's address matches multiple shipping zones, Brother POS uses the priority field to determine which zone wins. The zone with the lowest priority number that matches is selected (ShippingZone.find_zone_for_address orders by priority ASC, created_at ASC).
There is no automatic pattern-specificity logic. Set lower priority numbers for more specific zones and higher numbers for broad catch-all zones. Design your zones to avoid ambiguity where possible.
Disabling a Shipping Zone
- Open the zone.
- Toggle Status to Inactive.
- Save.
Customers in inactive zones will not see shipping as an option at checkout.
Deleting a Shipping Zone
- Open the zone detail page.
- Click Delete Zone.
- Confirm.
Deleting a shipping zone immediately removes shipping availability for customers in those regions. Any pending orders already placed are not affected, but new orders cannot be placed for those regions.
Free Shipping Promotions
To run a temporary free shipping promotion:
- Open the relevant shipping zone(s).
- Set the Free Shipping Threshold to $0.00 (or the minimum order amount for the promotion).
- Save.
- When the promotion ends, restore the original threshold.
Free shipping pairs well with Sale Campaigns. Run a promotion that offers both a product discount and free shipping to drive online orders.
Shipping Zone Reporting
Track shipping performance and costs:
- Shipping revenue -- Total shipping fees collected per zone.
- Order volume -- Number of shipped orders per zone.
- Average order value -- By zone, to help you set appropriate free shipping thresholds.
Access these metrics in Reports > Sales Reports with the delivery method filter set to Shipped.
Best Practices
- Set free shipping thresholds strategically -- Free shipping thresholds should be slightly above your average order value to encourage upselling.
- Keep rates competitive -- Research what competitors charge. Excessive shipping fees are a top reason for cart abandonment.
- Include handling time -- Add 1-2 days to carrier estimates for order processing and packing.
- Review quarterly -- Carrier rates change. Update your shipping rates when you receive new rate cards from your postal or courier provider.
- Test checkout flow -- Place a test order with a shipping address in each zone to verify correct rates are applied.
What's Next?
- Delivery Zones -- Configure local delivery zones.
- Packing Slips -- Generate packing slips for shipped orders.
- Routes -- Manage local delivery routes.
- Drivers -- Set up driver accounts for local delivery.