# İşlem Listeleme Servisi

**İşlem Listeleme Servisi İstek Modeli;**

<table><thead><tr><th width="109.33333333333331">Metod</th><th width="519">API URL</th><th>Parametreler</th></tr></thead><tbody><tr><td>POST</td><td>https://base-url/api/services/GetPaymentList</td><td>JSON File</td></tr></tbody></table>

Servise gönderilmesi gereken parametreler şu şekildedir;

<table><thead><tr><th width="186">Parametre</th><th width="113">Tip</th><th width="89">Zorunlu</th><th>Açıklama</th></tr></thead><tbody><tr><td>MERCHANT</td><td>string</td><td>Evet</td><td>Üye iş yerine özel oluşturulan eşsiz kimlik bilgisidir.</td></tr><tr><td>MERCHANT_KEY</td><td>string</td><td>Evet</td><td>Üye iş yerine özel oluşturulan anahtar bilgisidir.</td></tr><tr><td>START_DATE</td><td>string</td><td>Evet</td><td>Sorgu için başlangıç tarih bilgisidir.</td></tr><tr><td>END_DATE</td><td>string</td><td>Evet</td><td>Sorgu için bitiş tarih bilgisidir.</td></tr></tbody></table>

Servise gönderilecek örnek bir JSON dosyası şu şekildedir;

```json
                                            
{
      "MERCHANT": "TEST1234" , 
      "MERCHANT_KEY": "4oK26hK8MOXrIV1bzTRVPA==" ,
      "START_DATE" : "01-06-2020",
      "END_DATE" : "05-06-2020"
}
                                        
```

**İşlem Listeleme Servisi Cevap Mesajı;**

Servisten işlem sonrasında gönderilen cevap mesajına ait parametreler şu şekildedir;

İşlem Listeleme Servisi Cevap Mesajı Parametreleri

<table><thead><tr><th>Parametre</th><th width="106">Tip</th><th width="98">Zorunlu</th><th>Açıklama</th></tr></thead><tbody><tr><td>ID</td><td>int</td><td>Evet</td><td>Ödeme için sistem tarafından oluşturulan id bilgisidir.</td></tr><tr><td>MERCHANT</td><td>string</td><td>Evet</td><td>Üye iş yerine özel oluşturulan eşsiz isim bilgisidir.</td></tr><tr><td>DEALERID</td><td>int</td><td>Evet</td><td>Üye iş yerine özel oluşturulan eşsiz id bilgisidir.</td></tr><tr><td>DEALER_CODE</td><td>int</td><td>Evet</td><td>Üye iş yerine özel oluşturulan eşsiz kod bilgisidir.</td></tr><tr><td>INSERT_DATETIME</td><td>string</td><td>Evet</td><td>Ödemenin sisteme kaydedildiği zaman bilgisidir.</td></tr><tr><td>CARD_TYPE</td><td>string</td><td>Evet</td><td>Kart tipi bilgisidir.</td></tr><tr><td>CARD_NUMBER</td><td>string</td><td>Evet</td><td>Ödeme işleminin gerçekleştirileceği karta ait 16 haneli kart numarası bilgisidir. Kart bilgisi şifrelenmiş şekilde paylaşılır.</td></tr><tr><td>CARD_NAME</td><td>string</td><td>Evet</td><td>Kart isim bilgisidir.</td></tr><tr><td>CARD_BANK_NAME</td><td>string</td><td>Evet</td><td>Kartın ait olduğu banka bilgisidir.</td></tr><tr><td>CARD_FAMILY</td><td>string</td><td>Evet</td><td>Kart ailesi bilgisidir.</td></tr><tr><td>CURRENCY</td><td>string</td><td>Evet</td><td>Ödeme para birimi bilgisidir. Şu an için sadece “TRY, USD, EUR, GBP” kullanılmaktadır.</td></tr><tr><td>VIRTUALPOS_NAME</td><td>string</td><td>Evet</td><td>Sanal pos isim bilgisidir.</td></tr><tr><td>STATUS_NAME</td><td>string</td><td>Evet</td><td>Durum bilgisidir.</td></tr><tr><td>INSTALLMENT</td><td>int</td><td>Evet</td><td>Ödeme işlemine ait taksit bilgisidir.</td></tr><tr><td>AMOUNT</td><td>string</td><td>Evet</td><td>Ödeme işlemine ait miktar bilgisidir.</td></tr><tr><td>COMMISSION_AMOUNT</td><td>double</td><td>Evet</td><td>Komisyon miktarı bilgisidir.</td></tr><tr><td>DEALER_PAYMENT_REF_CODE</td><td>string</td><td>Evet</td><td>Üye iş yeri ödeme referans kod bilgisidir.</td></tr><tr><td>COMMISSION_RATE</td><td>double</td><td>Evet</td><td>Komisyon oranı bilgisidir.</td></tr><tr><td>CUSTOMER_NAME</td><td>string</td><td>Evet</td><td>Müşteri isim bilgisidir.</td></tr><tr><td>CUSTOMER_GSM</td><td>string</td><td>Evet</td><td>Müşteri telefon bilgisidir.</td></tr><tr><td>USER_NAME</td><td>string</td><td>Evet</td><td>Kullanıcı adı bilgisidir.</td></tr><tr><td>CANCEL_REQUEST</td><td>string</td><td>Evet</td><td>İptal isteği olup olmadığı bilgisidir.</td></tr><tr><td>DEALER_NAME</td><td>string</td><td>Evet</td><td>Üye iş yeri isim bilgisidir.</td></tr><tr><td>STATUS_ID</td><td>int</td><td>Evet</td><td>Durum id bilgisidir.</td></tr><tr><td>JSONDATE</td><td>string</td><td>Evet</td><td>Json tarih bilgisidir.</td></tr><tr><td>JSONPAYMENT</td><td>string</td><td>Evet</td><td>Json ödeme bilgisidir.</td></tr><tr><td>CC_HASH</td><td>string</td><td>Evet</td><td>Kredi katı hash bilgisidir.</td></tr><tr><td>PAYMENT_BANK_CODE</td><td>string</td><td>Evet</td><td>Bankadan ödeme işlemi için dönen ödeme kodu bilgisidir.</td></tr><tr><td>TRANSACTIONS</td><td>array</td><td>Evet</td><td>Ödeme işlemine ait gerçekleşen tüm işlem hareketlerine ait hareket detaylarını içeren Json nesne dizisidir.</td></tr><tr><td>PHYSICAL_POS_ID</td><td>int</td><td>Evet</td><td>Ödeme işleminin gerçekleştiği posun benzersiz numarası..</td></tr><tr><td>PHYSICAL_POS_TITLE</td><td>string</td><td>Evet</td><td>Ödeme işleminin gerçekleştiği posun adı.</td></tr><tr><td>PAYMENT_WAY</td><td>string</td><td>Evet</td><td>Ödeme işleminin gerçekleşme yöntemi.</td></tr></tbody></table>

<br>

**TRANSACTION**

<table><thead><tr><th>Parametre</th><th width="125">Tip</th><th width="110">Zorunlu</th><th>Açıklama</th></tr></thead><tbody><tr><td>TRANSACTION_ID</td><td>int</td><td>Evet</td><td>Alt işlem hareketine ait benzersiz id bilgisidir.</td></tr><tr><td>STATUS_NAME</td><td>string</td><td>Evet</td><td>Alt işlem hareketine ait durum bilgisidir.</td></tr><tr><td>STATUS_ID</td><td>int</td><td>Evet</td><td>Alt işlem hareketine ait durum id bilgisidir.</td></tr><tr><td>AMOUNT</td><td>string</td><td>Evet</td><td>Alt işlem hareketine ait tutar bilgisidir.</td></tr><tr><td>DATE</td><td>string</td><td>Evet</td><td>Alt işlem hareketine ait tarih bilgisidir.</td></tr><tr><td>MERCHANT_AMOUNT_TRANSFER_DETAIL</td><td>string</td><td>Evet</td><td>Bu kısımda ödeme işlemine bağlı gerçekleşen alt işlem hareketindeki tutarın transfer detay bilgileri verilir.</td></tr><tr><td>SUB_MERCHANT_DETAILS</td><td>array</td><td>Evet</td><td>Bu kısım sadece pazaryeri üye iş yerleri için dolu gelecektir. Diğer üye iş yerleri için bu alandaki bilgiler "<strong>null</strong>" olarak döner. Ödeme işleminde gerçekleşen tutarın ne kadarının pazaryerine ait hangi mağazalara gönderildiği veya gönderileceği bilgisidir.</td></tr></tbody></table>

<br>

**SUB\_MERCHANT\_DETAILS**

<table><thead><tr><th>Parametre</th><th width="95">Tip</th><th width="93">Zorunlu</th><th>Açıklama</th></tr></thead><tbody><tr><td>EXTERNAL_ID</td><td>string</td><td>Evet</td><td>Mağaza(submerchant)'nın pazaryerin(merchant) sistemindeki ID bilgisidir. Bu bilgi pazaryeri tarafından atanmaktadır.</td></tr><tr><td>AMOUNT</td><td>string</td><td>Evet</td><td>Ödeme işlemindeki tutarın mağazaya gönderilecek veye gönderilen kısımıdır.</td></tr><tr><td>DATE</td><td>string</td><td>Evet</td><td>İşlemin gerçekleştirildiği tarih bilgisidir.</td></tr><tr><td>SUB_MERCHANT_AMOUNT_TRANSFER_DETAIL</td><td>string</td><td>Evet</td><td>Bu kısımda magazaya ait işlem hareketindeki tutarın transfer detay bilgileri verilir.</td></tr></tbody></table>

<br>

**SUB\_MERCHANT\_AMOUNT\_TRANSFER\_DETAIL**

<table><thead><tr><th width="214">Parametre</th><th width="118">Tip</th><th width="110">Zorunlu</th><th>Açıklama</th></tr></thead><tbody><tr><td>EXTRACT_ID</td><td>int</td><td>Evet</td><td>Alt işlem transfer numarasıdır.</td></tr><tr><td>SENDED_AMOUNT</td><td>string</td><td>Evet</td><td>Transfer edilen tutar bilgisidir.</td></tr><tr><td>SENDED_DATE</td><td>string</td><td>Evet</td><td>Transfer edilen tarih bilgisidir.</td></tr></tbody></table>

<table><thead><tr><th width="212">RETURN_CODE</th><th width="94">string</th><th width="97">Evet</th><th>Dekont listeleme işlemi sonucu durumu kod bilgisidir.</th></tr></thead><tbody><tr><td>RETURN_MESSAGE</td><td>string</td><td>Evet</td><td>Dekont listeleme işlemi sonucu durum mesaj bilgisidir.</td></tr><tr><td>STATUS</td><td>string</td><td>Evet</td><td>Dekont listeleme işlemi sonucuna ait durum bilgisidir.</td></tr></tbody></table>

PRODUCTS

<table><thead><tr><th width="242">Parametre</th><th width="121">Tip</th><th width="101">Zorunlu</th><th>Açıklama</th></tr></thead><tbody><tr><td>PAYMENT_ID</td><td>int</td><td>Hayır</td><td>İlgili işlemin ödeme ID bilgisidir.</td></tr><tr><td>PRODUCT_ID</td><td>string</td><td>Evet</td><td>Ürünün ID bilgisidir.</td></tr><tr><td>PRODUCT_NAME</td><td>string</td><td>Evet</td><td>Ürünün isim bilgisidir.</td></tr><tr><td>PRODUCT_CATEGORY</td><td>string</td><td>Evet</td><td>Ürünün kategori bilgisidir.</td></tr><tr><td>PRODUCT_DESCRIPTION</td><td>string</td><td>Evet</td><td>Ürünün açıklama bilgisidir.</td></tr><tr><td>PRODUCT_AMOUNT</td><td>decimal</td><td>Hayır</td><td>Ürünün tutar bilgisidir.</td></tr></tbody></table>

```json
                                            
{
    "paymentList": [
        {
            "ID": 000001,
            "MERCHANT": "TEST1234",
            "DEALERID": 1,
            "DEALER_CODE": 1,
            "INSERT_DATETIME": "/Date(1591127723720)/",
            "CARD_TYPE": "DEBIT",
            "CARD_NUMBER": "654321******1234",
            "CARD_NAME": "Name Surname",
            "CARD_BANK_NAME": "turkekonomibankasia.s.",
            "CARD_FAMILY": null,
            "CURRENCY": "TRY",
            "VIRTUALPOS_NAME": "İş Bankası",
            "STATUS_NAME": "Ödeme - Başarılı",
            "STATUS_ID": 3,
            "INSTALLMENT": 1,
            "AMOUNT": 88.50,
            "COMMISSION_AMOUNT": 1.9912500,
            "DEALER_PAYMENT_REF_CODE": "20202020202020",
            "COMMISSION_RATE": 0.02250,
            "CUSTOMER_NAME": "Name Surname",
            "CUSTOMER_GSM": "5435434343",
            "USER_NAME": null,
            "CANCEL_REQUEST": false,
            "DEALER_NAME": null,
            "JSONDATE": null,
            "JSONPAYMENT": null,
            "CC_HASH": null,
            "PAYMENT_BANK_CODE": "444444",
            "TRANSACTIONS": [
                {
                    "TRANSACTION_ID": 343666,
                    "STATUS_NAME": "Ödeme - Başarılı",
                    "STATUS_ID": 3,
                    "AMOUNT": "88,50",
                    "DATE": "19.04.2020 18:35:09",
                    "MERCHANT_AMOUNT_TRANSFER_DETAIL": {
                        "EXTRACT_ID": 5715,
                        "SENDED_AMOUNT": "7,42",
                        "SENDED_DATE": "4.05.2020 11:58:11"
                    },
                    "SUB_MERCHANT_DETAILS": [
                        {
                            "EXTERNAL_ID": "999999",
                            "AMOUNT": "79,09",
                            "DATE": "19.04.2020 18:35:09",
                            "SUB_MERCHANT_AMOUNT_TRANSFER_DETAIL": {
                                "EXTRACT_ID": 5779,
                                "SENDED_AMOUNT": "79,09",
                                "SENDED_DATE": "4.05.2020 11:57:28"
                            }
                        }
                    ]
                }
            ]
        },
        {
            "ID": 000002,
            "MERCHANT": "TEST1234",
            "DEALERID": 1,
            "DEALER_CODE": 1,
            "INSERT_DATETIME": "/Date(1591127580893)/",
            "CARD_TYPE": "DEBIT",
            "CARD_NUMBER": "123456******9876",
            "CARD_NAME": "Name Surname",
            "CARD_BANK_NAME": "ziraat",
            "CARD_FAMILY": null,
            "CURRENCY": "TRY",
            "VIRTUALPOS_NAME": "Ziraatbank",
            "STATUS_NAME": "Ödeme - Başarısız",
            "STATUS_ID": 3,
            "INSTALLMENT": 1,
            "AMOUNT": 47.89,
            "COMMISSION_AMOUNT": 1.0775250,
            "VIRTUAL_POS_COMMISSION_AMOUNT": 0.4884780,
            "DEALER_PAYMENT_REF_CODE": "30303030303030",
            "COMMISSION_RATE": 0.02250,
            "CUSTOMER_NAME": "Name Surname",
            "CUSTOMER_GSM": "5435434343",
            "USER_NAME": null,
            "CANCEL_REQUEST": false,
            "DEALER_NAME": null,
            "JSONDATE": null,
            "JSONPAYMENT": null,
            "CC_HASH": null,
            "PAYMENT_BANK_CODE": "222222",
            "TRANSACTIONS": [
                {
                    "TRANSACTION_ID": 343666,
                    "STATUS_NAME": "Ödeme - Başarılı",
                    "STATUS_ID": 3,
                    "AMOUNT": "47,89",
                    "DATE": "19.04.2020 18:35:09",
                    "MERCHANT_AMOUNT_TRANSFER_DETAIL": {
                        "EXTRACT_ID": 5715,
                        "SENDED_AMOUNT": "2,88",
                        "SENDED_DATE": "4.05.2020 11:58:11"
                    },
                    "SUB_MERCHANT_DETAILS": [
                        {
                            "EXTERNAL_ID": "999999",
                            "AMOUNT": "43,93",
                            "DATE": "19.04.2020 18:35:09",
                            "SUB_MERCHANT_AMOUNT_TRANSFER_DETAIL": {
                                "EXTRACT_ID": 5779,
                                "SENDED_AMOUNT": "43,93",
                                "SENDED_DATE": "4.05.2020 11:57:28"
                            }
                        }
                    ]
                }
            ],
            "PRODUCTS": [
                {
                    "PAYMENT_ID": 123456,
                    "PRODUCT_ID": 25,
                    "PRODUCT_NAME": "Elektronik Ev Aletleri",
                    "PRODUCT_CATEGORY": "Ev Aletleri",
                    "PRODUCT_DESCRIPTION": "Elektronik Alet Satışı",
                    "PRODUCT_AMOUNT": 100.00
                }
            ]
        }
    ],
    "RETURN_CODE": "0",
    "RETURN_MESSAGE": "SUCCESS",
    "STATUS": "SUCCESS"
}
                                        
```

İşlem durum sorgulama cevap mesajında `STATUS` parametresinin değeri **SUCCESS** ve `RETURN_CODE` parametresinin değeri **0** olarak dönmesi işlem durum sorgulamasının başarılı olarak gerçekleştiğini ifade etmektedir.

**Ödeme ile Ödeme Alt İşlem(Transaction) Durum Kodları ve Açıklamaları;**

Ödeme ve Ödeme Alt İşlem(Transaction)leri detaylarında dönen `STATUS_NAME` ve `STATUS_ID` açıklamalarının detayları şu şekildedir;

<table><thead><tr><th width="134">STATUS_ID</th><th width="184.33333333333331">STATUS_NAME</th><th>Açıklama</th></tr></thead><tbody><tr><td>3</td><td>Ödeme - Başarılı</td><td>Başarılı olarak gerçekleşmiş ödemelerin ve alt işlemlerin sonucuda dönen durum bilgisidir.</td></tr><tr><td>4</td><td>Ödeme - Başarısız</td><td>Başarısız olarak gerçekleşmiş ödemelerin ve alt işlemlerin sonucuda dönen durum bilgisidir.</td></tr><tr><td>5</td><td>İptal - Başarılı</td><td>Başarılı olarak gerçekleşmiş iptal ödemelerin ve alt işlemlerin sonucuda dönen durum bilgisidir.</td></tr><tr><td>6</td><td>İptal - Başarısız</td><td>Başarısız olarak gerçekleşmiş iptal ödemelerin ve alt işlemlerin sonucuda dönen durum bilgisidir.</td></tr><tr><td>7</td><td>İade - Başarılı</td><td>Başarılı olarak gerçekleşmiş iade ödemelerin ve alt işlemlerin sonucuda dönen durum bilgisidir.</td></tr><tr><td>8</td><td>İade - Başarısız</td><td>Başarısız olarak gerçekleşmiş iade ödemelerin ve alt işlemlerin sonucuda dönen durum bilgisidir.</td></tr></tbody></table>
