İptal talebi oluştur
POST /Orders/CreateOrderItemLineCancelRequest — OMS API · İptal & İade
Sipariş satırları için iptal talebi açar. Talep satıcının iptal talepleri ekranına düşer; satıcı onaylar ya da reddeder ve sonuç size CancelShipmentRequestApprovedEvent / CancelShipmentRequestRejectedEvent webhook'uyla bildirilir. Gövde bir dizidir; tek istekte birden fazla kayıt gönderebilirsiniz.
Ne zaman çağrılır: Müşteri, satıcının henüz göndermediği bir ürünün iptalini istediğinde.
reasonIdiçinGetStatusReasonByType(statusType=Cancelled) kullanın.- Satır statüsü iptal talebine uygun değilse, adet yetersizse ya da
reasonIdhatalıysa HTTP 200,isSuccess: falsedöner. - Satır için bekleyen bir talep zaten varsa istek başarılı sayılır (tekrar denemeler güvenlidir).
- Kiracıda ödeme iadesi açıksa
dataiçinde oluşacak iade bilgileri döner.
İstek gövdesi
quantity(integer<int32>, zorunlu): İptal adedi (satır başına genellikle 1).reasonId(integer<int64>, zorunlu): İptal sebebi kimliği;GetStatusReasonByType(statusType=Cancelled) yanıtındakiid.reasonDesc(string): İptal açıklaması.refundAction(string): Ödeme iadesi şekli:refund(para iadesi, varsayılan) ya dacredit(iade çeki).sourceOrderItemLineId(string, zorunlu): İptal edilecek satırınsourceOrderItemLineIddeğeri.
Yanıtlar
- 200: Başarılı. Gövdedeki
isSuccessalanını mutlaka kontrol edin. - 400: Gövde doğrulanamadı (zorunlu alan eksik, tip uyumsuz ya da JSON bozuk). Yanıt ASP.NET Core
ValidationProblemDetailsbiçimindedir;errorsalanı hangi alanın hatalı olduğunu gösterir. - 401:
Authorizationbaşlığı yok, token geçersiz ya da süresi dolmuş. Gövde boş döner;/Auth/loginile yeni token alın. - 500: Beklenmeyen sunucu hatası. Bu yanıt PascalCase alan adlarıyla döner (diğer yanıtlardan farklı olarak) ve
nullalanlar 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ı isetrue.statusCode(string): Kullanılmıyor; genelliklenull.errorMesssage(string): Hata mesajı. Yalnızca hata varsa döner.