# 5.21. Satıcı Segmenti ile Ödeme planının Getirilmesi

Satıcı segmenti ödeme planındaki işlem ücretini etkiler. Bu sebeple satıcı segmenti ve sipariş tutarı parametreleri ile oluşacak olan taksit planını getirmek için kullanılır.Eğer satıcı segmenti Haso tarafında birden fazla segment ile ilişkili ise en yüksek işlem ücreti çıkacak Haso segmenti oranı ile ödeme planı hesaplanır.

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

#### Giriş Parametreleri

<table data-full-width="true"><thead><tr><th width="353">Parametre adı</th><th width="148">Parametre  Tipi</th><th width="64">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>dealerSegment</td><td>String</td><td>O</td><td>Müşterinin satıcı tarafındaki segmentidir</td></tr><tr><td>orderAmount</td><td>String</td><td>Z</td><td>Sipariş tutarı. 100 ile çarparak gönderiniz. Ondalık basamak olmamalıdır.</td></tr><tr><td>notCalculateFees</td><td>Bool</td><td>O</td><td>Ekstra ücret hesaplanmaması isteniyorsa true gönderilmeli.</td></tr><tr><td>forceRiskFreeEvaluate</td><td>Bool</td><td>O</td><td>true geldiğinde riskli müşterilerden ilk taksiti peşin olarak almayacak şekilde ayarlanır</td></tr><tr><td>postponeSelected</td><td>Bool</td><td>O</td><td>Taksitler ertelemeli olarak hesaplanacak ise true gönderilir. False ise taksitlerde erteleme yapılmaz.</td></tr><tr><td>RevisedFeeRate</td><td>İnt</td><td>O</td><td>Fee değerinde yapılacak değişikliği belirten değerdir. 100 ile çarparak gönderiniz. Ondalık basamak olmamalıdır. 0 gönderilirse veya gönderilmezse fee değerinde değişiklik yapılmaz. 20 gönderilirse yeni fee değeri orjinal feenin %20’sidir.</td></tr><tr><td>requestToken</td><td>String</td><td>Z</td><td><mark style="color:red;">merchantId + ipAddress + dealerSegment + orderAmount + 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><tr><td>basketList</td><td>List model</td><td>O</td><td>Sepette bulunan ürünleri aşağıdaki bilgileri gönderilirse erteleme, peşinat, taksit sayısı ve işlem ücreti gibi hesaplamalarda özelleştirme yapılabilir.</td></tr><tr><td>basketList.skuCode</td><td>String</td><td>O</td><td>Ürününüzün sku kodudur.</td></tr><tr><td>basketList.skudefinitionId</td><td>String</td><td>O</td><td>Ürün grubu kodudur.</td></tr><tr><td>basketList.skuAmount</td><td>İnt</td><td>O</td><td>Ürün tutarının 100 ile çarpılmış halidir.</td></tr><tr><td>basketList.skuMerchant</td><td>String</td><td>O</td><td>Ürünün satan satıcıya verdiğiniz koddur.</td></tr><tr><td>basketList.skuMerchantContributionRate</td><td>İnt</td><td>O</td><td>Taksit planında çıkan fee değerinin ürünün sepetteki oranına göre hangi satıcı ürünü için ne kadar fee olacağı hesaplanabilir. Böylelikle satıcı bazlı fee hesaplanabilir.</td></tr></tbody></table>

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

#### Çıkış Parametreleri

<table data-full-width="true"><thead><tr><th width="155">Parametre adı</th><th width="224">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>

Data parametresinde müşteri limit bilgileri ile taksit değerleri vardır. Data parametresi içeriği ise şöyledir:

<table data-full-width="true"><thead><tr><th width="280">Parametre adı</th><th width="109">Tipi</th><th>Açıklama</th></tr></thead><tbody><tr><td>Data[“FirstPaymentDate”]</td><td>DateTime</td><td>İlk ödeme günüdür</td></tr><tr><td>Data[“DownPaymentAmount”]</td><td>Decimal</td><td>Limit aşımı durumunda peşin alınacak tutar değeridir.</td></tr><tr><td>Data[“PostponeEnabled”]</td><td>Bool</td><td>Taksit Erteleme seçilip seçilemeyeceğini belirtir.</td></tr><tr><td>Data[“Installments”]</td><td>List</td><td>Sipariş tutarına göre kaç taksit olacaksa o sayıda item’a sahip bir liste gelir.</td></tr></tbody></table>

Listenin içindeki her bir taksit modeline ait alanlar ise şöyledir.

<table data-full-width="true"><thead><tr><th width="415.6666666666667">Parametre adı</th><th width="95">Tipi</th><th>Açıklama</th></tr></thead><tbody><tr><td>Installments.InstallmentNo</td><td>Int</td><td>Kaç taksit olacağını belirten taksit sayısıdır.</td></tr><tr><td>Installments.Price</td><td>Decimal</td><td>Taksit tutarıdır.</td></tr><tr><td>Installments.TransactionPrice</td><td>Decimal</td><td>Sipariş tutarıdır. Ekstra ücretler eklenmiş taksitler ilave olan tutar değildir. Taksitleri getirmek için orderAmount parametresi olarak gönderdiğiniz değerdir.</td></tr><tr><td>Installments.TotalAmount</td><td>Decimal</td><td>Toplam işlem tutarıdır.</td></tr><tr><td>Installments.downPayment</td><td>Decimal</td><td>Taksit kaydı eğer peşin alınacak ise bu tutar ile gösterilir.</td></tr><tr><td>Installments.Fee</td><td>Decimal</td><td>Sipariş tutarı haricinde ödenecek toplam ekstra tutardır.</td></tr><tr><td>Installments.originalFee</td><td>Decimal</td><td>Fee değerinde indirim yapıldığını göstermek için kullanılır. üstü çizili değerdir. İşlem ücreti listelerindeki değerdir.</td></tr><tr><td>Installments.feeDiscountCampaigns</td><td>List</td><td>Fee indirimi uygulanan kampanya adı ve indirim oranlarını listeler</td></tr><tr><td>Installments.merchantContributions</td><td>List</td><td>Requestte basketList parametresinde gönderilen skuMerchantContributionRate değerine göre hangi satıcının ne kadar işlem ücretini karşılayacağı gösterilir.</td></tr><tr><td>Installments.merchantContributions.skuCode</td><td>string</td><td>basketList ile gönderilen sku</td></tr><tr><td>Installments.merchantContributions.skuMerchant</td><td>string</td><td>basketList ile gönderilen merchant kodu</td></tr><tr><td>Installments.merchantContributions. skuMerchantContributionAmount</td><td>Decimal</td><td>Merchant için hesaplanan işlem ücreti katkı bedeli</td></tr><tr><td>Installments.PaymentPlan</td><td>List</td><td>Her taksit değeri için ödeme planını list olarak gösterir. Bu modele ait alt parametreler ise şöyledir.</td></tr><tr><td>Installments.PaymentPlan. InstallmentNo</td><td>Int</td><td>Ödeme planındaki taksit numarasıdır.</td></tr><tr><td>Installments.PaymentPlan. installmentPayment</td><td>Decimal</td><td>Ödeme planındaki taksitin tutarıdır.</td></tr><tr><td>Installments.PaymentPlan. termDate</td><td>Date</td><td>Ödeme planındaki taksidin vade tarihidir.</td></tr><tr><td>Installments.PaymentPlan.fee</td><td>Decimal</td><td>İşlemdeki fee değerinin taksit başına düşen değeri</td></tr><tr><td>Installments.PaymentPlan.originalFee</td><td>Decimal</td><td>İşlemdeki original fee değerinin taksit başına düşen değeri</td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://restdocs.haso.com.tr/5.-servis-metodlari/5.21.-satici-segmenti-ile-odeme-planinin-getirilmesi.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
