5.2.2. Limit Talebinin Pin Kodu ile Onaylanması
Limit belirlemenin ilk adımında başarılı bir şekilde talep başlatıldı ise müşteriye Pin kodu gönderilmiştir. Gönderilen pin kodu ile talebin onaylandığı servistir.
Servis Url: {SERVIS_URL}/RequestV2/SendKkbPinCode
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)
kkbRefNo
String
Z
İlk adımda dönen referans no bilgisidir.
pinCode
String
Z
Müşterinin telefonuna gönderilen Pin Kodunu sayfanızda girdiği değerdir.
testResult
String
O
Eğer 1. Adımda testOn=true gönderilmişse bu parametre ile istenen Kkb sonucu belirtilir. testResult dolu ise PinCode parametresinine herhangi bir değer verilebilir. testResult in (“A”,”B”,”C,”D”,”E”,”F”) gönderilirse sonuç başarılı ve bir limit değeri döner. E ve F için limit=0’dır. testResult=”RETRY” gönderilirse Kkb raporu henüz olaylanmamış tekrar deneyiniz gibi response döner.
requestToken
String
Z
merchantId + ipAddress + kkbRefNo + pinCode + 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.
Pin kodu ile talep onaylanırsa kkb rapor sonucu da kkbden talep edilir. Eğer kkb rapor sonucunu dönerse müşterinin limiti sonucu belli olur. Eğer reddedildiyse Success=false ile hata olarak response gelir. Reddedilmediyse rapor sonucu analiz edilerek müşterinin limiti oluşturulur. Bu durumda 3. Adıma gerek kalmayacaktır. Eğer kkbden rapor sonucu gelmez ise müşterinin limiti bu anda belirlenemez. Sistem tarafından belli aralıklarla rapor sonucu sorgulanacak ve rapor oluştuğu anda müşteri limiti sisteme kaydedilecektir. Siz de manuel olarak rapor sonucunu almak istediğinizde 3. Adımdaki servis çağrılmalıdır.
Çı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.
Rapor sonucu belli olmamışsa 3. Adımda kullanılmak üzere KkbRefNo ve durumu belirten Message değerleri Data içinde yer alır.
Data[“KkbRefNo”]
String
adımda request olarak kullanılacaktır.
Data[“Message”]
String
M101 kodu ile 3.adımın çağrılabileceği belirtilir.
Büyük olasılıkla rapor oluşacaktır. Bu durumda CustomerId ve güncel limit bilgisini içeren CustomerInfo model döner.
Data[“CustomerInfo”]
Model
GetCustomerInformation endpointinde de bulunan response modeldir.