Parcel rejected: destination outside company coverage
What the "doesn't ship to" and "doesn't deliver to ..." messages mean, where they come from, and how a merchant fixes the address or the platform admin edits company coverage.
Last updated 22 October 2026 · Last verified 22 October 2026
What it means#
Each delivery or shipping company has "coverage areas" that define the countries and governorates it serves. When any parcel is created, the system checks the recipient's destination, and the pickup location too when its governorate can be determined. If it is outside the selected company's coverage, the parcel is rejected with a message naming the company and the supported places. No parcel is created and nothing is charged. The check is the same for every source of parcels: the merchant panel, the API, Excel import, connected store orders and shipping without an account (individuals).
Who can do what#
- A merchant sees the message and corrects the address or picks another company.
- The platform admin (super admin) is the only one who edits coverage, from the Coverage areas menu. There is no screen for company staff to edit their own coverage, so they must ask the platform admin.
- A company with nothing configured has "no restriction", and no check is applied to it.
Likely causes#
There are three messages, each showing the company name in quotes:
| Message as shown | Meaning |
|---|---|
| “X” doesn't ship to Syria. Supported countries: Iraq. | The company's coverage does not include the country. Merchant parcels are always treated as destined for Syria (SY), so this appears when Syria is not among the company's countries. |
| We couldn't determine the Recipient's governorate — “X” only delivers to: دمشق، حلب. Choose the governorate explicitly. | The company covers specific governorates and the system could not recognise the destination's governorate. |
| “X” doesn't deliver to حمص (Recipient). Supported governorates: دمشق، حلب. | The system recognised the governorate and it is outside the company's coverage. |
- Instead of "Recipient" you may see "Sender", which is the pickup-location check. It runs only when the pickup location's governorate is known (or its country is not Syria), so an incomplete branch address does not block the parcel.
- The system finds the recipient's governorate from the governorate chosen in the list and from the address text (an Arabic or English governorate name, or the phrase "محافظة ..."), and failing that from the map coordinates inside Syria. The second message appears when the address has no governorate name and there is no map point.
- Governorate names inside the message appear in Arabic, separated by the Arabic comma, even when the interface is in English, as the examples above show.
How to diagnose#
- On the New parcel page the price box shows the message before you save, and on save it appears in the list of reasons. In the API,
POST /api/v1/quotereturnsquote_failedwith HTTP 422, andPOST /api/v1/parcelsreturnsvalidation_failedwith HTTP 422 and the fieldcustomer_city. - In an Excel import the message appears on the rejected parcel's row.
- For WooCommerce, Shopify and Salla orders the order status becomes "Failed" and the reason shows in the "Note / reason" column of the store's Orders page. For Zid orders there is no status column: the reason shows in red text next to the failed order, in the Zid section under the latest Zid orders («آخر طلبات زد»). At the first failure the merchant is also sent a push notification on the devices registered on their account. It is in Arabic, titled «طلب ما انعمل طرد» (meaning "order did not become a parcel"), and nothing arrives if no device is registered. It is not repeated on automatic re-processing, but for Zid it can be sent again if a manual retry fails again. The platform admin can switch it off or reword it in the notification center («مركز الإشعارات»).
GET /api/v1/companiesreturns the fieldcoveragefor each company:nullmeans no restriction; otherwise an object such as{"SY": ["دمشق"]}, where an empty list[]means all governorates of that country.
Resolution steps#
Set the governorate explicitly (merchant)
On the New parcel page choose the governorate in the Governorate list instead of "Automatic from location", and set the address on the map. In the API send the governorate in the
governorateorcustomer_cityfield.Pick a company that covers the destination (merchant)
If the governorate really is outside the company's coverage, choose another company that covers it. Coverage is checked only at the moment the parcel is created.
Retry a failed store order (merchant)
Store integrations is for platform merchants only (not merchants of a delivery company), and when merchant plans are active, linking a WooCommerce, Shopify or Salla store needs the plan's stores feature. For a WooCommerce, Shopify or Salla store, open Store integrations and press Orders on the store's card. On the failed row correct the address in the address field (its hint reads «تصحيح العنوان: المحافظة، الحي، الشارع» in Arabic) or choose the governorate, then press Retry. A Zid store has no Orders button: in the Zid section, under the latest Zid orders («آخر طلبات زد»), the failed row has an address field and a retry button («أعد المحاولة»).
Edit the coverage areas (platform admin)
Open Coverage areas in the super admin menu and click the company's row. Choose "No restriction (all of Syria)" or "Specific countries and governorates", tick the countries, then "All governorates" or specific governorates, and press Save. At least one country is required, and at least one governorate for each country without "All governorates". The change applies to parcels created afterwards.
- Choose the pickup place
- Choose the delivery company
- Enter the recipient's name and phone
- Set the cash-on-delivery amount
- Your invoice number, to recognise the parcel later
When to contact support#
- If your company should cover the rejected governorate, ask the platform admin to change its coverage, and send the company name, the governorate and the message text.
- If the rejection appears although the address clearly names a supported governorate, send the address exactly as typed, the delivery company and the message text.
API
POST /api/v1/quotePOST /api/v1/parcelsGET /api/v1/companies