Doğrudan Bayi Oluşturma İşlemi
Servis Adresi
POST /Dealer/CreateDirectDealer
İstek Parametreleri
PaymentDealerAuthentication
| Parametre | Açıklama |
|---|---|
| DealerCode string | Ruut sistemi tarafından verilen bayi kodu |
| Username string | Ruut sistemi tarafından verilen Api kullanıcı adı |
| Password string | Ruut sistemi tarafından verilen Api şifresi |
| CheckKey string | Kontrol anahtarı (DealerCode + "MK" + Username + "PD" + Password) String olarak birleştirilen bu bilgilerin SHA-256 hash algoritmasından geçirilmesiyle oluşturulur. Buraya tıklayarak deneme ekranına gidebilirsiniz. |
PaymentDealerRequest
| Parametre | Açıklama |
|---|---|
| DealerType integer | 1 :Gerçek Kişi(Vergi Levhası olmayan), 2 :Tüzel Kişi (Ltd.A.Ş), 3: Tüzel Kişi (Şahıs Firması) (Zorunlu) |
| TRIdentityNumber string | Tc Kimlik Numarası (11 hane), Gerçek kişi için zorunlu |
| IndividualName string | Ad Soyad (max 50 chars), Gerçek kişi için zorunlu |
| TaxNumber string | Vergi Numarası (10 hane), Tüzel kişi için zorunlu) |
| CompanyName string | Firma Adı (max 100 chars), Tüzel kişi için zorunlu |
| ContactName string | Yetkili Adı (max 50 chars), Tüzel kişi için zorunlu |
| Email string | Bayi email adresi (max 100 chars). (Zorunlu) |
| PhoneNumber string | Bayi telefon numarası (5351112233 formatında). (Zorunlu) |
| CityCode integer | Bayinin bulunduğu şehrin plaka kodu. (Zorunlu) |
| CountryCode integer | Bayinin bulunduğu ülkenin kodu, opsiyonel, 212:Türkiye, 232:Kıbrıs, değer verilmezse default 212 atanır. |
| Address string | Bayinin açık adresi (Mah.,Cad.,Sok.,Daire bilgileri). (Zorunlu) (max 200 chars) |
| IBanFullName string | Paranın yatırılacağı hesap sahibinin adı soyadı. (Zorunlu) |
| IBan string | Paranın yatırılacağı banka hesap numarasıdır. (TR yazılmadan 24 Hane olacak şekilde gönderilmesi gerekmektedir. ÖRN: 112233445566778899001122) (Zorunlu) |
| BlockedDayNumber integer | Bayinin parasının ne kadar süre sonra yatıralacağının bilgisidir.Örneğin bu alana 1 değeri verilirse ve ödeme Pazartesi yapılmışsa para bayinin hesabına Çarşamba günü yatacaktır. Aynı senaryo için değer 4 verilirse (Çarşamba:1, Perşembe:2, Cuma:3, Cumartesi:4) para hesaba iş günü yatırılacağından dolayı Pazartesi yatırılmış olur. Bu alanın defaultu 0’dır, ertesi gün yatacak demektir. (Opsiyonel) |
| PaymentDaysOfWeek string | Haftanın hangi günlerinde bu bayiye ödeme yapilacak?(0: Kısıtlama yok, 1: Pazartesi, 2: Salı, 3: Çarşamba, 4: Perşembe, 5: Cuma, ‘1,2,3,4,5 değerleri aralarına virgül konarak aynı anda gönderilebilir.’ (Opsiyonel) |
| RuutPosProposalTemplateLimitId integer | Ruut’ nın size vereceği bir ID dir. Bayinin limitlerini tanımlanmasını sağlar. (Zorunlu) |
| RuutPosProposalTemplateRateId integer | Ruut’ nın size vereceği bir ID dir. Bayinin komisyon oranlarının tanımlanmasını sağlar. (Zorunlu) |
| NOT: TRIdentityNumber ve IBan parametrelerinin doğruluğu yapılmaktadır.Geçerli Iban ve TC kimlik numarası göndermeniz gerekmektedir. |
Returns
| Parametre | Açıklama |
|---|---|
| DealerCode string | Bayi API kodu |
| Username string | Bayi API kullanıcı adı (15 chars) |
| Password string | Bayi API şifresi (20 chars) |
Örnek İstek (JSON)
{
"DealerAuthentication":{
"DealerCode":"xxx",
"Username":"xxx",
"Password":"xxx",
"CheckKey":"16ad326fcd85e6bbe946ac55d5638ab239da7efa9145d2f4cd57939c9e8de430"
},
"DealerRequest":{
"DealerType":2,
"TaxNumber":"0123456789",
"CompanyName":"Ruut Ödeme Kuruluşu",
"ContactName":"Ali Aydın",
"Email":"moka.operasyon@ruutapp.com",
"PhoneNumber":"5300000000",
"RuutPosProposalTemplateLimitId":"3",
"RuutPosProposalTemplateRateId":"1",
"IBan":"1010111200000000664446903",
"IBanFullName":"Elif Deneme",
"BlockedDayNumber":"2",
"CityCode":"34",
"Address":"Cumhuriyet Mahallesi Adnan Menderes Caddesi NO:22/C Taşdelen,Çekmeköy/İstanbul"
}
}
Başarılı İstek Sonucu
Gönderilen istek verileri Ruut’ da başarılı bir şekilde işlenmişse, geri dönüş nesnesinin "ResultCode" alanında "Success" bilgisi yazar. "Data" alanında ise bankadan dönen işlem sonucu bulunur. "Data" içinde yer alan "IsSuccessful" (true/false) alanı kontrol edilerek işlemin durumu kontrol edilir. Bu alanda false dönmesi durumunda aynı nesne içindeki ResultCode ve ResultMessage alanları kontrol edilerek işlemin sanal pos üzerinde neden başarısız olduğu görülebilir.
Başarılı Sonuç Örneği
{
"Data":{
"DealerCode":"2251",
"Username":"09a577f9-355d-4",
"Password":"55678f3a-68ad-4dbe-8"
},
"ResultCode":"Success",
"ResultMessage":"",
"Exception":null
}
Başarısız İstek Sonucu
Gönderilen istek verileri Ruut akışları içerisinde işlenemediyse, geri dönüş nesnesinin ResultCode alanında alttaki tablodaki hata kodlarından birisi bulunur.
Beklenmeyen yazılımsal bir hata oluştuğunda ise, ResultCode alanında EX yazar ve ResultMessage alanında alınan hata mesajı (Exception) yer alır.
Her iki durumda da, Data nesnesi null olarak gelir.
| ResultCode | Açıklama |
|---|---|
| Dealer.CheckDealerAuthentication.InvalidRequest | CheckKey hatalı ya da nesne hatalı ya da JSON bozuk olabilir. |
| Dealer.CreateDirectDealer.MissingRequest | Eksik istek bilgisi |
| Dealer.CreateDirectDealer.InvalidAccount | Böyle bir bayi bulunamadı, Bayi kodu, bayi kullanıcı adı ve/veya şifresi yanlış girilmiş. |
| Dealer.CreateDirectDealer.TRIdentityNumberIsRequired | TC kimlik numarası gerekli |
| Dealer.CreateDirectDealer.InvalidTRIdentityNumber | TC kimlik numarası geçersiz |
| Dealer.CreateDirectDealer.TaxNumberIsRequired | Vergi numarası gerekli |
| Dealer.CreateDirectDealer.InvalidTaxNumber | Vergi numarası geçersiz |
| Dealer.CreateDirectDealer.CompanyNameIsRequired | Firma adı gerekli |
| Dealer.CreateDirectDealer.ContactNameIsRequired | Yetkili kişinin adı gerekli |
| Dealer.CreateDirectDealer.DealerTypeIsRequired | Üye iş yeri tipi gerekli |
| Dealer.CreateDirectDealer.EmailIsRequired | Email adresi gerekli |
| Dealer.CreateDirectDealer.InvalidEmailFormat | Email formatı geçersiz |
| Dealer.CreateDirectDealer.PhoneNumberIsRequired | Telefon numarası gerekli |
| Dealer.CreateDirectDealer.InvalidPhoneNumber | Telefon numarası geçersiz |
| Dealer.CreateDirectDealer.CityCodeRequired | Şehir kodu gerekli |
| Dealer.CreateDirectDealer.InvalidCityCodeOrCountryCode | Şehir kodu veya ülke kodu geçersiz |
| Dealer.CreateDirectDealer.AddressIsRequired | Adres bilgisi gerekli |
| Dealer.CreateDirectDealer.AddressIsNoMoreThan200Characters | Adres bilgisi 200 karakterden fazla olmamalıdır. |
| Dealer.CreateDirectDealer.IBanFullNameIsRequired | Paranın yatırılacağı hesap sahibinin tam adı gerekli |
| Dealer.CreateDirectDealer.IBanIsRequired | IBAN numarası gerekli |
| Dealer.CreateDirectDealer.IBanIsFalse | IBAN numarası yanlış girilmiş. |
| Dealer.CreateDirectDealer.CreateDirectDealerNotAllowed | Üye iş yerinin pazaryeri alt üye iş yeri oluşturma yetkisi yok. |
| Dealer.CreateDirectDealer.RuutPosProposalTemplateLimitIdIsRequired | Üye iş yerinin limitlerini tanımlanmasını sağlayan Id gerekli |
| Dealer.CreateDirectDealer.RuutPosProposalTemplateRateIdIsRequired | Üye iş yerinin komisyon oranlarının tanımlanmasını sağlayan Id gerekli |
| Dealer.CreateDirectDealer.InvalidRuutPosProposalTemplateRateId | Üye iş yerinin komisyon oranlarının tanımlanmasını sağlayan Id geçersiz |
| Dealer.CreateDirectDealer.InvalidRuutPosProposalTemplateLimitId | Üye iş yerinin limitlerini tanımlanmasını sağlayan Id geçersiz |
| Dealer.CreateDirectDealer.InvalidTemplates | Şablonlar geçersiz |
| Dealer.CreateDirectDealer.OperationWasInterrupted | Operasyon kesintiye uğradı. |
| EX | Beklenmeyen bir hata oluştu. |
Başarısız Sonuç Örneği
{
"Data":null,
"ResultCode":"Dealer.CreateDealer.EmailIsRequired ",
"ResultMessage":"",
"Exception":null
}