Kartlo.App
FeaturesPricingDocsContact
Sign inStart free
  • Getting started
    • Create your store
    • Your desk
    • The Kartlo phone app
    • Stores and organizations
    • Plans and billing
    • AI credits
    • Team and permissions
    • Getting help
  • Products
    • Add products
    • Variants
    • Media library
    • Import products
    • Collections
    • Inventory
    • Stock counts
    • Transfers
    • Purchase orders
    • Gift cards
    • Product labels
    • Product reviews
  • Orders
    • Order lifecycle
    • Draft orders
    • Order payments
    • Fulfilment
    • Returns and refunds
    • Abandoned carts
  • Customers
    • Customers and shopper accounts
    • Segments
    • Companies
    • Subscribers and customer emails
    • Loyalty points
  • Discounts
  • Online store
    • Themes
    • Design Studio
    • Pages
    • Navigation menu
    • Store address and custom domains
    • Publish and password-protect your storefront
    • SEO and sharing
  • Payments
    • Stripe card payments
    • Cash on delivery and manual methods
    • Hosted payment gateways
    • Tabby instalments
    • Finance and payouts
  • Shipping and delivery
  • Markets and languages
  • Arabic and English
  • Taxes
  • Analytics and Live View
    • Analytics
    • Live View
    • Scheduled email reports
  • Settings
  • Security
  • Developers
    • API and webhooks
    • Headless Storefront API
  • Kartlo Apps
    • Remove or cancel an app
    • Accounting - United Arab Emirates
    • CRM
    • Social Sales Channels
    • Messenger and WhatsApp
  1. Documentation
  2. Shipping and delivery

Shipping and delivery

On this page
  • Before you start
  • Create a delivery zone
    • Regions and postcodes
    • Catch everywhere else
    • Which zone wins
  • Add delivery rates
    • Free delivery over an amount
    • Turn zones and rates on or off
  • Offer local pickup
  • Test your rates
  • At checkout
  • Couriers and shipping labels
    • Connect your Jeebly account
    • Connect your iMile account
    • Connect your Shipa Delivery account
    • Connect your Aramex account
    • Connect your J&T Express UAE account
    • Connect your DHL Express account
  • See also

Delivery in Kartlo is built from zones and rates. A zone is a set of places, such as a country, a few regions or a list of postcodes. Each zone has one or more rates: the delivery options shoppers choose from at checkout, with their price and delivery time. You can also offer free local pickup from your branches.

You manage all of this in the Shipping module.

Before you start#

Important

Until you add a zone with at least one active rate, every order ships free. Set up delivery before you open your store, or decide on purpose that delivery is free.

The Get your store ready checklist in Online Store has a Set up delivery step. It opens a short form where you choose Charge a delivery fee or Free delivery, the delivery time, and whether Customers can also pick up. You can refine it later in Shipping.

The cards at the top of Shipping show your setup at a glance:

CardWhat it tells you
Active zonesZones currently offered, out of all you have set up.
Live delivery ratesRates defined across all zones.
Everywhere elseCovered when a catch-all zone handles countries you have not listed. Not covered means addresses outside your zones cannot check out.

Create a delivery zone#

To add a zone:

  1. Open Shipping from your desk and click New zone.
  2. Enter a Zone name, for example Dubai, Metro Manila or Rest of world. Only you see it.
  3. Under Countries, enter one country per line.
  4. Optionally narrow the zone with Regions or provinces or Postcodes, one per line.
  5. Leave Active on so the zone is offered at checkout.
  6. Click Create zone.

Regions and postcodes#

Leave Regions or provinces empty to cover the whole country. Filling it in narrows the zone, so an address outside those regions will not match the zone at all.

Postcodes are the narrowest match. End an entry with * to match every postcode that starts with it: SW1* covers SW1A 1AA. Leave postcodes empty unless you really need postcode-level rates.

Matching ignores capital letters and extra spaces. Postcodes also ignore spaces and hyphens.

Catch everywhere else#

Any address outside your zones is told plainly that you do not deliver there, and cannot place an order. To deliver to every other country, create a zone with * on its own line under Countries. It catches every country you have not named in another zone.

Which zone wins#

An address can fall into more than one zone. The most specific zone that covers it wins, and only that zone's rates are offered:

OrderZone type
1A zone whose postcodes match the address
2A zone whose regions match the address
3A zone that names the country
4A catch-all zone with *

Priority is only used when two zones are equally specific. The higher number wins.

Add delivery rates#

To add a rate to a zone:

  1. On the zone, click Rate.
  2. Choose a Rate type (see below).
  3. Enter the Name the shopper sees, for example Standard delivery, and an optional Description.
  4. Enter the Price and any limits the rate type asks for.
  5. Optionally set Arrives in, from (days) and to (days). Shoppers see this delivery window at checkout.
  6. Leave Active on and click Create rate.
Rate typeHow the price works
Flat rateOne fixed price for everything in this zone.
Free deliveryCosts nothing, optionally only above a cart value.
Price basedOffered when the order subtotal after discounts is between Order value from and up to.
Weight basedOffered when the total cart weight is between Weight from (grams) and up to (grams).

Leave an upper limit empty for no limit. Both ends of a range are included. A zone can have several rates, for example Standard and Express, and shoppers pick one at checkout. Drag rates to change their order.

Note

Weight comes from each variant's weight in grams. A product with no weight set counts as zero, so check your catalogue before relying on weight-based rates.

Free delivery over an amount#

Every rate except pickup has Free when the order is over. It is compared against the subtotal after discounts. On a paid rate the price drops to zero once the shopper is over the amount. On a free delivery rate, the option only appears once the shopper is over the amount.

Turn zones and rates on or off#

Use the switch on a zone or rate to stop offering it at checkout without deleting it. Inactive zones and rates show as Hidden from checkout.

Offer local pickup#

Local pickup lets shoppers collect in person, free, from one of your branches. It needs no delivery address, and shoppers can choose it whatever address they type.

  1. Under a zone's Local pickup, click Add branch.
  2. Enter the Branch name, for example Dubai Mall, and its Address.
  3. Add a phone number and the opening hours. A branch must be open on at least one day.
  4. Optionally paste the branch's Google Maps link to pin it on the map, so shoppers see how far it is.
  5. Leave Offer at checkout on and save.

Note

You need at least one delivery zone before you can add a pickup branch.

Test your rates#

The Rate tester at the bottom of Shipping runs the same calculation the checkout runs, against your live zones. Enter a Country, and optionally a Region / province, Postcode, Subtotal, Discount, number of Items and Total weight (grams). It shows the zone that matched and every option the shopper would see, with prices.

Tip

Test an address in each zone and one outside all of them before you open your store.

At checkout#

  • Shoppers see the options for their address, cheapest first, with the delivery window when you set one.
  • Pickup branches are listed whether or not the address matches a zone.
  • If the address is outside every zone, the shopper is told you do not deliver there yet and cannot place the order.
  • Kartlo checks the delivery price again when the order is placed, so a shopper always pays your current rate.

Couriers and shipping labels#

The Couriers card lets you connect a courier, so you can book pickups from an order and receive delivery updates automatically.

  • Quiqup can be connected today. It offers same day, next day and 4-hour delivery across the UAE, with cash on delivery in AED. Bookings are for UAE addresses only.
  • Jeebly can be connected with your own Jeebly account: same day and next day delivery across the seven emirates, with cash on delivery in AED.
  • iMile and Shipa Delivery can be connected with your own accounts: delivery in the UAE and the Gulf, with cash on delivery in the local currency.Aramex can be connected with your own Aramex account: domestic shipments with cash on delivery, and international shipments as Priority Parcel Express.J&T Express UAE can be connected with your own J&T contract account: next day and same day parcels across the UAE, with cash on delivery in AED when J&T has switched it on for your account.DHL Express can be connected with your own DHL Express account: prepaid next day delivery inside the UAE with a courier pickup. DHL does not collect cash here, so book only paid orders with it.
  • swftbox, noon Send, Transcorp, Time Express, ECO Express, First Flight and Zajel Express are UAE couriers in the catalogue. None of them publishes an API sellers can use yet, so ask for the one you use and Kartlo connects it once the courier opens access.
  • GetGive and Yango Delivery are in the catalogue. GetGive has not published an API yet, so ask for it there and Kartlo connects it once GetGive shares one.
  • Click Find a courier to browse the Courier catalogue: couriers Kartlo plans to add next. Ask for the one you use, and it shows under You asked for. These couriers cannot be connected yet.

To connect Quiqup:

  1. On the Couriers card, click Connect next to Quiqup.
  2. Pick the Environment: Staging (test, no real couriers) or Production (real couriers, real charges). Staging and production keys are different.
  3. Paste the API key from Quiqdash.
  4. Under Delivery updates, click Copy webhook address. In Quiqdash, open Integrations, then Webhooks, then New subscription, paste the address, select all order events and save. Copy the subscription's secret back into Webhook signing secret.
  5. Enter the Pickup details: contact name, phone, street and city. Use English letters only, because Quiqup does not read Arabic addresses.
  6. Pick the Default service and click Connect.

Important

Without the webhook signing secret, the card shows Updates off: no webhook secret and Kartlo ignores Quiqup's delivery updates, because it cannot prove they came from Quiqup.

If you print labels yourself, click the label settings button on the same card to set the paper size, your return address, the sender name and what each label shows, such as cash to collect, parcel weight, the item list and a note for the courier.

Booking a courier and printing labels happen from the order. See Fulfil orders.

Connect your Jeebly account#

Jeebly works with your own Jeebly account: Jeebly bills you directly and pays your cash on delivery to you. Ask your Jeebly account manager for API access first. They give you an API key and a client key, one pair for the test (demo) system and one for live.

  1. On the Couriers card, click Connect next to Jeebly.
  2. Pick the Environment: Test (Jeebly demo, no real riders) or Live (real riders, real charges).
  3. Paste the API key and the Client key.
  4. Check the Pickup details. Kartlo fills them from your store address: contact name, UAE mobile number, villa or office, building, area, landmark and city. Use English letters.
  5. Pick the Default service and click Connect. Kartlo checks the keys with Jeebly before saving them.
  6. Click Manage again. Under Delivery updates, copy the Webhook URL and the Webhook X-API-KEY. The Jeebly portal has no webhook page of its own, so email both to your Jeebly account manager and ask them to set the webhook for your account: method POST, content type application/json, with the key sent as the X-API-KEY header.

Note

Without the webhook, Kartlo still asks Jeebly for the status of open shipments every hour, so updates arrive later instead of right away.

Important

Your keys are stored encrypted and never shown again. To change environment, paste the keys for the new environment. Disconnecting stops new bookings and updates; shipments already booked stay in Jeebly.

Jeebly delivers to Abu Dhabi, Ajman, Al-Ain, Dubai, Fujairah, Ras Al Khaimah, Sharjah and Umm Al-Quwain, and needs a UAE mobile number for the buyer. To collect cash on delivery, Jeebly needs your bank details on your Jeebly account.

Connect your iMile account#

iMile works with your own iMile account: iMile bills you directly and pays your cash on delivery to you. Ask your iMile account manager for open API access. They give you a customer ID, a secret key and a logistics product code, one set for the sandbox and one for live.

  1. On the Couriers card, click Connect next to iMile.
  2. Pick the Environment: Test (iMile sandbox, no real drivers) or Live (real drivers, real charges).
  3. Paste the Customer ID, the Secret key and the Logistics product code.
  4. Check the Pickup details. Kartlo fills them from your store address: contact name, mobile number with country code, street and building, area, city and country. Use English letters.
  5. Click Connect. Kartlo checks the customer ID and secret key with iMile before saving them.

Note

iMile does not let you add your own webhook address, so Kartlo asks iMile for the status of open shipments every hour. Click Refresh iMile status on a parcel to ask right away.

To book, open the order, check the parcel, then click Book with iMile. Pick the weight (it is filled from your product weights when you leave it empty) and the number of pieces. Cash on delivery is added when the order is unpaid and paid by cash on delivery. Print the label from iMile label. You can cancel a shipment until iMile picks it up.

Connect your Shipa Delivery account#

Shipa Delivery works with your own Shipa account. Sign up at the Shipa developer portal, ask Shipa to activate the account, then create an app with Delivery Service (v2). Shipa gives you an API key, one for the sandbox app and one for the live app.

  1. On the Couriers card, click Connect next to Shipa Delivery.
  2. Pick the Environment: Test (Shipa sandbox, no real drivers) or Live (real drivers, real charges).
  3. Paste the API key.
  4. Check the Pickup details and pick the Default service: Next day or Same day.
  5. Click Connect. Kartlo checks the key with Shipa, then subscribes to Shipa status updates for you.

Note

The Webhook URL and Webhook key under Delivery updates are what Kartlo registered with Shipa. Kartlo ignores updates without that key, and also asks Shipa for the status every hour.

Important

Your keys are stored encrypted and never shown again. Use city names Shipa knows, such as Dubai, Abu Dhabi, Al Ain or Sharjah. Disconnecting stops new bookings and updates; shipments already booked stay in Shipa.

Connect your Aramex account#

Aramex works with your own Aramex account: Aramex bills you directly and pays your cash on delivery to you. You need an Aramex business (credit) account first. Then ask your Aramex account manager, or the Aramex integration team, for API access. They send you six details: user name, password, account number, account PIN, account entity (the three-letter office code, such as DXB) and account country (such as AE). Test and live details are different.

  1. On the Couriers card, click Connect next to Aramex.
  2. Pick the Environment: Test (Aramex test system, nothing is shipped) or Live (real shipments, real charges). The Aramex test system only answers once Aramex has opened it for your account, so ask your account manager first.
  3. Enter the API user name, API password, Account number, Account PIN, Account entity and Account country.
  4. Check the Pickup details. Kartlo fills them from your store: contact name, mobile with the country code, street and building, area, city and country.
  5. Pick the Default service (Overnight parcel (next day), Same day parcel or Economy delivery) and click Connect. Kartlo checks the details with Aramex by asking for a price quote, which books nothing.

Note

Aramex does not send delivery updates on its own, so Kartlo asks Aramex for the status of open shipments every hour. There is no webhook to set up.

Important

Your password and PIN are stored encrypted and never shown again. Your account must have the service you pick switched on; ask Aramex if a booking says the product is not allowed. Disconnecting stops new bookings and updates; shipments already booked stay in Aramex.

Connect your J&T Express UAE account#

J&T Express UAE works with your own J&T contract (monthly settlement) account: J&T bills you directly and pays your cash on delivery to you. You need four values. The API account and private key are on the J&T open platform (open.jtjms-sa.com). The customer code and customer password come from your J&T station. Test and live accounts are different.

  1. On the Couriers card, click Connect next to J&T Express UAE.
  2. Pick the Environment: Test (J&T demo, no real riders) or Live (real riders, real charges).
  3. Fill in API account, Private key, Customer code and Customer password.
  4. Check the Pickup details. Kartlo fills them from your store address: contact name, UAE mobile number, building or street, flat, area and city. Use English letters.
  5. Pick the Default service (Standard (next day) or Same day) and click Connect. Kartlo checks the values with J&T before saving them.

From the order, Book with J&T Express UAE creates the shipment and returns the waybill number, J&T Express UAE label opens J&T's PDF label, and Cancel J&T Express UAE shipment cancels it before pickup. Cancelling the order also cancels the J&T shipment.

Note

J&T does not send updates to a per-store address, so Kartlo asks J&T for the status of open shipments every hour. Click Refresh J&T Express UAE status on the parcel to ask right away.

Important

Cash on delivery must be switched on for your J&T account; if it is not, the booking is refused and Kartlo tells you. Parcels can weigh up to 30 kg. Your private key and password are stored encrypted and never shown again.

Connect your DHL Express account#

DHL Express works with your own DHL Express account: DHL bills you directly. You need a DHL Express account number (9 digits) and access to the MyDHL API. Open developer.dhl.com, sign in, create an app with the MyDHL API and ask for access with your account number. DHL sends an API key and API secret for the test system first, then live ones.

  1. On the Couriers card, click Connect next to DHL Express.
  2. Pick the Environment: Test (DHL test system, nothing is shipped) or Live (real pickups, real charges).
  3. Fill in API key, API secret and Account number.
  4. Check the Pickup details: contact name, mobile with the country code, street and building, area and city, in English letters.
  5. Keep Domestic Express (next day) as the Default service and click Connect. Kartlo checks the key and secret with DHL before saving them.

From the order, Book with DHL Express creates the shipment, books a DHL pickup for the next working day and saves DHL's label, which DHL Express label opens.

Note

DHL does not send updates to a per-store address, so Kartlo asks DHL for the status of open shipments every hour. Click Refresh DHL Express status on the parcel to ask right away.

Important

DHL Express does not collect cash on delivery here: Kartlo refuses to book an unpaid cash on delivery order with it. DHL has no shipment cancel, so Remove DHL Express shipment only unlinks it in Kartlo; DHL does not bill a label it never scans. Parcels can weigh up to 70 kg. Your API secret is stored encrypted and never shown again.

See also#

  • Fulfil orders
  • Cash on delivery
  • Markets and languages
  • Taxes
PreviousFinance and payoutsNextMarkets and languages

On this page

  • Before you start
  • Create a delivery zone
    • Regions and postcodes
    • Catch everywhere else
    • Which zone wins
  • Add delivery rates
    • Free delivery over an amount
    • Turn zones and rates on or off
  • Offer local pickup
  • Test your rates
  • At checkout
  • Couriers and shipping labels
    • Connect your Jeebly account
    • Connect your iMile account
    • Connect your Shipa Delivery account
    • Connect your Aramex account
    • Connect your J&T Express UAE account
    • Connect your DHL Express account
  • See also
FeaturesPricingDocsContactPrivacyTerms© 2026 Louward Labs FZC LLC