Satır iptal et

POST /Orders/CancelOrderItemLineList — OMS API · İptal & İade

Sipariş satırlarını doğrudan iptal eder (onay beklemez). Gövde bir dizidir; tek istekte birden fazla kayıt gönderebilirsiniz.

Ne zaman çağrılır: İptal kararı sizin tarafınızda kesinleştiğinde (ör. stok yok, operatör iptali). Satıcı onayı gereken durumlarda bunun yerine İptal talebi oluştur ucunu kullanın.

  • reasonId için GetStatusReasonByType (statusType=Cancelled) kullanın.
  • Kısmi iptalde kalan ürünler yeni bir pakete taşınır; satış kanalı ayarı açıksa bu paketin kargo bilgisini newPackageCargoKey / newPackageTrackingNumber ile verebilirsiniz.
  • Satır bulunamazsa ya da iptale uygun değilse HTTP 200, isSuccess: false döner.

İstek gövdesi

  • quantity (integer<int32>, zorunlu): İptal adedi.
  • reasonId (integer<int64>, zorunlu): İptal sebebi kimliği; GetStatusReasonByType (statusType=Cancelled) yanıtındaki id.
  • reasonDesc (string): İptal açıklaması.
  • refundAction (string): Ödeme iadesi şekli: refund (para iadesi, varsayılan) ya da credit (iade çeki).
  • newPackageCargoKey (string): Kısmi iptalden sonra kalan ürünlerle oluşan yeni paketin kargo anahtarı (satış kanalı ayarı açıksa kullanılır).
  • sourceOrderItemLineId (string, zorunlu): İptal edilen satırın sourceOrderItemLineId değeri.
  • newPackageTrackingNumber (string): Kısmi iptalden sonra oluşan yeni paketin takip numarası (satış kanalı ayarı açıksa kullanılır).

Yanıtlar

  • 200: Başarılı. Gövdedeki isSuccess alanını mutlaka kontrol edin.
  • 400: Gövde doğrulanamadı (zorunlu alan eksik, tip uyumsuz ya da JSON bozuk). Yanıt ASP.NET Core ValidationProblemDetails biçimindedir; errors alanı hangi alanın hatalı olduğunu gösterir.
  • 401: Authorization başlığı yok, token geçersiz ya da süresi dolmuş. Gövde boş döner; /Auth/login ile yeni token alın.
  • 500: Beklenmeyen sunucu hatası. Bu yanıt PascalCase alan adlarıyla döner (diğer yanıtlardan farklı olarak) ve null alanlar da yazılır.

200 yanıt alanları

  • data (object[]): Oluşan ödeme iadeleri. Ödeme iadesi kapalıysa boş liste.
    • data.total (number<double>): Ödeme tutarı.
    • data.status (integer<int32>): İade durumu kodu.
    • data.authCode (string): Provizyon kodu. Yalnızca doluysa döner.
    • data.interest (number<double>): Vade farkı.
    • data.paidDate (string<date-time>): Ödeme zamanı. Yalnızca doluysa döner.
    • data.posPoint (number<double>): POS puanı. Yalnızca doluysa döner.
    • data.refundId (string): İade kaydı kimliği.
    • data.createdOn (string<date-time>): Oluşma zamanı. Yalnızca doluysa döner.
    • data.statusName (string): İade durumu adı.
    • data.paymentType (string): Ödeme tipi.
    • data.refundTotal (number<double>): İade edilecek tutar.
    • data.transactionId (string): İşlem kimliği. Yalnızca doluysa döner.
    • data.paymentMethodId (string): Ödeme yöntemi kimliği.
    • data.transactionCode (string): İşlem kodu. Yalnızca doluysa döner.
    • data.captureTransactionId (string): Tahsilat işlem kimliği. Yalnızca doluysa döner.
  • isSuccess (boolean, zorunlu): İşlem başarılı ise true.
  • statusCode (string): Kullanılmıyor; genellikle null.
  • errorMesssage (string): Hata mesajı. Yalnızca hata varsa döner.