# 5.9 Müşteri İşlemlerini Getir

Haso sisteminde tanımlı bir müşterinin onaylanmış işlemlerinin güncel ödeme planını (taksit detaylarını) istediğiniz zaman bu metod ile alabilirsiniz. İşlemler yeniden eskiye göre sayfalama ile listelenir.

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

#### Giriş Parametreleri

<table data-full-width="true"><thead><tr><th width="182">Parametre adı </th><th width="123">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>customerId</td><td>String(10)</td><td>Z</td><td>Haso sisteminde müşterinin sahip olduğu unique değerdir. Limit tanımında size gönderilmişti.</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><mark style="color:red;">merchantId + customerId + 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.</td></tr><tr><td>transactionCodes</td><td>List&#x3C;String></td><td>O</td><td>Müşterinin bazı işlemlerinin ödeme planını almak isterseniz transactionCode değerlerini array olarak gönderebilirsiniz.</td></tr><tr><td>pageNo</td><td>Int</td><td>O</td><td>Geçerli sayfa numarasıdır. Gönderilmezse varsayılan 1 kabul edilir.</td></tr><tr><td>pageSize</td><td>Int</td><td>O</td><td>Bir sayfada kaç adet işlem gelmesini istiyorsanız bu parametreyi kullanabilirsiniz. Gönderilmezse varsayılan 50 değerini alı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="156">Parametre adı</th><th width="225">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 işlem listesi vardır. Data parametresi içeriği ise şöyledir:

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

Transactions Model içeriği şöyledir.

<table data-full-width="true"><thead><tr><th width="468">Parametre adı</th><th width="140">Parametre adı</th><th>Açıklama</th></tr></thead><tbody><tr><td>Transactions.TransactionCode</td><td>String</td><td>Her işlem için unique olan işlem kodu değeridir.</td></tr><tr><td>Transactions.MerchantOid</td><td>String</td><td>Eticaret lokal sipariş numarasıdır.</td></tr><tr><td>Transactions.CustomerId</td><td>String</td><td>İşlemin sahibi olan müşteriyi tanımlayan unique bir değerdir.</td></tr><tr><td>Transactions.TotalAmount</td><td>Decimal</td><td>Toplam işlem tutarıdır.</td></tr><tr><td>Transactions.Fee</td><td>Decimal</td><td>Sipariş tutarı haricinde ödenecek toplam ekstra tutardır.</td></tr><tr><td>Transactions.counterPartyAttorneyFee</td><td>Decimal</td><td>İcraya verilen işlem için KYVU değeri</td></tr><tr><td>Transactions.expenseAmount</td><td>decimal</td><td>İcraya verilen işlem için masraf değeri</td></tr><tr><td>Transactions.transactionStatus</td><td>Int</td><td>İşlemin durumun bildiren durum kodudur.</td></tr><tr><td>Transactions.transactionStatusText</td><td>Int</td><td>İşlem durumunun açıklamasıdır.</td></tr><tr><td>Transactions.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>Transactions.TransactionPayments.InstallmentNo</td><td>Integer</td><td>Kaçıncı taksit olduğunu belirten değerdir.</td></tr><tr><td>Transactions.TransactionPayments.InstallmentPayment</td><td>Decimal</td><td>Taksit tutarını belirten değerdir.</td></tr><tr><td>Transactions.TransactionPayments.TermDate</td><td>DateTime</td><td>Taksit vade tarihidir.</td></tr><tr><td>Transactions.TransactionPayments.PaymentStatus</td><td>Int</td><td>Taksit durum kodudur.</td></tr><tr><td>Transactions.TransactionPayments.PaymentStatusText</td><td>String</td><td>Taksitin durumunu gösteren string ifadedir</td></tr><tr><td>Transactions.TransactionPayments.PaymentCode</td><td>String</td><td>Her ödeme kaydı için verilen unique bir değer.</td></tr><tr><td>Transactions.TransactionPayments.totalExpenseAmount</td><td>Decimal</td><td>İcraya verilen işlem için ktvu ve diğer masraflar toplamının taksite yansıtılan değer</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.9-musteri-islemlerini-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.
