İçeriğe geç

Alışveriş Kredisi API Entegrasyonu

API’ye erişim için yetkilendirme gereklidir. Yetkilendirme için Bearer Token kullanılmaktadır.

Endpoint: /loans/authenticate Method: POST Content-Type: application/json

{
"username": "string",
"password": "string",
"merchantNo": 0,
"apiSecretKey": "string"
}
ParametreTipAçıklamaZorunlu
usernamestringÜye iş yeri API kullanıcı adıZorunlu
passwordstringÜye iş yeri API parolasıZorunlu
merchantNointegerÜye iş yeri numarasıZorunlu
apiSecretKeystringÜye iş yerine ait benzersiz anahtar (Nkolay tarafından iletilir)Zorunlu
{
"token": "eyJhbGciOiJIUzUxMiJ9.eyJtZXJjaGFudF9ubyI6NDAwM..."
}

Alınan token değeri, sonraki tüm API çağrılarında Authorization başlığına Bearer şeklinde eklenmelidir.

Örnek Authorization Header:

Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJtZXJjaGFudF9ubyI6NDAwM...

Anlaşmalı bankaların listesini getirir. Bu bilgi, son kullanıcının ekranında bankaları göstermek amacıyla kullanılması tavsiye edilir.

Endpoint: /loans/v1/facilitate/query/banks Method: POST Content-Type: application/json

Gövde boş bırakılabilir:

{}
{
"banks": [
{
"countryId": "TR",
"code": "AKTIFBANK",
"type": "AKTIFBANK",
"name": "Aktif Bank",
"description": "Aktif Yatırım Bankası A.Ş.",
"active": true
}
]
}
ParametreTipAçıklama
banksarray[object]Bankaların listesi
countryIdstringÜlke ID
codestringBanka kodu (oturum açarken kullanılır)
typestringBanka tipi
namestringBanka adı
descriptionstringBanka açıklaması
activebooleanBankanın aktif olup olmadığı

Belirli bir banka için yeni bir kredi oturumu başlatır. Bu servisin sonucunda dönen referenceId değeri, sonraki API çağrılarında kullanılacaktır.

Endpoint: /loans/v1/facilitate/sessions/{bankCode} Method: POST Content-Type: application/json

ParametreTipAçıklamaÖrnek
bankCodestring (path)Banka kodu (Banka Sorgulama servisinden alınan code değeri)AKTIFBANK

Gövde boş bırakılabilir:

{}
{
"referenceId": "7b942ca7-7ecd-4b45-9581-855a6f5c4856"
}
ParametreTipAçıklama
referenceIdstringKredi oturumu referans ID’si. Bu ID, ödeme simülasyonu ve ön kredi değerlendirmesi servislerinde kullanılacaktır.

Belirli bir kredi tutarı ve vade için aylık ödeme simülasyonu yapar. Müşterinize farklı taksit seçeneklerini göstermek için kullanabilirsiniz.

Endpoint: /loans/v1/facilitate/simulation/{bankSessionReferenceId} Method: POST Content-Type: application/json

ParametreTipAçıklama
bankSessionReferenceIdstring (path)Banka oturumu açma işleminden dönen referenceId değeri
{
"maxTerm": 6,
"cart": {
"price": {
"itemsPrice": 20000.00,
"shippingPrice": 100.00,
"totalPrice": 20100.00
},
"items": [
{
"productName": "Ürün Adı",
"categoryCode": "Kategori Kodu",
"quantity": 1,
"price": 20000.00,
"totalPriceWithoutDiscounts": 20000.00,
"totalPrice": 20000.00
}
]
}
}
ParametreTipAçıklamaZorunlu
maxTermintegerMaksimum vade sayısıİsteğe Bağlı
cartobjectAlışveriş sepeti bilgileriİsteğe Bağlı
cart.priceobjectFiyat bilgileriZorunlu
cart.price.itemsPricenumberÜrünlerin toplam fiyatıZorunlu
cart.price.shippingPricenumberKargo fiyatıZorunlu
cart.price.totalPricenumberToplam fiyat (ürünler + kargo)Zorunlu
cart.itemsarray[object]Sepetteki ürünlerin listesiZorunlu
cart.items[].productNamestringÜrün adıZorunlu
cart.items[].categoryCodestringÜrün kategori koduZorunlu
cart.items[].quantityintegerÜrün adediZorunlu
cart.items[].pricenumberÜrün birim fiyatıİsteğe Bağlı
cart.items[].totalPriceWithoutDiscountsnumberİndirimsiz toplam fiyatZorunlu
cart.items[].totalPricenumberİndirimli toplam fiyatZorunlu
{
"bankResponseCode": "0",
"bankResponseMessage": "İşlem Başarılı",
"success": true,
"monthlyPayments": [
{
"term": 3,
"amount": 7442.8,
"interestRate": 4.19,
"totalPaymentAmount": 22328.38,
"annualEffectiveInterestRate": 88.9774,
"monthlyEffectiveInterestRate": 7.4148
},
{
"term": 6,
"amount": 4016.84,
"interestRate": 4.19,
"totalPaymentAmount": 24101.05,
"annualEffectiveInterestRate": 88.9781,
"monthlyEffectiveInterestRate": 7.4148
}
]
}
ParametreTipAçıklama
bankResponseCodestringBanka cevap kodu (“0” = başarılı)
bankResponseMessagestringBanka cevap mesajı
successbooleanİşlemin başarılı olup olmadığını belirtir
monthlyPaymentsarray[object]Aylık ödeme planları listesi
monthlyPayments[].termintegerVade sayısı (ay)
monthlyPayments[].amountnumberAylık ödeme miktarı (TL)
monthlyPayments[].interestRatenumberFaiz oranı (%)
monthlyPayments[].totalPaymentAmountnumberToplam ödeme miktarı (TL)
monthlyPayments[].annualEffectiveInterestRatenumberYıllık efektif faiz oranı (%)
monthlyPayments[].monthlyEffectiveInterestRatenumberAylık efektif faiz oranı (%)

Müşteri ve sepet bilgilerini ileterek müşterinin ön onaylı kredi limitini sorgular. Kredi başvurusu yapmadan önce bu servisin çağrılması zorunludur.

Endpoint: /loans/v1/facilitate/pre-approved/{bankSessionReferenceId} Method: POST Content-Type: application/json

ParametreTipAçıklama
bankSessionReferenceIdstring (path)Banka oturumu açma işleminden dönen referenceId değeri
{
"nationalIdentityNumber": "12345678901",
"gsmNumber": "5551234567",
"orderId": "ORDER-12345",
"maxTerm": 6,
"cart": {
"price": {
"itemsPrice": 20000.00,
"shippingPrice": 100.00,
"totalPrice": 20100.00
},
"items": [
{
"productName": "Ürün Adı",
"categoryCode": "Kategori Kodu",
"quantity": 1,
"price": 20000.00,
"totalPriceWithoutDiscounts": 20000.00,
"totalPrice": 20000.00,
"sellerExternalId": "SELLER-001",
"commissionRate": 1.00,
"withholdingTax": 0.10,
"marketplaceCost": 2.00
}
]
}
}
ParametreTipAçıklamaZorunlu
nationalIdentityNumberstringMüşterinin T.C. Kimlik Numarası (11 haneli)Zorunlu
gsmNumberstringMüşterinin telefon numarası (5XXXXXXXXX formatında)Zorunlu
orderIdstringSipariş numarası (benzersiz olmalı)Zorunlu
maxTermintegerİstenilen maksimum vade sayısıZorunlu
cartobjectSepet bilgileriZorunlu
cart.items[].sellerExternalIdstringSatıcı ID (pazaryeri için)İsteğe Bağlı
cart.items[].commissionRatenumberKomisyon oranı (%)İsteğe Bağlı*
cart.items[].commissionAmountnumberKomisyon tutarı (TL)İsteğe Bağlı*
cart.items[].withholdingTaxnumberStopaj vergisiİsteğe Bağlı
cart.items[].marketplaceCostnumberPazaryeri maliyetiİsteğe Bağlı

Not: commissionRate ve commissionAmount alanlarından yalnızca bir tanesi dolu gönderilmelidir.

{
"success": true,
"referenceId": "50171152-66c5-4374-9f82-6a97c9e6d5d0",
"bankSuccess": true,
"bankResponseCode": "0",
"bankResponseMessage": "İşlem Başarılı",
"monthlyPayments": [
{
"term": 3,
"interestRate": 4.19,
"amount": 7442.8,
"totalPaymentAmount": 22328.38,
"annualEffectiveInterestRate": 88.9774,
"type": "CONSUMER_LOAN"
}
]
}
ParametreTipAçıklama
successbooleanİşlemin başarılı olup olmadığını belirtir
referenceIdstringReferans ID. Bu ID, kredi başvuru servisinde kullanılacaktır.
bankSuccessbooleanBanka tarafından onaylanıp onaylanmadığını belirtir
bankResponseCodestringBanka cevap kodu
bankResponseMessagestringBanka cevap mesajı
monthlyPaymentsarray[object]Aylık ödeme planı (Simülasyon servisi ile aynı formatta)
monthlyPayments[].typestringKredi tipi (örn: CONSUMER_LOAN)

Alışveriş kredisi entegrasyonunu tamamlamak için şu sırayı takip edin:

  1. Kimlik Doğrulama - Bearer Token alın
  2. Banka Sorgulama - Müşteriye gösterilecek banka listesini alın
  3. Banka Oturumu Başlatma - Seçilen banka için oturum başlatın
  4. Ödeme Simülasyonu (Opsiyonel) - Farklı vade seçeneklerini gösterin
  5. Ön Kredi Değerlendirmesi - Müşterinin kredi uygunluğunu kontrol edin
  6. Kredi Başvurusu - Sonraki adım →