Koriyar Shipping API

Create same-day UAE deliveries directly from your website, app, or e-commerce store — with live tracking, Cash on Delivery, and automated dispatch.

1. Overview & integration options

Koriyar offers three ways to integrate automated delivery:

🔌 WooCommerce plugin (ready-made)🧩 REST API (any platform / custom)🔔 Webhooks (status push-back)

If you use WooCommerce, install our plugin, paste your API key, and orders create Koriyar shipments automatically. For any other stack (Shopify, custom, mobile), use the REST API below.

2. Technical requirements to get started

API keyIssued by Koriyar to your approved merchant account. Sent on every request.
HTTPSAll requests over TLS. Base URL: https://seller.koriyar.com/api/v1
FormatJSON request bodies and JSON responses (Content-Type: application/json).
AccountAn approved Koriyar merchant/seller account (we approve you once, then issue the key).

That's it — no SDK required. Any language that can make an HTTPS POST works.

3. Authentication

Send your API key as a Bearer token on every request:

Authorization: Bearer kor_live_xxxxxxxxxxxxxxxxxxxx

Keys are secret — keep them server-side. A key can be revoked and re-issued at any time. Unauthorized requests return 401.

4. Endpoints

Get a rate quote

POST https://seller.koriyar.com/api/v1/rates
curl -X POST https://seller.koriyar.com/api/v1/rates \
  -H "Authorization: Bearer kor_live_..." \
  -H "Content-Type: application/json" \
  -d '{"pickup":"Dubai Marina","dropoff":"Business Bay, Dubai","stops":1}'
{ "ok": true, "amount_aed": 35.05, "currency": "AED",
  "distance_km": 17.54, "eta_minutes": 82, "stops": 1 }

Create a shipment

POST https://seller.koriyar.com/api/v1/shipments
FieldRequiredNotes
pickupyesPickup area/address (e.g. "Dubai Marina").
dropoffyesDelivery area/address.
customer_phonerecommendedRecipient phone (+9715…).
itemsnoWhat's being sent.
cod_amountnoCash to collect on delivery (AED). Omit or 0 for prepaid.
payment_modenowallet (charge your Koriyar wallet) or trip_link (pay-by-link). Default: link.
stopsnoNumber of stops (default 1).
pickup_lat/lng, dropoff_lat/lngnoExact GPS pins for precise routing (optional).
curl -X POST https://seller.koriyar.com/api/v1/shipments \
  -H "Authorization: Bearer kor_live_..." -H "Content-Type: application/json" \
  -d '{"pickup":"Dubai Marina","dropoff":"Business Bay, Dubai",
       "customer_phone":"+971501234567","items":"1 parcel","cod_amount":150}'
{ "ok": true, "track_code": "KR-489139", "status": "created",
  "amount_aed": 35.05, "currency": "AED",
  "payment_method": "hosted_checkout", "payment_status": "enabled",
  "payment_url": "https://pay.nomod.com/...",
  "tracking_url": "https://track.koriyar.com/?code=KR-489139" }

Track a shipment

GET https://seller.koriyar.com/api/v1/track?code=KR-489139
{ "ok": true, "track_code": "KR-489139", "status": "on_the_way",
  "pickup": "Dubai Marina", "dropoff": "Business Bay, Dubai",
  "stops_done": 0, "stops_total": 1, "rider_name": "Ahmed",
  "eta_minutes": 40, "proof_of_delivery_url": null }

Statuses: createdpending_pickuppicked_upon_the_waydelivered (or cancelled). A proof_of_delivery_url photo is attached on delivery.

Cancel a shipment

POST https://seller.koriyar.com/api/v1/cancel
curl -X POST https://seller.koriyar.com/api/v1/cancel -H "Authorization: Bearer kor_live_..." \
  -H "Content-Type: application/json" -d '{"code":"KR-489139"}'

Only possible before pickup. After pickup, contact support.

5. Webhooks (status push-back)

Give us a webhook URL when your key is issued, and we'll POST status updates to your store so you don't have to poll:

POST <your-webhook-url>
X-Koriyar-Event: shipment.created | shipment.cancelled | shipment.delivered
X-Koriyar-Signature: <hmac-sha256 of the body>

{ "event": "shipment.delivered",
  "data": { "track_code": "KR-489139", "status": "delivered" },
  "sent_at": "2026-07-09T21:00:00Z" }

Verify the X-Koriyar-Signature header to confirm the call is genuinely from Koriyar.

6. Cash on Delivery (COD)

✅ Fully supported. Pass cod_amount (in AED) on /shipments and our rider collects it from the recipient on delivery. COD amounts are reconciled to your account. Omit it (or 0) for prepaid orders.

7. Coverage & pickup

Active delivery coverage across the UAE, area-aware dispatch:

DubaiSharjahAbu DhabiAjman+ inter-emirate corridors

Same-day pickup and delivery windows. For exact corporate pickup schedules in your area, contact us for a plan (below).

8. Corporate rates & pricing plans

💬 Custom corporate pricing. Rates depend on your volume, corridors, and COD needs. Use /rates for live per-shipment quotes, and contact our team for a tailored corporate plan: hello@koriyar.com or WhatsApp your Koriyar account manager.

9. Getting started

  1. Contact us to open/approve your merchant account: hello@koriyar.com
  2. We issue your kor_live_… API key (and set up your webhook URL if you have one).
  3. WooCommerce? Install the plugin + paste the key. Other stack? Call the API above.
  4. Test with /rates, then create your first shipment with /shipments. 🚀

Koriyar — UAE's AI-batched same-day delivery network. Questions: hello@koriyar.com