5.2.1 Limit İsteğinin Başlatılması
Müşterinin bilgileri ile Kkb talebinin veya ön tanımlı limit isteğinin başlatıldığı servistir. Gönderilen Tckn eğer sistemde yoksa öncelikle müşteri Haso sistemine kaydedilir. Eğer müşteri Haso sisteminde kayıtlı değil ise veya kayıtlı olmasına rağmen limit belirlenmesi gerekiyorsa Kkb talebi yapılır. Kkb talebi başarılı yapıldı ise Kkb tarafından müşterinin telefonuna Pin Kodu gönderilir. 2. Adımda girilecek olan PinKodu ile birlikte gönderilmek üzere KkbRefNo parametresi çıkış parametrelerinde yer alır. Kkb talebi başarısız ise hata kodu geri döner. Eğer müşteri Haso sisteminde kayıtlı ve limit belirlenmesine ihtiyaç yoksa response olarak müşterinin mevcut limitini içeren CustomerInfo modeli döner. Ön tanımlı limit verilmek isteniyorsa PreDefinedLimit request parametresi sıfırdan büyük gönderilmelidir. PreDefinedLimit>0 ise kkb isteği yapılmadan otp doğrulaması ile satıcı limiti müşteriye tanımlanır.
Servis Url: {SERVIS_URL}/RequestV2/HasoAuthSendInfo
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)
shopperName
String
Z
Müşterinin adı bilgisidir. Tckn doğrulamada kullanıldığı için müşterinin kimliğinde nasıl yazıyorsa aynen girilmesi gerekir. Eğer orta adı var ise o da girilmelidir.
shopperSurname
String
Z
Müşterinin soyadı bilgisidir. Tckn doğrulamada kullanıldığı için müşterinin kimliğinde nasıl yazıyorsa aynen girilmesi gerekir.
tckn
String(11)
Z
Müşterinin 11 haneli tckn bilgisidir.
mobileNumber
String(10)
Z
Başında ülke kodu veya sıfır olmadan girilen 10 haneli cep telefonu numarasıdır. Örneğin 5161112233 formatında gönderilmelidir.
String
Z
Müşterinin sisteme kayıt olacağı email adresidir.
dealerSegment
String(10)
Z
Müşterinin satıcı tarafındaki segmentidir.
birthDate
DateTime
Z
“yyyy-mm-dd” olarak gönderilmesi gereken doğum tarihi parametresidir. Tckn doğrulamada doğum yılı gerektiği için önemli bir parametredir.
PreDefinedLimit
String
O
Ön tanımlı limit tutarıdır. 100 ile çarparak gönderiniz. Ondalık basamak olmamalıdır.
testOn
Bool
O
Gerçek Kkb isteği yapmamak için kullanılır. Eğer true gönderilirse gerçek kkb isteği yapılmaz. Sadece sandbox ortamında çalışır.
skipTcknValidation
Bool
O
True gönderilirse nvi servislerinden tckn doğrulaması yapılmaz. Sadece tckn’nin 11 karakterli nümerik olması kontrolü yapılır.
SpecialLimit
String
O
Müşterinin alacağı kendi limitine ilave olarak özel limit tanımlanmak isterse bu parametre ile özel limit değeri gönderilebilir.
forceToPredefinedLimit
Bool
O
Ön tanımlı limit göderildiğinde başka şarta bakmadan ön tanımlı limitin kullanıcıya tanımlanması zorlanır.
requestToken
String
Z
merchantId + ipAddress + shopperName + shopperSurname
+ tckn + birthDate + mobileNumber + email + dealerSegment + 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.
Müşteri Haso sisteminde kayıtlı değilse veya olmasına rağmen Kkb sorgusu ihtiyacı varsa kkb talebi yapılır. Bu durumda Data parametresi içeriğinde şu key değerleri olur.
Data[“KkbRefNo”]
String
ve 3. adımda request olarak kullanılacaktır.
Data[“Message”]
String
Bilgi mesajıdır.
Data[“KkbPhones”]
List<string>
Kkb’de tanımlı olan telefon numaralarının maskelenmiş formatıdır.
Data[“CustomerId”]
String
Kaydedilen müşteri için verilen unique değerdir. Bu değeri kendi sisteminizde müşteri ile eşleştirmek için kullanabilirsiniz.
Data[“OtpCode”]
String
Öntanımlı limiti gönderilmiş ise otp sms işlemini satıcı kendisi gönderecekse müşteriye gönderilecek sms içeriğinde yer alacak olan kod değeridir.
Eğer müşteri zaten Hasoda kayıtlı ve Kkb sorgu ihtiyacı yoksa CustomerId ve güncel limit bilgisini içeren CustomerInfo model döner. Normalde müşterinin limit ihtiyacı yok ise zaten bu endpoint çağrılmamalıdır.
Data[“CustomerInfo”]
Model
GetCustomerInformation endpointinde de bulunan response modeldir.