Admin · Orders
Sipariş panosu ve karşılama operasyonu — toplama, kasa, sevk, teslim, iptal ve iade. ADMIN rolü gerekir.
/v1/admin/orders Bearer Sipariş panosu
Parametreler
| Ad | Yer | Tip | Açıklama |
|---|---|---|---|
status | query | OrderStatus | |
branchId | query | string | |
slotId | query | string | |
date | query | string (date) | Europe/Istanbul takvim günü (YYYY-MM-DD) — teknenin çıktığı gün. |
q | query | string en fazla 64 karakter | Serbest metin araması. |
page | query | integer ≥ 1 · varsayılan 1 | |
perPage | query | integer 1–100 · varsayılan 24 |
Yanıtlar
| Durum | Gövde | Açıklama |
|---|---|---|
| 200 | PageMeta + { items: AdminOrderDto[] } | Sipariş sayfası. |
| 400 | ApiError | validation_failed — gövde veya query şemaya uymuyor (details). |
| 401 | ApiError | missing_token, invalid_token veya unauthenticated. |
| 403 | ApiError | insufficient_role — kimlik doğru, rol yetkili değil. |
/v1/admin/orders/{id} Bearer Sipariş detayı
Müşteri, transfer, fatura ve KDV kırılımı dahil.
Parametreler
| Ad | Yer | Tip | Açıklama |
|---|---|---|---|
id * | path | string |
Yanıtlar
| Durum | Gövde | Açıklama |
|---|---|---|
| 200 | AdminOrderDto | Sipariş. |
| 401 | ApiError | missing_token, invalid_token veya unauthenticated. |
| 403 | ApiError | insufficient_role — kimlik doğru, rol yetkili değil. |
| 404 | ApiError | order_not_found. |
/v1/admin/orders/{id}/start-picking Bearer Toplamaya başlar
PAID → PICKING.
Parametreler
| Ad | Yer | Tip | Açıklama |
|---|---|---|---|
id * | path | string |
Yanıtlar
| Durum | Gövde | Açıklama |
|---|---|---|
| 200 | AdminOrderDto | Güncel sipariş. |
| 401 | ApiError | missing_token, invalid_token veya unauthenticated. |
| 403 | ApiError | insufficient_role — kimlik doğru, rol yetkili değil. |
| 404 | ApiError | order_not_found. |
| 409 | ApiError | order_status_conflict — gövde expected ve actual taşır. |
/v1/admin/orders/{id}/items/{itemId} Bearer Eksik toplamayı kaydeder
pickedQty yalnızca azaltılabilir. Kayıt, stok defteri hareketi, raf sayım uyarısı ve müşterinin kısmi iadesi bu çağrının arkasından gelir. Satıcı entegrasyonundaki pick ucu da tam olarak bu yolu çalıştırır.
Parametreler
| Ad | Yer | Tip | Açıklama |
|---|---|---|---|
id * | path | string | |
itemId * | path | string |
İstek gövdesi PickItemRequest
Yanıtlar
| Durum | Gövde | Açıklama |
|---|---|---|
| 200 | ShortPickResult | Eksik toplama sonucu. |
| 400 | ApiError | validation_failed — gövde veya query şemaya uymuyor (details). |
| 401 | ApiError | missing_token, invalid_token veya unauthenticated. |
| 403 | ApiError | insufficient_role — kimlik doğru, rol yetkili değil. |
| 404 | ApiError | order_not_found veya order_item_not_found. |
| 409 | ApiError | order_not_picking, picked_qty_above_ordered veya
picked_qty_cannot_increase. |
/v1/admin/orders/{id}/mark-packed Bearer Kasayı hazır işaretler
PICKING → PACKED. Satıcı karşılamasında bu, kasanın teslim noktasında bizim personelimizce kabulüdür; zilyetlik burada geçer.
Parametreler
| Ad | Yer | Tip | Açıklama |
|---|---|---|---|
id * | path | string |
Yanıtlar
| Durum | Gövde | Açıklama |
|---|---|---|
| 200 | AdminOrderDto | Güncel sipariş. |
| 401 | ApiError | missing_token, invalid_token veya unauthenticated. |
| 403 | ApiError | insufficient_role — kimlik doğru, rol yetkili değil. |
| 404 | ApiError | order_not_found. |
| 409 | ApiError | order_status_conflict. |
/v1/admin/orders/{id}/mark-out-for-delivery Bearer Yola çıktı
PACKED → OUT_FOR_DELIVERY.
Parametreler
| Ad | Yer | Tip | Açıklama |
|---|---|---|---|
id * | path | string |
Yanıtlar
| Durum | Gövde | Açıklama |
|---|---|---|
| 200 | AdminOrderDto | Güncel sipariş. |
| 401 | ApiError | missing_token, invalid_token veya unauthenticated. |
| 403 | ApiError | insufficient_role — kimlik doğru, rol yetkili değil. |
| 404 | ApiError | order_not_found. |
| 409 | ApiError | order_status_conflict. |
/v1/admin/orders/{id}/mark-delivered Bearer Teslim edildi
OUT_FOR_DELIVERY → DELIVERED.
Parametreler
| Ad | Yer | Tip | Açıklama |
|---|---|---|---|
id * | path | string |
Yanıtlar
| Durum | Gövde | Açıklama |
|---|---|---|
| 200 | AdminOrderDto | Güncel sipariş. |
| 401 | ApiError | missing_token, invalid_token veya unauthenticated. |
| 403 | ApiError | insufficient_role — kimlik doğru, rol yetkili değil. |
| 404 | ApiError | order_not_found. |
| 409 | ApiError | order_status_conflict. |
/v1/admin/orders/{id}/mark-failed-delivery Bearer Teslim edilemedi
OUT_FOR_DELIVERY → FAILED_DELIVERY.
Parametreler
| Ad | Yer | Tip | Açıklama |
|---|---|---|---|
id * | path | string |
İstek gövdesi FailedDeliveryRequest
Yanıtlar
| Durum | Gövde | Açıklama |
|---|---|---|
| 200 | AdminOrderDto | Güncel sipariş. |
| 400 | ApiError | validation_failed — gövde veya query şemaya uymuyor (details). |
| 401 | ApiError | missing_token, invalid_token veya unauthenticated. |
| 403 | ApiError | insufficient_role — kimlik doğru, rol yetkili değil. |
| 404 | ApiError | order_not_found. |
| 409 | ApiError | order_status_conflict. |
/v1/admin/orders/{id}/assign-transfer Bearer Transfer partneri atar
Parametreler
| Ad | Yer | Tip | Açıklama |
|---|---|---|---|
id * | path | string |
İstek gövdesi AssignTransferRequest
Yanıtlar
| Durum | Gövde | Açıklama |
|---|---|---|
| 200 | AdminOrderDto | Güncel sipariş. |
| 400 | ApiError | validation_failed — gövde veya query şemaya uymuyor (details). |
| 401 | ApiError | missing_token, invalid_token veya unauthenticated. |
| 403 | ApiError | insufficient_role — kimlik doğru, rol yetkili değil. |
| 404 | ApiError | order_not_found veya transfer_not_found. |
| 409 | ApiError | transfer_inactive. |
/v1/admin/orders/{id}/reslot Bearer Slotu değiştirir
Parametreler
| Ad | Yer | Tip | Açıklama |
|---|---|---|---|
id * | path | string |
İstek gövdesi ReslotRequest
Yanıtlar
| Durum | Gövde | Açıklama |
|---|---|---|
| 200 | AdminOrderDto | Güncel sipariş. |
| 400 | ApiError | validation_failed veya slot_unchanged. |
| 401 | ApiError | missing_token, invalid_token veya unauthenticated. |
| 403 | ApiError | insufficient_role — kimlik doğru, rol yetkili değil. |
| 404 | ApiError | order_not_found, order_not_reslottable veya slot_not_found. |
| 409 | ApiError | slot_unavailable veya order_status_conflict. |
/v1/admin/orders/{id}/cancel Bearer Siparişi iptal eder
Müşteri ucunun aksine PICKING ve sonrasında da çalışır. Tahsil edilmiş para varsa iade açılır ve yanıt açılan iadeleri taşır.
Parametreler
| Ad | Yer | Tip | Açıklama |
|---|---|---|---|
id * | path | string |
İstek gövdesi CancelOrderRequest
Yanıtlar
| Durum | Gövde | Açıklama |
|---|---|---|
| 200 | { order: AdminOrderDto, refunds: RefundDto[] } | Sipariş ve açılan iadeler. |
| 400 | ApiError | validation_failed — gövde veya query şemaya uymuyor (details). |
| 401 | ApiError | missing_token, invalid_token veya unauthenticated. |
| 403 | ApiError | insufficient_role — kimlik doğru, rol yetkili değil. |
| 404 | ApiError | order_not_found veya order_not_cancellable. |
| 409 | ApiError | order_status_conflict. |
/v1/admin/orders/{id}/refunds Bearer İade açar
Ya bütün kalemler (orderItemIds) ya da açık bir tutar (amountKurus) — tam olarak biri. İkisi birden gönderilirse reddedilir: hangisinin kastedildiğini tahmin etmek müşteriye iki kez iade yapmanın yoludur.
Parametreler
| Ad | Yer | Tip | Açıklama |
|---|---|---|---|
id * | path | string |
İstek gövdesi CreateRefundRequest
Yanıtlar
| Durum | Gövde | Açıklama |
|---|---|---|
| 201 | RefundDto[] | Açılan iadeler. |
| 400 | ApiError | validation_failed — gövde veya query şemaya uymuyor (details). |
| 401 | ApiError | missing_token, invalid_token veya unauthenticated. |
| 403 | ApiError | insufficient_role — kimlik doğru, rol yetkili değil. |
| 404 | ApiError | order_not_found, order_item_not_found veya no_captured_payment. |
| 409 | ApiError | nothing_to_refund, invalid_refund_amount, refund_exceeds_payment,
refund_not_allocatable, refund_target_ambiguous veya
refund_target_missing. |