Süper GelsinPartner APIv1.0.0
API Referansı
TREN
Başlangıç
  • Hemen Başla
  • Test Ortamı (Sandbox)
  • Yetkilendirme
  • Servis Limitleri
  • Test hesabı başvurusu
Ortak uçlar
  • İşletme
  • Sipariş Yaşam Döngüsü
  • Sipariş Durumları
  • Mali Belge
  • Kurye Firması Entegrasyonu
  • Müşteri Talepleri
  • Değerlendirmeler
  • Webhook
Yemek
  • Menü ve Ürün Eşleme
Çarşı
  • Çarşı'ya genel bakış
  • Katalog
  • Toplama ve Dönüş
Referans
  • Sürümleme ve Hız Sınırı
  • Hata Kodları ve Sorun Giderme
  • Changelog
  • Sıkça Sorulan Sorular
  • API Referansı
Geliştirici Portalı/Ortak uçlar

Kurye Firması Entegrasyonu

İşletmenin anlaştığı kurye firmasının kurye bilgisini ve konumunu kasa yazılımı nasıl bildirir.

Platform kurye hizmeti vermez; teslimatı işletme kendi kuryesiyle ya da anlaştığı firmayla yapar. Teslimatı anlaşmalı bir kurye firması yapıyorsa kurye bilgisini ve konumunu işletmenin kasa yazılımı yazar. Kurye firmasına işletmenin anahtarı verilmez ve firma bu uçlara kendi kimliğiyle erişmez. Ticari ilişki işletme ile firma arasındadır; platform bilgiyi yalnız iletir.

Bu sayfadaki uçlar

Her satır API referansındaki tam tanıma gider — alanlar, yanıt kodları ve deneme konsolu orada.

  • PUT/orders/{id}/courier
  • PUT/orders/{id}/courier/location

Akış

  1. Teslime hazır siparişi okuyun: restoranda GET /orders?status=ready, Çarşı işletmesinde toplaması kapanmış sipariş (picking.completed: true). Webhook kullanıyorsanız order.updated olayı durum değişimini iletir.
  2. Kuryeyi bildirin: PUT /orders/{id}/courier. Tekrar gönderim güncelleme yapar; ilk yazımın assignedAt değeri korunur.
  3. Kurye yola çıkınca durumu ilerletin: POST /orders/{id}/status ile dispatch. Durum geçişi kurye uçlarında yapılmaz. Çarşı işletmesinde toplama kapanmadan dispatch yazılamaz.
  4. Yolda konum yazın: PUT /orders/{id}/courier/location. Önerilen aralık 10 saniyedir.
  5. Teslimde deliver yazın.
Kurye bildirimi
curl -X PUT "https://api.supergelsin.com/api/partner/v1/orders/cm_ornek_siparis/courier" \
  -H "Authorization: Basic $(printf '%s:%s' "$API_KEY" "$API_SECRET" | base64)" \
  -H "X-Integrator: Ornek POS" \
  -H "X-Operator: kasiyer_01" \
  -H "Content-Type: application/json" \
  -d '{ "name": "Örnek Kurye", "phone": "+905000000000", "externalId": "K-17", "company": "Örnek Kurye Firması", "arrivedAtStore": true }'
Konum
curl -X PUT "https://api.supergelsin.com/api/partner/v1/orders/cm_ornek_siparis/courier/location" \
  -H "Authorization: Basic $(printf '%s:%s' "$API_KEY" "$API_SECRET" | base64)" \
  -H "X-Integrator: Ornek POS" \
  -H "X-Operator: kasiyer_01" \
  -H "Content-Type: application/json" \
  -d '{ "latitude": 40.9127, "longitude": 38.3895, "heading": 135, "recordedAt": "2026-01-31T10:41:05Z" }'

Geliştirmeye test ortamında başlayın: test hesabındaki restoran ve Çarşı işletmesi kurye uçlarını da kabul eder.

Alanlar

Kurye isteği
AlanTipAçıklama
namezorunlustringKurye adı, 2–80 karakter.
phonestringİsteğe bağlı; 10–15 rakam, başında + olabilir.
externalIdstringKurye firmasının kurye kimliği, en çok 64 karakter.
companystringKurye firmasının adı, 1–64 karakter. Her istekte gönderin: company içermeyen bir PUT önceki firma adını siler.
arrivedAtStorebooleantrue ise kuryenin işletmeye ulaştığı an kaydedilir; ilk kayıt korunur.
Konum isteği
AlanTipAçıklama
latitudezorunlunumber-90 ile 90 arasında.
longitudezorunlunumber-180 ile 180 arasında.
headingnumberYön, 0 ile 359 arasında.
recordedAtISO 8601Konumun alındığı an. Gelecekte ya da 10 dakikadan eskiyse reddedilmez, istek anına çekilir.

Kurye motokuryedir; araç alanı yoktur. Kurye adı ve telefonu yalnız işletmeye ve entegratöre döner; müşteriye gösterilmez. Sipariş nesnesinde bu bilgiler courier bloğunda döner: name, phone, externalId, firm (isteği yazan X-Integrator değeri), company (kurye firmasının adı; hiç gönderilmediyse null), assignedAt, arrivedAtStoreAt ve location. Kurye yanıtında ayrıca id (sipariş kimliği) bulunur; restoranda deliveryProvider alanı X-Integrator değerinden türeyen sağlayıcı kodunu verir.

Konum kişisel veridir. Sipariş başına yalnızca son konum saklanır, iz tutulmaz. Konum yazma ayrı hız grubundadır (konum) ve sipariş okuma kotasını tüketmez; ayrıntı için Servis Limitleri.

Kurallar ve hatalar

AlanTipAçıklama
409 order_closedkapalı siparişTeslim edilmiş ya da iptal edilmiş siparişe kurye veya konum yazılamaz; current siparişin durumunu verir.
409 courier_not_setsıraKonumdan önce PUT /orders/{id}/courier gönderilmeli.
400 invalid_bodyalanYanıttaki field hangi alanın reddedildiğini söyler (name, phone, externalId, company, latitude, longitude, heading, recordedAt).
404 not_foundsiparişSipariş yok ya da bu işletmeye ait değil.
Müşteri iletişim verisi, sipariş teslim edildikten ya da iptal edildikten 2 saat sonra sipariş nesnesinden daraltılır: ad kısalır, telefon ve koordinat düşer, adres yalnız İlçe / İl olarak kalır, müşteri notu düşer. Kendi kayıtlarınızda da müşteri iletişim verisini bu süreden sonra tutmayın; süresiz saklama KVKK ölçülülük ilkesine aykırıdır.
ÖncekiMali BelgeSonrakiMüşteri Talepleri
Bu sayfada
  • Akış
  • Alanlar
  • Kurallar ve hatalar