# 5.2.2. Limit Talebinin Pin Kodu ile Onaylanması

Servis Url: <mark style="color:red;">{SERVIS\_URL}/RequestV2/SendKkbPinCode</mark>

#### Giriş Parametreleri

<table data-full-width="true"><thead><tr><th width="156">Parametre adı</th><th width="146">Parametre Tipi</th><th width="66">Z/O </th><th>Açıklama</th></tr></thead><tbody><tr><td>merchantId</td><td>String</td><td>Z</td><td>Haso tarafından size verilen sabit parametredir.</td></tr><tr><td>ipAddress</td><td>String</td><td>O</td><td>İstek yapan istemcinin ip adresi. (Önemli: Lokal makinenizde yapacağınız denemelerde mutlaka dış IP adresini gönderdiğinizden emin olun)</td></tr><tr><td>kkbRefNo</td><td>String</td><td>Z</td><td>İlk adımda dönen referans no bilgisidir.</td></tr><tr><td>pinCode</td><td>String</td><td>Z</td><td>Müşterinin telefonuna gönderilen Pin Kodunu sayfanızda girdiği değerdir.</td></tr><tr><td>testResult</td><td>String</td><td>O</td><td>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.</td></tr><tr><td>requestToken</td><td>String</td><td>Z</td><td><mark style="color:red;">merchantId + ipAddress + kkbRefNo + pinCode + merhant_salt</mark> 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. </td></tr></tbody></table>

Giriş parametreleri Servis Url adresine WebRequest ile post isteği yapılır. İstek sonucunda Json olarak response döner.

&#x20;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

<table data-full-width="true"><thead><tr><th width="155">Parametre adı</th><th width="227">Tipi</th><th>Açıklama</th></tr></thead><tbody><tr><td>Success</td><td><mark style="color:blue;">bool</mark></td><td>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.</td></tr><tr><td>Errors</td><td>List&#x3C;<mark style="color:blue;">string</mark>></td><td>Success=false ise işlem ile ilgili hataları liste şeklinde getirir.</td></tr><tr><td>Data</td><td>Dictionary&#x3C;<mark style="color:blue;">string</mark>, <mark style="color:blue;">object</mark>></td><td>Eğer success=true ise key-value şeklinde data döner.</td></tr></tbody></table>

Rapor sonucu belli olmamışsa 3. Adımda kullanılmak üzere KkbRefNo ve durumu belirten Message değerleri Data içinde yer alır.

<table data-full-width="true"><thead><tr><th width="185">Parametre adı</th><th width="80">Tipi</th><th>Açıklama</th></tr></thead><tbody><tr><td>Data[“KkbRefNo”]</td><td>String</td><td><p></p><ol start="3"><li>adımda request olarak kullanılacaktır.</li></ol></td></tr><tr><td>Data[“Message”]</td><td>String</td><td>M101 kodu ile 3.adımın çağrılabileceği belirtilir.</td></tr></tbody></table>

Büyük olasılıkla rapor oluşacaktır. Bu durumda CustomerId ve güncel limit bilgisini içeren CustomerInfo model döner.

<table data-full-width="true"><thead><tr><th width="212">Parametre adı</th><th width="94">Tipi</th><th>Açıklama</th></tr></thead><tbody><tr><td>Data[“CustomerInfo”]</td><td>Model</td><td>GetCustomerInformation endpointinde de bulunan response modeldir.</td></tr></tbody></table>
