5.7 İşlemin İadesi
Başarılı bir işlemin tamamın veya bir kısmının iadesi gerçekteştirilir. Daha önce iade isteği başarılı olan refundId gönderilmiş ise H307 kodu ile iadenin daha önce yapıldığı bilgisi döner. Bu durumda CheckRefund servisi ile iade sonucu alınabilir.
Servis Url: {SERVIS_URL}/RequestV2/RefundTransaction
Giriş Parametreleri
merchantId
String
Z
Haso tarafından size verilen sabit parametredir.
ipAddress
String
O
İstek yapan istemcinin ip adresi. (Önemli: Lokal makinenizde yapacağınız denemelerde mutlaka dış IP adresini gönderdiğinizden emin olun)
transactionCode
String
Z
Her işlemin sahip olduğu unique bir değerdir. Başvuru sonucunda ödeme planında size bu bilgi gönderilir.
merchantOid
String(20)
Z
Kendi sisteminizde oluşturduğunuz sipariş için unique verdiğiniz sipariş numaranızdır.
refundAmount
String
Z
İade edilecek tutar. 100 ile çarparak gönderiniz. Ondalık basamak olmamalıdır. refundAmount siparişteki toplam ürün tutarı veya fazla gönderilir ise bütün ödeme kayıtlarını ve işlemi iptal eder. Az gönderilirse Kısmi İade olur.
refundId
String(36)
Z
Sizin tarafınızda oluşturulan İade işlemi için unique olacak maximum 36 karakter içerebilen parametredir. CheckRefund endpointinde bu parametre ile iadeyi kontrol edebilirsiniz.
requestToken
String
Z
merchantId + merchantOid + transactionCode + refundAmount + refundId + ipAddress + merhant_salt parametreleri ile sha256 algoritması ve HMAC(http://en.wikipedia.org/wiki/Hash-based_message_authentication_code) yöntemi ile şifreleyerek token oluşturur. Sonrasında token'ı base64 hale dönüştürür. token oluşturma için örnek kodlarımızı inceleyiniz.
Giriş parametreleri Servis Url adresine WebRequest ile post isteği yapılır. İstek sonucunda Json olarak response döner.
Çıkış Parametreleri
Success
bool
Yapılan isteğin başarılı sonuç dönüp dönmediğini bildirir. False dönerse Errors parametresi doludur. True dönerse Data parametresi doludur.
Errors
List<string>
Success=false ise işlem ile ilgili hataları liste şeklinde getirir.
Data
Dictionary<string, object>
Eğer success=true ise key-value şeklinde data döner.
Data[“Message”]
String
RS100 kodu ile işlemin başarılı olduğunu belirtir.
Data[“hasoRefundAmount”]
Decimal
İade edilen tutarın içinde bulunan, Müşterinin daha önceden ödeme yaptığı değerdir. Bu tutar kadar kredi kartı iadesi yapılabilir.
Data[“hasoRefundFeeAmount”]
Decimal
İşlemin tamamı iade edilmişse ekstra tutar değeri bu parametre ile gönderilir.
Data[“PaymentPlan”]
List
Her taksit değeri için ödeme planını list olarak gösterir. Bu modele ait alt parametreler ise şöyledir.
PaymentPlan.InstallmentNo
İnt
Ödeme planındaki taksit numarasıdır.
PaymentPlan.installmentPayment
Decimal
Ödeme planındaki taksitin tutarıdır.
PaymentPlan.termDate
Date
Ödeme planındaki taksidin vade tarihidir.