# 5.5 Ödeme Planını Getir

Haso sisteminde onaylanmış bir işlemin güncel ödeme planını (taksit detaylarını) istediğiniz zaman bu metod ile alabilirsiniz.

İşlem ilk onaylandığında başvuru sonucunda size zaten ödeme planı döner. Gelen ödeme planını kendi sisteminize kaydetmenizi ve müşterinize gerekli gördüğünüz yerlerde kendi sisteminizden göstermenizi tavsiye ederiz. Bu metodun kullanılma amacı ise iptal, iade veya zamanla taksitlerde ödeme yapılması durumunda taksit durumları değişeceği için kendi sisteminizdeki ödeme planı tablonuzu güncellemenizi sağlamaktır.

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

#### Giriş Parametreleri

<table data-full-width="true"><thead><tr><th width="171">Parametre adı</th><th width="146">Parametre Tipi</th><th width="63">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>requestToken</td><td>String</td><td>Z</td><td><p></p><p><mark style="color:red;">merchantId + merchantOid + transactionCode + ipAddress + merchantSalt</mark> parametrelerinden oluşan string parametre 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. Örnek token oluşturma için örnek kodlarımızı inceleyiniz.</p></td></tr><tr><td>transactionCode</td><td>String</td><td>Z</td><td>Ödeme planını getirmek istediğiniz işlemin Haso sistemindeki işlem numarasıdır. Başvuru sonucunda okUrl’e düşen response parametrelerinde bu değer vardır</td></tr><tr><td>merchantOid</td><td>String</td><td>Z</td><td>Haso işlem numarası ile eşleştirilmiş kendi sipariş numaranızdır.</td></tr></tbody></table>

Giriş parametreleri Servis Url adresine WebRequest ile post isteği yapılır. İstek sonucunda Json olarak çıkış 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>bool</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 taksit değerleri vardır. Data parametresi içeriği ise şöyledir:

<table data-full-width="true"><thead><tr><th width="275">Parametre adı </th><th width="78">Tipi</th><th>Açıklama</th></tr></thead><tbody><tr><td>Data[“<mark style="color:red;">TransactionPayments</mark>”]</td><td>String</td><td>İşleme ait ödeme planını içerek json modeldir.</td></tr></tbody></table>

Transaction Payments Model içeriği şöyledir.

<table data-full-width="true"><thead><tr><th width="363">Parametre adı </th><th width="104">Tipi</th><th>Açıklama</th></tr></thead><tbody><tr><td>TransactionCode</td><td>String</td><td>Request olarak gönderilen transactionCode ile karşılaştırılması için kullanılabilecek bir değerdir.</td></tr><tr><td>MerchantOid</td><td>String</td><td>Request olarak gönderilen merchantOid ile karşılaştırılması için kullanılabilecek bir değerdir.</td></tr><tr><td>CustomerId</td><td>String</td><td>İşlemin sahibi olan müşteriyi tanımlayan unique bir değerdir.</td></tr><tr><td>TotalAmount</td><td>Decimal</td><td>Toplam işlem tutarıdır.</td></tr><tr><td>Fee</td><td>Decimal</td><td>Sipariş tutarı haricinde ödenecek toplam ekstra tutardır.</td></tr><tr><td>Downpayment</td><td>Decimal</td><td>Bu işlem için müşteriden alınması gereken peşinat tutarını gösterir.</td></tr><tr><td>TransactionPayments</td><td>List</td><td>Ödeme planında kaç taksit varsa o kadar item içeren listedir. Listedeki elemanların parametreleri şunlardır.</td></tr><tr><td>TransactionPayments.InstallmentNo</td><td>Integer</td><td>Kaçıncı taksit olduğunu belirten değerdir.</td></tr><tr><td>TransactionPayments.InstallmentPayment</td><td>Decimal</td><td>Taksit tutarını belirten değerdir.</td></tr><tr><td>TransactionPayments.TermDate</td><td>DateTime</td><td>Taksit vade tarihidir.</td></tr><tr><td>TransactionPayments.PaymentStatusText</td><td>String</td><td>Taksitin durumunu gösteren string ifadedir. “Ödendi” vs gibi değerler içerir.</td></tr><tr><td>TransactionPayments.PaymentCode</td><td>String</td><td>Her ödeme kaydı için verilen unique bir değer.</td></tr><tr><td>TransactionPayments.Fee</td><td>Decimal</td><td>Taksit için geçerli ekstra ücrettir.</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://storedocs.haso.com.tr/5.-servis-metodlari/5.5-odeme-planini-getir.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.
