Yanıttaki başlıca alanlar
| Alan | Anlamı |
|---|---|
| orderId | Siparişin kimliği |
| orderNumber | Sipariş numarası |
| orderDate | Sipariş tarihi |
| customer.name, customer.email | Müşteri adı ve e-postası |
| items | Kalemler |
| items[].name | Ürün adı |
| items[].merchantSKU | Satıcı stok kodu |
| items[].productBarcode | Ürün barkodu |
| items[].quantity | Adet |
| items[].unitPrice.amount, items[].totalPrice.amount | Birim ve toplam tutar |
| items[].packageNumber | Paket numarası; paket oluştuysa |
| items[].barcode | Kargo barkodu |
| items[].status | Kalemin durumu |
Dikkat: satıcı stok kodu bu yanıtta merchantSKU biçiminde, sonu büyük harfle yazılır. Liste ucundaki sku alanıyla karıştırmayın.
Adres nerede durur?
Adres yanıtta tek bir yerde gelmeyebilir. Canlı kullanımda adres sipariş düzeyinde (shippingAddress ya da deliveryAddress), müşteri nesnesinin içinde ya da kalem düzeyinde görüldü. Kodu bu yerlerin hepsine bakacak biçimde yazın.
- Adres alanlarında city il, town ilçe, district mahalle bilgisini taşır.
- Telefon için phoneNumber alanına bakın.
- Teslim edilmiş siparişlerde adres bilgisi detayda yer aldı; e-arşiv fatura gibi işler için kaynak olarak kullanılabilir.
Kişisel verileri yalnız ihtiyaç duyduğunuz kadar saklayın. Fatura ve kargo için gereken alanların dışındakileri kaydetmeyin.
Paket numarasını bulmak
Paket numarası yalnız sipariş Hepsiburada'da paketlendikten sonra oluşur. Etiket, kargo değişikliği ve fatura linki gibi işlemler paket numarasıyla yapıldığı için önce bu numarayı bulmanız gerekir.
| Durum | Paket numarası |
|---|---|
| Yeni sipariş, paketlenmedi | Yok |
| Paketlendi, fatura bekliyor | Var |
| Kargoda, teslim edildi | Var |
| Birden çok pakete bölündü | Kalem başına farklı numaralar |
Paket numarası kalemlerin içinde durur. İç içe nesnelerde arama yaparak ilk bulunan packageNumber değerini almak pratik bir yoldur; çok paketli siparişte ise her kalemin numarasını ayrı okuyun.
Ne zaman çağrılmalı?
Detay ucu her sipariş için ayrı bir istektir. Yüzlerce siparişte sırayla çağırmak yavaştır, aynı anda çağırmak ise istek sınırına yaklaşır. Aradaki denge, sınırlı sayıda eşzamanlı istektir.
- Paket durum listelerinden gelen ve elinizde olmayan siparişler için çağırın.
- Sonucu önbelleğe alın; teslim edilmiş bir siparişin detayı sık değişmez.
- Hata alan istekleri tüm işlemi durdurmadan atlayın ve sonraki turda yeniden deneyin.
Detay ucu bildirimlerin ardından da işe yarar. Adres değişikliği ya da paket oluşturma bildirimi geldiğinde ilgili siparişin detayını yeniden okumak, ekrandaki bilgiyi güncel tutar. Bildirim gövdesindeki bilgiyle yetinmek yerine detaydan okumak, eksik alanların yarattığı hataları önler.
Sık hatalar ve çözümleri
| Belirti | Olası neden | Çözüm |
|---|---|---|
| Stok kodu boş | sku alanı okunmuş | items[].merchantSKU alanını okuyun |
| Adres eksik | Adres yalnız tek bir yerde aranmış | Sipariş, müşteri ve kalem düzeyine bakın |
| Paket numarası yok | Sipariş henüz paketlenmemiş | Paketlendikten sonra yeniden sorgulayın |
| Toplam tutar yanlış | Birim tutar adetle çarpılmamış | items[].totalPrice.amount değerlerini toplayın |
Sık sorulanlar
Hepsiburada sipariş detayı hangi uçtan alınır?
OMS servisinde GET /orders/merchantid/SATICI_ID/ordernumber/SIPARIS_NO ucundan.
Paket numarasını nereden bulurum?
Sipariş detayındaki kalemlerde packageNumber alanında. Sipariş paketlenmemişse bu alan yoktur.
Satıcı stok kodu hangi alanda?
Detay yanıtında items[].merchantSKU alanında. Liste ucundaki sku alanı farklı bir kod taşıyabilir.
Detay ucunu her sipariş için çağırmalı mıyım?
Yalnız eksik bilgisi olan siparişler için. Sonucu önbelleğe alın ve eşzamanlı istek sayısını sınırlayın.
Sipariş detayında müşterinin e-posta adresi gelir mi?
Yanıtta müşteri nesnesinde bir e-posta alanı bulunabilir ama her siparişte dolu olmayabilir. Faturayı ve bildirimleri e-posta olmadan da yürütebilecek biçimde kurgulayın.
Kaynaklar
İlgili Hepsiburada API konuları
Son güncelleme: 27.10.2026 · Hepsiburada API rehberinin tamamı


