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

Parametre adı
Parametre Tipi
Z/O
Açıklama

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

Parametre adı
Tipi
Açıklama

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.