Siparişler
Bu kaynak, kimliği doğrulanmış müşterinin geçmiş siparişlerini döner. Sipariş listeleme ve tek sipariş görüntüleme desteklenir; kayıtlar salt okunurdur. Uç noktalar storefront/account/2026-01 önekindedir ve kimliği doğrulanmış müşteri token'ı gerektirir (yalnızca okuma token'ı yetmez). Ödeme adımı tamamlanmamış, sepet aşamasında kalmış siparişler listeye girmez; bu kayıtlara id ile yapılan istek de 404 döner.
Yetki:
storefront:account — müşteri token'ı zorunlu.Listeleme
GET /orders
curl -s 'https://<domain>/api/v3/storefront/account/2026-01/orders' \
-H 'Accept: application/vnd.api+json' \
-H 'Authorization: Bearer <CUSTOMER_TOKEN>'
Varsayılan sıralama -orderDate (en yeni sipariş önce). Sayfa boyutu varsayılan 20, en fazla 100.
Örnek bir sipariş kaydı:
{
"type": "orders",
"id": "9012",
"attributes": {
"orderCode": "TS-2026-9012",
"status": "Kargoya Verildi",
"statusId": 4,
"orderDate": 1767225600,
"totalPrice": { "amount": "1499.90", "currencyCode": "TRY", "decimalPlaces": 2 },
"cargoTrackingCode": "1234567890",
"cargoCompany": "Yurtiçi Kargo",
"cargoTrackingUrl": "https://kargo.example/takip/1234567890",
"hasReturnRequest": false,
"firstProductName": "Ahşap Sehpa",
"firstProductImageUrl": "https://<domain>/Data/Urunler/sehpa.jpg",
"productCount": 3,
"paymentMethod": "Kredi Kartı",
"installment": 3,
"bank": "Örnek Bank",
"coupon": "%10 WELCOME10",
"subtotal": { "amount": "1200.00", "currencyCode": "TRY", "decimalPlaces": 2 },
"shippingCost": { "amount": "50.00", "currencyCode": "TRY", "decimalPlaces": 2 },
"discount": { "amount": "0.00", "currencyCode": "TRY", "decimalPlaces": 2 }
}
}
Tek sipariş
GET /orders/{id}
curl -s 'https://<domain>/api/v3/storefront/account/2026-01/orders/9012' \
-H 'Accept: application/vnd.api+json' \
-H 'Authorization: Bearer <CUSTOMER_TOKEN>'
Alanlar
| Alan | Açıklama |
|---|---|
orderCode | Sipariş kodu |
status | Sipariş durumu (görünen metin) |
statusId | Sipariş durum id'si |
orderDate | Sipariş tarihi (Unix timestamp; create_date'e karşılık gelir) |
totalPrice | Money nesnesi: { "amount", "currencyCode", "decimalPlaces" } |
cargoTrackingCode | Kargo takip kodu |
cargoCompany | Kargo firması adı |
cargoTrackingUrl | Kargo takip bağlantısı |
hasReturnRequest | Siparişte iade talebi var mı? |
firstProductName | Listede özet için ilk ürünün adı |
firstProductImageUrl | İlk ürünün görsel URL'si |
productCount | Siparişteki ürün adedi |
paymentMethod | Ödeme yöntemi (görünen metin) |
installment | Taksit sayısı (tek çekim ise 0) |
bank | Ödemenin geçtiği banka adı (bilinmiyorsa boş) |
coupon | Siparişte kullanılan kupon (yoksa boş) |
subtotal | Ürünler ara toplamı — Money nesnesi |
shippingCost | Kargo tutarı — Money nesnesi |
discount | Toplam indirim tutarı — Money nesnesi |
Filtreler
| Filtre | Örnek | Davranış |
|---|---|---|
filter[id] | filter[id]=9012,9013 | Virgülle ayrılmış sipariş id'leri |
filter[status] | filter[status]=5,6 | Sipariş durum kodu veya virgülle ayrılmış liste. Sayı olmayan değer verilirse liste boş döner |
filter[orderDateFrom] | filter[orderDateFrom]=2025-01-01 | Bu tarihten itibaren verilen siparişler. Tarih metni veya epoch saniye kabul edilir |
filter[orderDateTo] | filter[orderDateTo]=2025-12-31 | Bu tarihe kadar verilen siparişler. Tarih metni veya epoch saniye kabul edilir |
Sıralama
| Sort | Anlamı |
|---|---|
orderDate | Sipariş tarihine göre (varsayılan -orderDate) |
İlişkiler
Sipariş ürünlerini, teslimat/fatura adresini ve iade taleplerini tek istekte almak için include kullan:
GET /orders/{id}?include=...
curl -s 'https://<domain>/api/v3/storefront/account/2026-01/orders/9012?include=products,deliveryAddress,invoiceAddress,returns' \
-H 'Accept: application/vnd.api+json' \
-H 'Authorization: Bearer <CUSTOMER_TOKEN>'
| İlişki | Tip | Anlamı |
|---|---|---|
products | order-products | Siparişteki ürün satırları (hasMany) |
deliveryAddress | order-addresses | Teslimat adresi (hasOne) |
invoiceAddress | order-addresses | Fatura adresi (hasOne) |
returns | order-returns | Siparişe bağlı iade talepleri (hasMany) |
Bu kaynakta
include derinliği maxDepth=2 ile sınırlıdır; iç içe iki seviyeden derin ilişki zinciri çekmeye çalışma.