# InvoiceLines

> Fatura kalemlerinin(Mal / Hizmet) tüm detaylarının girileceği alandır.

```csharp
public class EInvoiceLineDto
{
     public string Index { get; set; }
     public string SellerCode { get; set; }
     public string BuyerCode { get; set; }
     public string Name { get; set; }
     public string Description { get; set; }
     public decimal Quantity { get; set; }
     public string UnitType { get; set; }
     public decimal Price { get; set; }
     public decimal AllowanceTotal { get; set; }
     public decimal KDVPercent { get; set; }
     public decimal KDVTotal { get; set; }
     public List<TaxDto> Taxes { get; set; }
     public DeliveryInfoDto DeliveryInfo { get; set; }
     public string ManufacturerCode { get; set; }
     public string BrandName { get; set; }
     public string ModelName { get; set; }
     public string Note { get; set; }
     public string AdditionalInfoId { get; set; }
     public string SerialID { get; set; }
     public string ProductTraceID { get; set; }
     public string LabelNumber { get; set; }
     public string BuyerDIBLineCode { get; set; }
     public string SellerDIBLineCode { get; set; }     
     public string GTIPNo { get; set; }
     public string OzelMatrahReason { get; set; }
     public decimal OzelMatrahTotal { get; set; }
     public decimal VatAmountWithoutTevkifat { get; set; }
     public InvestmentIncentiveExpenseType InvestmentIncentiveExpenseType { get; set; }
     public MedicineAndMedicalDeviceDto MedicineAndMedicalDevice { get; set; }
     public AdditionalItemIdentificationDto AdditionalItemIdentification { get; set; }
}
```

### Index

<mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>

> Fatura kaleminin sıra numarasının belirtileceği alandır.

### SellerCode

<mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>

> Ürünün satıcı kodunun girileceği alandır.

### BuyerCode

<mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>

> Ürünün alıcı kodunun girileceği alandır.

### Name

<mark style="color:blue;">`string`</mark>  <mark style="color:red;">`Zorunlu`</mark>

> Ürünün adının girileceği alandır.

### Description

<mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>

> Ürünün açıklamasının girileceği alandır.

### Quantity

<mark style="color:blue;">`decimal`</mark>  <mark style="color:red;">`Zorunlu`</mark>

> Miktarın girileceği alandır.

### UnitType

<mark style="color:blue;">`string`</mark>  <mark style="color:red;">`Zorunlu`</mark>

> Birim tipinin girileceği alandır. Alabileceği değerler kod listeleri bölümünde Birim Kodları altında belirtilmiştir.

### Price

<mark style="color:blue;">`string`</mark>  <mark style="color:red;">`Zorunlu`</mark>

> Ürün fiyatının girileceği alandır.

### AllowanceTotal

<mark style="color:blue;">`decimal`</mark>  <mark style="color:red;">`Zorunlu`</mark>

> İskonto tutarının girileceği alandır.

### KDVPercent

<mark style="color:blue;">`decimal`</mark>  <mark style="color:red;">`Zorunlu`</mark>

> Ürünün KDV oranının girileceği alandır.

{% hint style="info" %}
**KDV Oranları:** 1, 10 ve 20'dir.<br>

KDV Oranı 0 olması durumunda vergi muafiyet sebebi belirtilmelidir. Vergi muafiyet nesnesi için Bkz.

TaxExcemptionReasonInfo
{% endhint %}

### KDVTotal

<mark style="color:blue;">`decimal`</mark>  <mark style="color:red;">`Zorunlu`</mark>

> Ürünün KDV toplamının girileceği alandır.

### Taxes

<mark style="color:blue;">`List`</mark>  <mark style="color:orange;">`Seçimli`</mark>

> Ürüne eklenecek diğer vergilerin girileceği alandır. Alabileceği değerler kod listeleri bölümünde Vergi Kodları altında belirtilmiştir.

```csharp
public class TaxDto
{
     public string TaxCode { get; set; }
     public decimal Total { get; set; }
     public decimal Percent { get; set; }
     public string ReasonCode { get; set; }
     public string ReasonDesc { get; set; }
}
```

> **TaxCode:** Vergi kodunun girileceği alandır.  <mark style="color:blue;">`string`</mark>  <mark style="color:red;">`Zorunlu`</mark>

> **Total:** Vergi toplamının girileceği alandır.  <mark style="color:blue;">`decimal`</mark>  <mark style="color:orange;">`Vergiye göre değişiklik gösterir.`</mark>

> **Percent:** Vergi oranının girileceği alandır.  <mark style="color:blue;">`decimal`</mark>  <mark style="color:orange;">`Vergiye göre değişiklik gösterir.`</mark>

{% hint style="info" %}
Girilen vergi kod listeleri bölümünde Tevkifat Kodları altında yer alıyor ise aşağıda bulunan alanların doldurulması zorunludur.

**ReasonCode:** Kodun girileceği alandır.

**ReasonDesc:** Kodun açıklamasının girileceği alandır.
{% endhint %}

> **Örn:** Eğer girilen vergi <mark style="color:red;">**KDV Tevkifatına**</mark> ait ise;

```javascript
EInvoice.InvoiceLines[0].Taxes = [
    {
        TaxCode: "9015",
        Total: 1.72, //1.72 örnek olarak verilmiştir.
        Percent: 40,
        ReasonCode: "601",
        ReasonDesc: "Yapım İşleri İle Bu İşlerle Birlikte İfa Edilen Mühendislik"
    }
]
```

### DeliveryInfo

<mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>

{% hint style="info" %} <mark style="color:red;">**IHRACAT**</mark> faturalarında İhracat bilgilerinin girileceği bölümdür.
{% endhint %}

```csharp
public class DeliveryInfoDto
{
     public string GTIPNo { get; set; }
     public string DeliveryTermCode { get; set; }
     public string TransportModeCode { get; set; }
     public string PackageBrandName { get; set; }
     public string ProductTraceID { get; set; }
     public string PackageID { get; set; }
     public decimal PackageQuantity { get; set; }
     public string PackageTypeCode { get; set; }
     public AddressInfoDto DeliveryAddress { get; set; }
}
```

> **GTIPNo**  <mark style="color:blue;">`string`</mark>  <mark style="color:red;">`Zorunlu`</mark> \
> GTIP (Gümrük Tarife İstatistik Pozisyonu) Numarasının girileceği alandır.&#x20;

> **DeliveryTermCode**  <mark style="color:blue;">`string`</mark>  <mark style="color:red;">`Zorunlu`</mark> \
> Mal / Hizmetin Teslim şartının girileceği alandır. Alabileceği değerler kod listeleri bölümünde Teslim Şartı Kodları altında belirtilmiştir.

> **TransportModeCode**  <mark style="color:blue;">`string`</mark>  <mark style="color:red;">`Zorunlu`</mark>&#x20;
>
> Gönderim şekli bilgisinin girileceği alandır. Alabileceği değerler kod listeleri bölümünde Gönderim Şekli Kodları altında belirtilmiştir.

> **PackageBrandName**  <mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>
>
> Mal / Hizmetin bulunduğu Kabın Marka isminin girileceği alandır.

> **ProductTraceID**  <mark style="color:blue;">`string`</mark>  <mark style="color:red;">`Zorunlu`</mark>&#x20;
>
> Gümrük Takip Numarasının girileceği alandır.

> **PackageID**  <mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>
>
> Mal / Hizmetin bulunduğu Kabın Numarasının girileceği alandır.

> **PackageQuantity**  <mark style="color:blue;">`decimal`</mark>  <mark style="color:orange;">`Seçimli`</mark>
>
> Mal / Hizmetin bulunduğu Kabın Adet bilgisi girilir.

> **PackageTypeCode**  <mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>
>
> Mal / Hizmetin bulunduğu Kabın Cinsinin girileceği alandır. Alabileceği değerler kod listeleri bölümünde Kab Cinsleri altında belirtilmiştir.

{% hint style="info" %}
**DeliveryAddress**<mark style="color:red;">**(Malın Teslim ve Bedelinin Ödeme Yeri)**</mark> bilgilerinin girileceği alan aşağıda belirtilmiştir.&#x20;
{% endhint %}

<mark style="color:red;">`Zorunlu`</mark>&#x20;

```csharp
public class AddressInfoDto
{
     public string Address { get; set; }
     public string District { get; set; }
     public string City { get; set; }
     public string Country { get; set; }
     public string PostalCode { get; set; }
     public string Phone { get; set; }
     public string Fax { get; set; }
     public string Mail { get; set; }
     public string WebSite { get; set; }
}
```

> **Address:** Malın teslim yerine ait adres bilgisi girilir.  <mark style="color:blue;">`string`</mark>  <mark style="color:red;">`Zorunlu`</mark>

> **District:** Malın teslim yerine ait ilçe bilgisi girilir.  <mark style="color:blue;">`string`</mark>  <mark style="color:red;">`Zorunlu`</mark>

> **City:** Malın teslim yerine ait şehir bilgisi girilir.  <mark style="color:blue;">`string`</mark>  <mark style="color:red;">`Zorunlu`</mark>

> **Country:** Malın teslim yerine ait ülke bilgisi girilir.  <mark style="color:blue;">`string`</mark>  <mark style="color:red;">`Zorunlu`</mark>

> **PostalCode:** Malın teslim yerine ait posta kodu bilgisi girilir.  <mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>

> **Phone:** Malın teslim yerine ait telefon numarası bilgisi girilir.  <mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>

> **Fax:** Malın teslim yerine ait fax bilgisi girilir.  <mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>

> **Mail:** Malın teslim yerine ait mail bilgisi girilir.  <mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>

> **WebSite:** Malın teslim yerine ait web site bilgisi girilir.  <mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>

### ManufacturerCode

<mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>

> Üretici kodunun girileceği alandır.

### BrandName

<mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>

> Marka adının girileceği alandır.

### ModelName

<mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>

> Model adının girileceği alandır.

{% hint style="info" %}
Yatırım teşvik faturalarında InvestmentIncentiveExpenseType (Harcama Tipi) değeri "MachineAndSoftware" olduğunda Makine Adı bu alana girilmelidir.
{% endhint %}

### Note

<mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>

> Notun ekleneceği alandır.

### AdditionalInfoId

<mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>

> Ek bilgi (ID) girilmek istenilirse bu alan kullanılır.

### SerialID

<mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>

> Şarj anlık faturalarında seri numarası, yatırım teşvik faturalarında ise InvestmentIncentiveExpenseType (Harcama Tipi) değeri "MachineAndSoftware" olduğunda Makine ID bu alana girilmelidir.

### ProductTraceID

<mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>

> Yatırım teşvik faturalarında InvestmentIncentiveExpenseType (Harcama Tipi) değeri "MachineAndSoftware" olduğunda Makine Teçhizat Sıra No bu alana girilmelidir.

### LabelNumber

<mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>

> IDIS (İnşaat Demiri İzleme Sistemi) faturalarında etiket numarasının girileceği alandır.

### BuyerDIBLineCode

<mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>

> İhraç kayıtlı faturalarda KDVExemptionReasonCode değeri "702" (DİİB ve Geçici Kabul Rejimi Kapsamındaki Satışlar) olduğunda Alıcı Satır Kodu bu alana girilir.

{% hint style="info" %}
Alıcı satır kodu 11 haneden oluşmalıdır.
{% endhint %}

### SellerDIBLineCode

<mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>

> İhraç kayıtlı faturalarda KDVExemptionReasonCode değeri "702" (DİİB ve Geçici Kabul Rejimi Kapsamındaki Satışlar) olduğunda Satıcı Satır Kodu bu alana girilir.

### OzelMatrahReason

<mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>

> Özel matrah nedeninin girileceği alandır. Alabileceği değerler kod listeleri bölümünde Özel Matrah Kodları altında belirtilmiştir.

{% hint style="info" %}
Fatura tipi <mark style="color:red;">**“OZELMATRAH”**</mark> olması durumunda doldurulacaktır.
{% endhint %}

### OzelMatrahTotal

<mark style="color:blue;">`decimal`</mark>  <mark style="color:orange;">`Seçimli`</mark>

> Özel matrah tutarının girileceği alandır.

{% hint style="info" %}
Fatura tipi <mark style="color:red;">**“OZELMATRAH”**</mark> olması durumunda doldurulacaktır.
{% endhint %}

{% hint style="info" %}
Satış bedeli tek kalemde girilecektir. Kalemde gösterilen KDV "Özel Matrah Tutarı" üzerinden hesaplanacaktır.
{% endhint %}

### VatAmountWithTevkifat

<mark style="color:blue;">`decimal`</mark>  <mark style="color:orange;">`Seçimli`</mark>

{% hint style="info" %} <mark style="color:red;">**TEVKİFAT**</mark> faturalarında tevkifatlı tutarın girileceği bölümdür.
{% endhint %}

{% hint style="info" %}
Fatura tipi <mark style="color:red;">**“TEVKİFAT”**</mark> olması durumunda doldurulacaktır.
{% endhint %}


---

# 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://developer.nilvera.com/nilvera-model/einvoice/invoicelines.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.
