Skip to content

Mağazalar

http
PUT /api/vendor/v1/stores/{externalStoreId}

Tek bir uç nokta mağazayı oluşturur, günceller, kurye şirketini bağlar ve şubeye hizmet veren şirketleri listeler. İşlem sizin kendi mağaza numaranız üzerinden yürütülür; Hızlıyo'nun ürettiği kimliği saklamanız gerekmez.

PATCH yerine PUT kullanılmasının nedeni

PATCH istekleri güvenlik katmanımız tarafından engellendiği için canlı ortamda API'ye ulaşmaz. Tüm alanları içeren PUT isteği kullanın.

İstek

http
PUT /api/vendor/v1/stores/ADS-34781
Authorization: Bearer <token>
Content-Type: application/json
json
{
  "taxNumber": "1234567890",
  "name": "Öncü Döner · Kızılay",
  "phone": "5321234567",
  "address": {
    "text": "Meşrutiyet Cad. No:12/A, Kızılay, Çankaya/Ankara",
    "latitude": 39.920778,
    "longitude": 32.854110
  },
  "fleetId": "9d41c7a2-5b83-4e10-91cc-72f0ab3d5e64"
}
AlanZorunluAçıklama
taxNumberevetŞubeyi tanımlar. Bir şubenin tek kanaldan çalışması bu alan üzerinden denetlenir
nameevetKuryeye görünen ad
phoneevetRestoranın telefon numarası, 10 hane. Kurye tarafından aranabilir
address.textevetPaketin teslim alınacağı yerin açık adresi
address.latitude / longitudeevetPaketin teslim alınacağı konum. Kurye bu noktaya yönlendirilir
fleetIdhayırİlk istekte boş bırakılır, restoranın seçimi sonrasında eklenir

Kurye şirketi seçilmemişse

fleetId gönderilmediğinde, yanıtta ilgili adrese hizmet veren şirketler listelenir. Bunun için ayrı bir uç nokta bulunmaz.

json
{
  "success": true,
  "data": {
    "status": "AwaitingFleet",
    "subRegion": "Çankaya · Kızılay",
    "availableFleets": [
      {
        "fleetId": "9d41c7a2-5b83-4e10-91cc-72f0ab3d5e64",
        "name": "Başkent Moto Kurye",
        "status": "Available",
        "coverage": ["Çankaya · Kızılay", "Çankaya · Bahçelievler"],
        "avgDeliveryMinutes": 27
      },
      {
        "fleetId": "3e08b115-c6d9-4a72-8f30-1ab4c9e77d52",
        "name": "Ankara Hızlı Lojistik",
        "status": "AtCapacity",
        "coverage": ["Çankaya · Kızılay"],
        "avgDeliveryMinutes": 31
      }
    ]
  }
}

status alanı Available, AtCapacity veya Unavailable değerlerini alır. AtCapacity durumundaki bir şirket de seçilebilir; bu değer yalnızca şirketin o an yeni mağaza kabul etmediğini gösterir.

Kurye şirketlerinin iletişim bilgileri paylaşılmaz. Restoranın ilgili şirketle görüşmesi gerekiyorsa tarafımıza bildirin.

Kurye şirketi seçildiğinde

json
{
  "success": true,
  "message": "Kurye şirketinin onayı bekleniyor.",
  "data": {
    "status": "AwaitingFleetApproval",
    "fleet": { "fleetId": "9d41...5e64", "name": "Başkent Moto Kurye" }
  }
}

Kurye şirketi anlaşmayı kendi tarafında onaylar. Onay verilene kadar mağaza sipariş kabul edemez. Onay tamamlandığında store.activated bildirimi iletilir.

Mağaza durumları

DurumSipariş kabul ederAçıklama
AwaitingFleethayırKayıtlı, kurye şirketi henüz seçilmemiş
AwaitingFleetApprovalhayırŞirket bağlanmış, onay bekleniyor
ActiveevetOlağan çalışma durumu
MigratingevetŞube Hızlıyo üyeliğine geçiyor. Kapanış tarihine kadar sipariş kabul eder
SuspendedhayırKurye şirketi geçici olarak sipariş kabul edemiyor
DeactivatedhayırKapalı

Bir şube, bir kanal

Bir şube aynı anda hem sizin POS yazılımınızdan hem doğrudan Hızlıyo üzerinden hizmet alamaz; iki farklı POS firmasında da kayıtlı olamaz. Vergi numarası ve konum başka bir kayıtla eşleşiyorsa istek reddedilir:

DurumYanıt
Şube doğrudan Hızlıyo üyesi409 ALREADY_HIZLIYO_PARTNER
Şube başka bir POS firmasında kayıtlı409 STORE_EXISTS_ON_ANOTHER_VENDOR
Aynı şube, sizin hesabınızda farklı bir mağaza kimliğiyle kayıtlı409 DUPLICATE_STORE

Aynı zincirin farklı şubelerinin farklı kanallarda bulunması olağandır. Engellenen durum, aynı şubenin iki kanalda birden yer almasıdır.

Restoranın Hızlıyo'ya geçmesi

POS yazılımınızı kullanan bir restoran doğrudan Hızlıyo üyesi olduğunda mağaza kaydı hemen kapatılmaz, Migrating durumuna alınır. Kapanış tarihiyle birlikte store.migrating bildirimi iletilir; belirtilen tarihe kadar siparişler kesintisiz akmayı sürdürür. Mağaza; restoranın Hızlıyo üzerinden ilk siparişini alması ya da sürenin dolması durumlarından hangisi önce gerçekleşirse o anda kapanır.

Bu geçiş POS firması tarafından engellenemez. Hangi kanaldan çalışacağına restoran karar verir.

Hızlıyo Vendor API v1