# InvoiceLines

> This is the area where all the details of the invoice items (goods/services) will be entered.

```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 OzelMatrahReason { get; set; }
     public decimal OzelMatrahTotal { get; set; }
}
```

### Index

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

> This is the field where the item number of the invoice will be specified.

### SellerCode

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

> This is the field where the product's seller code will be entered.

### BuyerCode

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

> This is the field where the product's recipient code will be entered.

### Name

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

> This is the area where the product name will be entered.

### Description

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

> This is the area where the product description will be entered.

### Quantity

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

> This is the field where the amount will be entered.

### UnitType

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

> This is the field where the unit type is entered. The possible values ​​are listed under Unit Codes in the code lists section.

### Price

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

> This is the area where the product price will be entered.

### AllowanceTotal

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

> This is the field where the discount amount will be entered.

### KDVPercent

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

> This is the field where the product's VAT rate will be entered.

{% hint style="info" %}
VAT Rates: 1, 10, and 20%.

If the VAT rate is 0, the reason for the tax exemption must be stated. See TaxExcemptionReasonInfo for the tax exemption reason.
{% endhint %}

### KDVTotal

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

> This is the field where the total VAT amount of the product will be entered.

### Taxes

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

> This is the area where other taxes to be added to the product are entered. The possible values ​​are specified under Tax Codes in the code lists section.

```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:** This is the field where the tax code is entered.  <mark style="color:blue;">`string`</mark>  <mark style="color:red;">`Zorunlu`</mark>

> **Total:** This is the field where the total tax amount will be entered.  <mark style="color:blue;">`decimal`</mark>  <mark style="color:orange;">`Vergiye göre değişiklik gösterir.`</mark>

> **Percent:** This is the field where the tax rate will be entered. <mark style="color:blue;">`decimal`</mark>  <mark style="color:orange;">`Vergiye göre değişiklik gösterir.`</mark>

{% hint style="info" %}
If the entered tax code list appears under Withholding Tax Codes, the following fields must be filled in:

ReasonCode: This is the field where the code will be entered.\
ReasonDesc: This is the field where the code description will be entered.
{% endhint %}

> **Exp:** If the tax entered is VAT withholding;

```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"
    }
]
```

### ManufacturerCode

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

> This is the field where the manufacturer code will be entered.

### BrandName

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

> This is the field where the brand name will be entered.

### ModelName

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

> This is the field where the model name will be entered.

### Note

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

> This is the area where the note will be added.

### OzelMatrahReason

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

> This is the field where the reason for the special tax base is entered. The possible values ​​are specified under Special Tax Base Codes in the code lists section.

{% hint style="info" %}
This section should be filled out if the invoice type is "OZELMATRAH".
{% endhint %}

### OzelMatrahTotal

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

> This is the field where the specific tax base amount will be entered.

{% hint style="info" %}
This section should be filled out if the invoice type is "OZELMATRAH".
{% endhint %}

{% hint style="info" %}
The sales price will be entered in a single entry. The VAT shown in the entry will be calculated based on the "Special Tax Base Amount".
{% endhint %}

### DeliveryInfo

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

{% hint style="info" %}
This section is where export information is entered on IHRACAT invoices.
{% 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> \
> This is the field where the GTIP (Customs Tariff Statistical Position) number will be entered.

> **DeliveryTermCode**  <mark style="color:blue;">`string`</mark>  <mark style="color:red;">`Zorunlu`</mark> \
> This is the field where the delivery terms for the goods/services are entered. The possible values ​​are listed under Delivery Terms Codes in the code lists section.

> **TransportModeCode**  <mark style="color:blue;">`string`</mark>  <mark style="color:red;">`Zorunlu`</mark>&#x20;
>
> This is the field where the shipping method information is entered. The possible values ​​are listed under Shipping Method Codes in the Code Lists section.

> **PackageBrandName**  <mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>
>
> This is the field where the brand name of the container holding the goods/services will be entered.

> **ProductTraceID**  <mark style="color:blue;">`string`</mark>  <mark style="color:red;">`Zorunlu`</mark>&#x20;
>
> This is the field where the Customs Tracking Number will be entered.

> **PackageID**  <mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>
>
> This is the field where the container number of the goods/services is entered.

> **PackageQuantity**  <mark style="color:blue;">`decimal`</mark>  <mark style="color:orange;">`Seçimli`</mark>
>
> The quantity of containers holding the goods/services is entered.

> **PackageTypeCode**  <mark style="color:blue;">`string`</mark>  <mark style="color:orange;">`Seçimli`</mark>
>
> This field is for entering the type of container in which the goods/services are stored. Possible values ​​are listed under Container Types in the code lists section.

{% 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>


---

# 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/en/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.
