Mağazalar
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
PUT /api/vendor/v1/stores/ADS-34781
Authorization: Bearer <token>
Content-Type: application/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"
}| Alan | Zorunlu | Açıklama |
|---|---|---|
taxNumber | evet | Şubeyi tanımlar. Bir şubenin tek kanaldan çalışması bu alan üzerinden denetlenir |
name | evet | Kuryeye görünen ad |
phone | evet | Restoranın telefon numarası, 10 hane. Kurye tarafından aranabilir |
address.text | evet | Paketin teslim alınacağı yerin açık adresi |
address.latitude / longitude | evet | Paketin teslim alınacağı konum. Kurye bu noktaya yönlendirilir |
fleetId | hayı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.
{
"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
{
"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ı
| Durum | Sipariş kabul eder | Açıklama |
|---|---|---|
AwaitingFleet | hayır | Kayıtlı, kurye şirketi henüz seçilmemiş |
AwaitingFleetApproval | hayır | Şirket bağlanmış, onay bekleniyor |
Active | evet | Olağan çalışma durumu |
Migrating | evet | Şube Hızlıyo üyeliğine geçiyor. Kapanış tarihine kadar sipariş kabul eder |
Suspended | hayır | Kurye şirketi geçici olarak sipariş kabul edemiyor |
Deactivated | hayır | Kapalı |
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:
| Durum | Yanıt |
|---|---|
| Şube doğrudan Hızlıyo üyesi | 409 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.