> For the complete documentation index, see [llms.txt](https://developer.tokeninc.com/token-developer-portal-1/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.tokeninc.com/token-developer-portal-1/x-platform/z-report-service/gelistirici-dokumani.md).

# Geliştirici Dökümanı

Development ortamında ECR üzerinde çalışan servisler için cloud ortamında  <https://test-gmu-report.devtokeninc.com/zreport/web/ecr/api/v1/> base url'i tanımlanmıştır.

Servislerde kullanılan generic response yapısı şu şekildedir:

```json
{
    "status": 0, (int)
    "message": "OK", (String)
    "detail": null (Object)
}
```

**Response payload değişkenleri:**

**status : Cevabın status kodunu belirten integer değerdir. Başarılı durumlar için 0 hata durumları için uygun status kodunu döner.**

**message: Statuse göre dönen string cevap mesajıdır. Başarılı cevaplar için "OK" olarak döner.**

**detail: Servisin dönmesi gereken bir detay bilgisi varsa bu alanda döndürülür. Detail alanı herhangi bir obje tipinde olabilir.**

## **Z Raporu Kontrol Servisleri**

### **Get Report Details**

Path Variable olarak verilen uuid'li raporun detay bilgilerini döner

**Örnek Response Body:**

```json
{
    "status": 0,
    "message": "OK",
    "detail": {
        "dateTime": "1706693610000", (Long-Unix Timestamp in MS)
        "terminalId": "TestUserTerminal", (String)
        "ejNo": 1, (short)
        "zNo": 2, (short)
        "receiptNo": 3, (short)
        "documentNum": 4, // Optional (short)
        "saleReceiptNum": 5, (short)
        "fiscalReceiptNum": 6, (short)
        "cumTotal": 3809, (long)
        "cumTotalVat": 761, (long)
        "macTotal": 3809, //Optional (long) 
        "macTotalVat": 761, //Optional(long)
        "total": 3809, (long)
        "surchargeAmount": 0, // Optional (long)
        "discountQuantity": 2, // Optional (short)
        "discountAmount": 200, // Optional (long)
        "cancelItemQuantity": 1, // Optional (short)
        "cancelItemAmount": 100, // Optional (long)
        "cancelReceiptQuantity": 1, // Optional (short)
        "cancelReceiptAmount": 100, // Optional (long)
        "cancelReportQuantity": 1, // Optional (short)
        "cancelReportAmount": 100, // Optional (long)
        "pharmacyQuantity": 1, // Optional (short)
        "pharmacyAmount": 100, // Optional (long)
        "vats": [ // Optional
            {
               "rate" : 10, (short)
               "total":100, (long)
               "totalVat":10 (long)
            }
        ],
        "sections": [ // Optional
            { 
               "sectionNo":1 ,(short)
               "sectionName":Gıda, (String)
               "quantity":50, (int)
               "vatRate":10, (short)
               "amount" : 1000, (long)
            }
         ],
        "payments": [ // Optional 
           { 
               "quantity" : 1, (short)
               "amount": 100,  (int)
               "type"  : 0 (short)
           }
        ],
    
       "infoReceipts": [
            {
            "quantity": 1000, (short)
            "amount": 25000, (long)
            "type": 9000, (short)
            }
        ],
        "totalVat": 761, (long)
        "cashierRecords": [ // Optional
            {
            "quantity": 15, (short)
            "amount": 15, (long)
            "name": "Kasiyer A" // Optional
            },
            {
            "quantity": 30, (short)
            "amount": 10, (long)
            "name": "Kasiyer B" // Optional
            }
        ] ,  
        "terminalId": "TestUserTerminal",
        "zno": 2
    }
}
```

| İstek Değişkeni       | Tanım                                        | Optional/Zorunlu |
| --------------------- | -------------------------------------------- | ---------------- |
| dateTime              | Rapor tarihi                                 | Zorunlu          |
| terminalId            | Raporun oluşturulduğu cihazın numarası       | Zorunlu          |
| ejNo                  | Ekü numarası                                 | Zorunlu          |
| zNo                   | Z numarası                                   | Zorunlu          |
| receiptNo             | Fiş numarası                                 | Zorunlu          |
| documentNum           | Belge numarası                               | Optional         |
| saleReceiptNum        | Satış fişi numarası                          | Optional         |
| fiscalReceiptNum      | Mali fiş numarası                            | Optional         |
| cumTotal              | Kümülatif toplam değeri                      | Zorunlu          |
| cumTotalVat           | Kümülatif vergi toplamı değeri               | Zorunlu          |
| macTotal              | Kurtarılan KDV Oran Toplamı                  | Optional         |
| macTotalVat           | Kurtarılan vergi miktarı Toplamı             | Optional         |
| surchargeQuantity     | Artırım miktarı                              | Optional         |
| surchargeAmount       | Artırım değeri                               | Optional         |
| discountQuantity      | İndirim miktarı                              | Optional         |
| discountAmount        | İndirim değeri                               | Optional         |
| total                 | Total değer                                  | Zorunlu          |
| cancelItemQuantity    | İptal edilen ürün miktarı                    | Optional         |
| cancelItemAmount      | İptal edilen ürün değeri                     | Optional         |
| cancelReceiptQuantity | İptal fişi miktarı                           | Optional         |
| cancelReceiptAmount   | İptal fişi değeri                            | Optional         |
| cancelReportQuantity  | İptal edilen rapor miktarı                   | Optional         |
| cancelReportAmount    | İptal edilen rapor değeri                    | Optional         |
| pharmacyQuantity      | Eczane katkı payı miktarı                    | Optional         |
| pharmacyAmount        | Eczane katkı payı değeri (Matrah dışı tutar) | Optional         |
| vats                  | kdv oran ve miktarları                       | Optional         |
| sections              | kısım listesi                                | Optional         |
| payments              | [ödeme listesi](#odeme-tipleri)              | Optional         |
| totalVat              | toplam kdv                                   | Zorunlu          |
| cashierRecords        | kasiyer kayıtları                            | Optional         |
| infoReceipts          | bilgi fişleri                                | Optional         |

{% hint style="info" %}
Dönen detay bilgileri z raporu gönderme servisinde gönderilen değişkenlerin aynılarını kapsar. Kaydedilmemiş optional alanlar null olarak döner.
{% endhint %}

{% hint style="info" %}
Tutar değerleri 100 ile çarpılmış, miktar değerleri ise 1000 ile çarpılmış şekilde kaydedilir.
{% endhint %}

<table data-header-hidden><thead><tr><th></th><th width="156"></th></tr></thead><tbody><tr><td><strong>Bilgi Fişi Tipleri</strong></td><td><strong>Kod</strong></td></tr><tr><td>FATURA</td><td>9005</td></tr><tr><td>E-FATURA BİLGİ FİŞİ</td><td>9006</td></tr><tr><td>E-ARŞİV BİLGİ FİŞİ</td><td>9007</td></tr><tr><td>AVANS</td><td>9000</td></tr><tr><td>CARİ TAHSİLAT</td><td>9002</td></tr><tr><td>TAHSİLAT</td><td>9001</td></tr></tbody></table>

**Status:**&#x20;

**0: Başarılı**&#x20;

**3: Rapor Bulunamadı**

**6: UUID Formatı Hatalı**

### **Get Totals Between Dates**

İstek parametresinde verilen unix timestamp ms formatındaki tarihler arasındaki rapor toplam bilgilerini döner

**Örnek Response Body:**

```json
{
    "status": 0,
    "message": "OK",
    "detail": [
        {
            "sum": 3809,
            "dateTime": "1704067200000"
        },
        {
            "sum": 3655,
            "dateTime": "1704153600000"
        },
        {
            "sum": 3395,
            "dateTime": "1704240000000"
        },
        {
            "sum": 3094,
            "dateTime": "1704326400000"
        }
    ]
```

**Status Kodları:**

**0: Başarılı**

**3: Rapor Bulunamadı**

**4: Datetime formatı hatalı**&#x20;

**5: Vkn Bulunamadı**

### **Get Summary By Terminal ID**

İstekte path variable olarak verilen terminal id'ye ait tarih parametreleri arasındaki rapor özet bilgilerini döner

**Örnek Response Body:**

```json
{
    "status": 0,
    "message": "OK",
    "detail": [
        {
            "dateTime": 1704101610000,
            "total": 3809,
            "totalVat": 761,
            "uuid": "85a5da69-8a4c-42d6-9cb1-b3c40e15e2e8",
            "zNo": 2
        },
        {
            "dateTime": 1704188010000,
            "total": 3655,
            "totalVat": 731,
            "uuid": "f079a017-3530-46c1-84c1-fc4db885536a",
            "zNo": 2
        }
    ]
}

```

**total :** O günki total değer

**totalVat :** O günki toplam kdv değeri.

**uuid :** Rapor uuid'si.

**zNo :** Z numarası.

**dateTime :** Unix Timestamp ms formatında tarih.

**Status Kodları:**

**0: Başarılı**

**2: İki tarih arasında 32 günden fazla olamaz.**

**3: Rapor bulunamadı**

**5:Terminal bulunamadı**

### **Get Summary By Tax ID**

İstekte path variable olarak verilen tax id'ye ait tarih parametreleri arasındaki rapor özet bilgilerini döner

**Örnek Response Body:**

```json
{
    "status": 0,
    "message": "OK",
    "detail": [
        {
            "dateTime": 1704101610000,
            "total": 3809,
            "totalVat": 761,
            "uuid": "85a5da69-8a4c-42d6-9cb1-b3c40e15e2e8",
            "zNo": 2
        },
        {
            "dateTime": 1704188010000,
            "total": 3655,
            "totalVat": 731,
            "uuid": "f079a017-3530-46c1-84c1-fc4db885536a",
            "zNo": 2
        }
    ]
}

```

**total :** O günki total değer

**totalVat :** O günki toplam kdv değeri.

**uuid :** Rapor uuid'si.

**zNo :** Z numarası.

**dateTime :** Unix Timestamp ms formatında tarih.

**Status Kodları:**

**0: Başarılı**

**2: İki tarih arasında 32 günden fazla olamaz.**

**3: Rapor bulunamadı**

**5:Tax Id bulunamadı**

#### Ödeme Tipleri

<table data-header-hidden><thead><tr><th></th><th width="156"></th><th></th></tr></thead><tbody><tr><td><strong>Ödeme Tipi</strong></td><td><strong>Değer</strong></td><td><strong>Açıklama</strong></td></tr><tr><td><code>PAYMENT_CASH</code></td><td>1</td><td>Nakit</td></tr><tr><td><code>PAYMENT_CHEQUE</code></td><td>2</td><td>Çek</td></tr><tr><td><code>PAYMENT_CREDITCARD</code></td><td>3</td><td>Kredi Kartı</td></tr><tr><td><code>PAYMENT_FOOD</code></td><td>7</td><td>Yemek Kartı</td></tr><tr><td><code>PAYMENT_ODEMESIZ</code></td><td>8</td><td>Ödemesiz</td></tr><tr><td><code>PAYMENT_IKRAM</code></td><td>9</td><td>İkram</td></tr><tr><td><code>PAYMENT_VERESIYE</code></td><td>10</td><td>Veresiye</td></tr><tr><td><code>PAYMENT_PUAN</code></td><td>11</td><td>Puan</td></tr><tr><td><code>PAYMENT_VPOS</code></td><td>12</td><td>EPOS Ödeme</td></tr><tr><td><code>PAYMENT_MOBILE</code></td><td>13</td><td>Mobil Ödeme</td></tr><tr><td><code>PAYMENT_EMONEY</code></td><td>14</td><td>E-Para Ödeme</td></tr><tr><td><code>PAYMENT_CHARITY</code></td><td>15</td><td>Bağış</td></tr><tr><td><code>PAYMENT_BOND</code></td><td>16</td><td>Bond ile Ödeme</td></tr><tr><td><code>PAYMENT_OPENACCOUNT</code></td><td>17</td><td>Açık Hesap</td></tr><tr><td><code>PAYMENT_MONEYTRANSFER</code></td><td>18</td><td>Para Transferi</td></tr><tr><td><code>PAYMENT_TRANSPORTATIONCARD</code></td><td>19</td><td>Ulaşım Kartı</td></tr><tr><td><code>PAYMENT_GIFTCARD</code></td><td>20</td><td>Hediye Kartı</td></tr></tbody></table>

**Yemek Kartı Kodları:**

<table data-header-hidden><thead><tr><th></th><th width="156"></th></tr></thead><tbody><tr><td><strong>Yemek Kartı</strong> </td><td><strong>Kod</strong></td></tr><tr><td><code>EDENRED</code></td><td>1001</td></tr><tr><td><code>MULTINET</code></td><td>1002</td></tr><tr><td>SETCARD</td><td>1003</td></tr><tr><td><code>SODEXO</code></td><td>1004</td></tr><tr><td><code>TOKENFLEX</code></td><td>1005</td></tr></tbody></table>

**Banka Kodları:**

<table><thead><tr><th width="127" align="center">Kod</th><th width="351">Banka/Özel Finans Kurumu</th></tr></thead><tbody><tr><td align="center">001</td><td>Türkiye Cumhuriyet Merkez Bankası A.Ş.</td></tr><tr><td align="center">004</td><td>İller Bankası</td></tr><tr><td align="center">010</td><td>Türkiye Cumhuriyeti Ziraat Bankası A.Ş.</td></tr><tr><td align="center">012</td><td>Türkiye Halk Bankası A.Ş.</td></tr><tr><td align="center">013</td><td>Denizbank</td></tr><tr><td align="center">014</td><td>Türkiye Sınai Kalkınma Bankası A.Ş.</td></tr><tr><td align="center">015</td><td>Türkiye Vakıflar Bankası T.A.O.</td></tr><tr><td align="center">016</td><td>Türkiye İhracat Kredi Bankası A.Ş. (Eximbank)</td></tr><tr><td align="center">017</td><td>Türkiye Kalkınma Bankası A.Ş.</td></tr><tr><td align="center">029</td><td>Birleşik Fon Bankası A.Ş. (Bayındırbank A.Ş.)</td></tr><tr><td align="center">032</td><td>Türk Ekonomi Bankası A.Ş.</td></tr><tr><td align="center">034</td><td>Aktif Yatırım Bankası A.Ş.</td></tr><tr><td align="center">046</td><td>Akbank T.A.Ş.</td></tr><tr><td align="center">048</td><td>HSBC Bank A.Ş.</td></tr><tr><td align="center">058</td><td>Sınai Yatırım Bankası A.Ş.</td></tr><tr><td align="center">059</td><td>Şekerbank T.A.Ş.</td></tr><tr><td align="center">062</td><td>Türkiye Garanti Bankası A.Ş.</td></tr><tr><td align="center">064</td><td>Türkiye İş Bankası A.Ş.</td></tr><tr><td align="center">067</td><td>Yapı ve Kredi Bankası A.Ş.</td></tr><tr><td align="center">071</td><td>Fortis Bank (TEB)</td></tr><tr><td align="center">087</td><td>Banca di Roma</td></tr><tr><td align="center">088</td><td>The Royal Bank of Scotland PLC Merkezi Amsterdam İstanbul Merkez Şubesi</td></tr><tr><td align="center">091</td><td>Arap Türk Bankası A.Ş.</td></tr><tr><td align="center">092</td><td>Citibank N.A.</td></tr><tr><td align="center">094</td><td>Bank Mellat</td></tr><tr><td align="center">095</td><td>BCCI</td></tr><tr><td align="center">096</td><td>Turkish Bank A.Ş.</td></tr><tr><td align="center">097</td><td>Habib Bank Limited</td></tr><tr><td align="center">098</td><td>JP Morgan Chase Bank İstanbul Türkiye Şubesi</td></tr><tr><td align="center">099</td><td>Oyak Bank A.Ş. - ING BANK</td></tr><tr><td align="center">100</td><td>Adabank A.Ş.</td></tr><tr><td align="center">101</td><td>Türk Sakura Bank A.Ş.</td></tr><tr><td align="center">103</td><td>Fiba Bank A.Ş.</td></tr><tr><td align="center">104</td><td>IMPEXBANK</td></tr><tr><td align="center">106</td><td>PORTIGON A.G.</td></tr><tr><td align="center">107</td><td>BNP-Ak-Dresdner Bank A.Ş.</td></tr><tr><td align="center">108</td><td>Turkland Bank A.Ş.</td></tr><tr><td align="center">109</td><td>Tekstil Bankası A.Ş.</td></tr><tr><td align="center">110</td><td>Credit Lyonnais</td></tr><tr><td align="center">111</td><td>Finansbank A.Ş.</td></tr><tr><td align="center">113</td><td>Marbank</td></tr><tr><td align="center">115</td><td>Deutsche Bank A.Ş.</td></tr><tr><td align="center">116</td><td>TAİB Yatırım Bank A.Ş.</td></tr><tr><td align="center">117</td><td>Turizm Yatırım ve Ticaret Bank A.Ş.</td></tr><tr><td align="center">118</td><td>Kıbrıs Kredi Bankası</td></tr><tr><td align="center">119</td><td>Birleşik Yatırım</td></tr><tr><td align="center">121</td><td>Standard Chartered Yatırım Bankası Türk A.Ş.</td></tr><tr><td align="center">122</td><td>Societe Generale</td></tr><tr><td align="center">123</td><td>HSBC Bank A.Ş.</td></tr><tr><td align="center">124</td><td>Alternatifbank A.Ş.</td></tr><tr><td align="center">125</td><td>Burganbank A.Ş.</td></tr><tr><td align="center">127</td><td>KentBank</td></tr><tr><td align="center">128</td><td>Park Yatırım Bankası</td></tr><tr><td align="center">129</td><td>Tat Yatırım Bankası A.Ş.</td></tr><tr><td align="center">132</td><td>IMKB Takas ve Saklama Bankası A.Ş.</td></tr><tr><td align="center">133</td><td>ING BANK</td></tr><tr><td align="center">134</td><td>Denizbank A.Ş.</td></tr><tr><td align="center">135</td><td>Anadolubank A.Ş.</td></tr><tr><td align="center">136</td><td>Okan Yatırım Bankası A Ş</td></tr><tr><td align="center">137</td><td>Rabobank Nederland İstanbul Merkez Şubesi</td></tr><tr><td align="center">138</td><td>Diler Yatırım Bankası A.Ş.</td></tr><tr><td align="center">139</td><td>GSD Yatırım Bankası A.Ş.</td></tr><tr><td align="center">140</td><td>Credit Suisse First Boston İstanbul Şubesi</td></tr><tr><td align="center">141</td><td>Nurol Yatırım Bankası A.Ş.</td></tr><tr><td align="center">142</td><td>Bank Pozitif Kredi ve Kalkınma Bankası A.Ş.</td></tr><tr><td align="center">144</td><td>Atlas Yatırım Bankası A.Ş.</td></tr><tr><td align="center">145</td><td>Morgan Guarenty Trusy Company</td></tr><tr><td align="center">146</td><td>OdeaBank A.Ş.</td></tr><tr><td align="center">147</td><td>Bank of Tokyo -Mitsubishi UFJ Turkey A.Ş.</td></tr><tr><td align="center">148</td><td>Intesa SanPaolo SPA İtalya-İstanbul Merkez Şubesi</td></tr><tr><td align="center">203</td><td>Al Baraka Türk Katılım Bankası A.Ş.</td></tr><tr><td align="center">204</td><td>Family Finans Kurumu</td></tr><tr><td align="center">205</td><td>Kuveyt Türk Katılım Bankası A.Ş.</td></tr><tr><td align="center">206</td><td>Türkiye Finans Katılım Bankası A.Ş.</td></tr><tr><td align="center">208</td><td>Asya Katılım Bankası A.Ş.</td></tr><tr><td align="center">210</td><td>Vakıf Katılım Bankası A.Ş.</td></tr><tr><td align="center">223</td><td>Al Baraka Türk Katılım Bankası A.Ş.</td></tr></tbody></table>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://developer.tokeninc.com/token-developer-portal-1/x-platform/z-report-service/gelistirici-dokumani.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
