Sipariş Yaşam Döngüsü
Partner entegrasyonunda siparişler webhook ile itilmez; Web API üzerinden okunur, durum güncellenir ve fatura URL'si eklenir. Temel uç noktalar: Listele, Detay, Durum güncelle, Fatura.
Durum kodları
| Kod | Türkçe etiket | API adı |
|---|---|---|
1 | Ödeme Bekliyor | AwaitingPayment |
2 | Hazırlanıyor | Picking |
3 | Kargoda | Shipped |
4 | Teslim Edildi | Delivered |
5 | İptal Edildi | Cancelled |
Tipik akış
AwaitingPayment → Picking → Shipped → Delivered.
Herhangi bir aşamada Cancelled olabilir.
- Ödeme tamamlanınca veya onaylanınca
2(Hazırlanıyor). - Paket çıktığında
3(Kargoda) + takip bilgisi. - Teslimatta
4(Teslim Edildi). - İptalde
5(İptal Edildi).
Kargo alanları
cargoCompany ve trackingNumber
(veya cargo_company / tracking_number)
genellikle durum 3 — Kargoda ile birlikte gönderilir.
Yalnızca takip bilgisi de güncellenebilir; en az bir alan gerekir.
Bkz. Sipariş Durumunu Güncelle.
Sorgulama stratejisi (polling)
GET /orders kullanın — sayfa 0 tabanlıdır.
date_from/date_to—YYYY-MM-DDveya datetimestartDate/endDate— Unix milisaniye (Trendyol uyumlu)status— 1–5, veya tümü için0page/size— sayfalama (varsayılan boyut 30, en fazla 100)
Son başarılı senkron zamanından itibaren dar bir tarih penceresi tutmak gereksiz yükü azaltır. Kurallar için API Kuralları sayfasına bakın.
Fatura
Sevkiyattan sonra herkese açık bir fatura URL'si ekleyin
(POST /orders/{id}/invoice). Dosya yükleme desteklenmez —
yalnızca URL. Bkz. Sipariş Faturası.
İzinler
orders.read— listeleme ve detayorders.write— durum / kargo güncelleme ve fatura işlemleri
403 döner. Anahtarları Yönetim → API bölümünden ayarlayın —
Kimlik Doğrulama.
İlgili sayfalar
# 1) List picking orders (status=2), page is 0-based
curl -s -H "X-API-Key: YOUR_API_KEY" -H "Accept: application/json" \
"https://example.com/api/v1/orders?page=0&size=20&status=2&date_from=2026-06-01&date_to=2026-07-30"
# 2) Mark order 15 as shipped + cargo tracking
curl -s -X PATCH \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"status": 3,
"cargoCompany": "Yurtiçi Kargo",
"trackingNumber": "YT123456789"
}' \
"https://example.com/api/v1/orders/15"
# 3) Attach public invoice URL
curl -s -X POST \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"url": "https://example.com/fatura.pdf",
"name": "Fatura"
}' \
"https://example.com/api/v1/orders/15/invoice"