PrestaShop August 22, 2026 23 views

PrestaShop Shipping Zone Checklist for International Stores

International shipping configuration grows by layers. A store starts with one domestic carrier, then adds a regional service, a new country, a wholesale group, or another shop. Each change is reasonable on its own. The risk appears in the intersections. A zone is not covered mere...

International shipping configuration grows by layers. A store starts with one domestic carrier, then adds a regional service, a new country, a wholesale group, or another shop. Each change is reasonable on its own. The risk appears in the intersections.

A zone is not covered merely because it is enabled. Coverage requires an enabled carrier assigned to the current shop, available to the intended groups, linked to the zone, and backed by a usable price or weight range with delivery configuration.

Use this checklist whenever you launch a country, change a carrier contract, or duplicate configuration across shops.

1. Define the shop context

Begin in a specific shop rather than “all shops” when possible. Write down the shop identifier and the intended storefront. A carrier assigned to Shop A should not be assumed to exist in Shop B, even when both shops share a catalog.

For each active carrier, confirm the explicit shop assignments. Flag enabled carriers that are missing from the current shop and carriers that appear in another shop only. This prevents a global-looking carrier list from hiding a local scope problem.

2. Inventory enabled zones

List every enabled zone and the active countries assigned to it. An enabled zone with no active countries may be harmless, but it is usually stale configuration worth reviewing. More importantly, every enabled zone that contains an intended destination needs at least one eligible carrier.

Do not count disabled carriers as coverage. Their range and zone rows can remain in the database after they are paused, which makes a table-level inventory look safer than checkout really is.

3. Verify carrier-to-zone links

For each enabled carrier, list its assigned zones. Look for three conditions:

  • An enabled carrier with no zone assignments.
  • A carrier assigned only to disabled zones.
  • An enabled zone with no enabled in-scope carrier.

The last condition is the clearest blocker. If a customer address maps to that zone, no amount of range tuning will make a carrier appear until the zone coverage is restored.

4. Review group availability

Carrier availability can vary by group. Confirm each intended current-shop group independently; a Visitor assignment is not evidence that Customer or VIP checkout is covered.

Avoid using real customer records during this structural audit. Current-shop group configuration is enough to evaluate each group separately and detect a missing carrier assignment. Customer-specific checkout testing can happen later in a controlled QA environment.

5. Match the calculation dimension

Identify whether each carrier uses total price, total weight, or free shipping. Then inspect the corresponding ranges only. A beautiful set of price ranges does not help a carrier configured to calculate by weight.

Each range must have a finite lower and upper boundary, and the upper boundary must be greater than the lower boundary. Sort ranges by the lower value. Adjacent boundaries should touch unless a deliberate exclusion is documented.

6. Confirm zone delivery rows

Zone assignment and range definition are both necessary, but they are not sufficient. Verify that delivery configuration exists for the carrier, range, zone, and applicable shop.

This check should be performed for every active range. A missing delivery row in the middle of an otherwise continuous set can create a carrier disappearance that resembles a boundary gap. The report should distinguish “range missing” from “range exists but zone delivery row missing,” because the repairs are different.

7. Test out-of-range behavior

Record whether the carrier is hidden outside configured ranges or reuses the largest range. PrestaShop 9.1.4 stores these as range_behavior=true for disabled and range_behavior=false for highest-range fallback. Test representative values below the first range, exactly at the final upper boundary, and above it.

If the largest range is reused, make sure that range has a delivery row for each intended zone. If the carrier is hidden, confirm that another carrier covers the excluded values or that the exclusion is an intentional policy.

8. Probe international boundary cases

Create a small configuration-only matrix across enabled zones. For price carriers, use zero, common basket totals, exact thresholds, and high totals. For weight carriers, use zero, typical parcel weights, exact thresholds, and oversized weights.

Label these as representative probes, not checkout guarantees. Taxes, discounts, address details, dimensions, product restrictions, and external carrier services can affect a full checkout. The matrix isolates the configuration layer so you can fix structural problems before adding those variables.

9. Export safely

If you share the report as CSV, cap its size and neutralize cells that begin with =, +, -, or @. Carrier and zone names are administrator-controlled text, and spreadsheet applications may interpret those prefixes as formulas.

Do not export customer names, addresses, carts, or orders for this checklist. They are not needed to prove zone and range coverage.

10. Repeat after every scope change

Run the checklist after adding a country, enabling or disabling a zone, editing groups, copying a carrier to another shop, or changing price and weight thresholds. A repeatable read-only audit is more reliable than a one-time visual inspection.

Vamao PrestaShop Carrier Coverage OS turns this checklist into an ACL-protected back-office report. It reads only shipping configuration, makes no carrier changes, and provides bounded representative probes so international teams can see where eligibility ends before customers do.

Discussion

Comments

0 approved
No approved comments yet.

Leave a comment

Comments are reviewed before they appear publicly.

Guest verification lasts 30 days for the same browser and email.

Related Posts