# Contract-based sales

> Sales contract, call-off orders and consumption of the contract — the price comes from the contract, and the target cannot be exceeded.

URL: https://erpdocs.corexlogic.com/en/surecler/sozlesmeli-satis

When a price and quantity agreement is made with a customer for a long period, such as one year, the agreement is
recorded as a **sales contract** (satış sözleşmesi). The customer places orders as needed; the lines of these sales
orders are linked to the contract (**call-off order** — çağrı siparişi). The price comes from the contract, the target
cannot be exceeded, and the **Çağrılan** (Called Off) / **Kalan** (Remaining) quantities of the contract are tracked
automatically from approved sales orders.

> **Scenario**
A cleaning products agreement was made with **M-0019 Lara Kıyı Otelcilik ve Turizm A.Ş.** for the period
01.11.2026–31.10.2027: **MAM-0008 Sıvı Deterjan 5 LT** (liquid detergent, 5 L), 2,000 units at 235.00 TRY; **MAM-0009
Yüzey Temizleyici 1 LT** (surface cleaner, 1 L), 3,000 units at 90.00 TRY. In November the hotel places two sales
orders: 300 and 400 canisters of detergent.

```
Sales Contract SSZ-2026-000001 ──► Put into Effect ──► Call-off orders ──────────────► Close
   (Taslak)                        (Yürürlükte)       SS-2026-000005 · 300 (Onaylandı)  (Kapandı)
                                                      SS-2026-000009 · 400 (Onaylandı)
                                                      Called off 700 · Remaining 1,300
```

## 1. Prepare the contract

**Satış › Sipariş Yönetimi › Satış Sözleşmesi Oluştur** (Sales › Order Management › Create Sales Contract)

1. **Tür** (Type): *Miktar Sözleşmesi* (Quantity Contract — a target quantity per item). For a total amount target,
   select *Değer Sözleşmesi* (Value Contract) and enter the **Hedef Tutar (net)** (Target Amount, net).
2. **Müşteri** (Customer): M-0019. The **Satış Kanalı** (Sales Channel) and **Para Birimi** (Currency) determine which
   sales orders can call off the contract: a call-off can be made only from a sales order in the same channel and
   currency.
3. **Geçerlilik Başlangıcı** (Valid From) 01.11.2026, **Bitiş** (Valid To) 31.10.2027.
4. Add the two products with **Ürün ekle** (Add product); on the lines, enter the **Hedef Miktar** (Target Quantity) and
   **Birim Fiyat (net)** (Unit Price, net).
5. Click **Taslağı Kaydet** (Save Draft).

![Create Sales Contract — completed form](https://erpdocs.corexlogic.com/en/en/img/screens/satis/sozlesme-olustur.png)
1. Type — quantity or value contract
2. Validity range
3. Add product
4. Target quantity — call-offs cannot exceed it
5. Contract price — copied to the order
6. Save Draft

**Result:** **SSZ-2026-000001** — **Taslak** (Draft). A draft can be edited; no call-off can be made from it.
Details: [Create a sales contract](https://erpdocs.corexlogic.com/en/satis/islemler/sozlesme-olusturma).

## 2. Put the contract into effect

In the contract details, click **Yürürlüğe Al** (Put into Effect). The status changes to **Yürürlükte** (In Effect); the
buttons change to **Kapat** (Close) and **İptal Et** (Cancel). A contract in effect can no longer be edited.

## 3. Enter the call-off orders

**Satış › Sipariş Yönetimi › Satış Siparişi Oluştur** (Sales › Order Management › Create Sales Order)

1. **Müşteri** (Customer) M-0019; on the line, **MAM-0008**, **Miktar** (Quantity) 300.
2. Open the line details (**10. satır ayrıntısını göster** — Show line 10 details) and select
   *SSZ-2026-000001 · 235,00 · kalan 2.000 ADET* from the **Sözleşme** (Contract) list. The unit price changes to 235,
   the line discount is reset to zero, and "Fiyat sözleşmeden gelir; hedef aşılamaz" (The price comes from the
   contract; the target cannot be exceeded) is shown next to it.
3. Click **Siparişi Oluştur** (Create Order), then **Siparişi Onayla** (Approve Order) in the details.

![Call-off order — contract selected on the line](https://erpdocs.corexlogic.com/en/en/img/screens/satis/cagri-siparisi.png)
1. Line details — expanded
2. Contract — number, price and remaining
3. Price from contract, no discount

**Result:** **SS-2026-000005** is approved. The second sales order, **SS-2026-000009** (400 units), was entered the
same way. Although the customer's special price (239 TRY) is shown below the line, on a contract line the price comes
from the contract. Details: [Order from a contract](https://erpdocs.corexlogic.com/en/satis/islemler/sozlesmeden-siparis).

## 4. Monitor consumption

Contract details — **Kalemler** (Items) and **Çağrı Siparişleri** (Call-off Orders):

![Sales contract detail — released, call-offs](https://erpdocs.corexlogic.com/en/en/img/screens/satis/sozlesme-detay.png)
1. Status: Released — call-offs allowed
2. Called off — from approved orders
3. Remaining target
4. Call-off orders
5. Close — remainder no longer callable

| Item | Target | Called off | Remaining |
|---|---|---|---|
| MAM-0008 Sıvı Deterjan 5 LT | 2,000 ADET | 700 | 1,300 |
| MAM-0009 Yüzey Temizleyici 1 LT | 3,000 ADET | 0 | 3,000 |

- **Çağrılan** (Called Off) is counted only from sales orders in **Onaylandı** (Approved) status; a draft or cancelled
  sales order does not consume the contract.
- If a sales order or line is closed, only the shipped quantity counts as called off; the rest returns to the contract.
- The sales order selection list shows the contract's current remaining quantity (e.g. "kalan 1.300 ADET" — 1,300
  units remaining).

A sales order that exceeds the target is not saved. Example: with 700 units already called off, a new line of 1,500
units → "MAM-0008: SSZ-2026-000001 hedefi 2000 ADET — çağrılan 2200." (MAM-0008: target of SSZ-2026-000001 is 2000
units — called off 2200.)

Call-off orders are delivered and invoiced through the normal sales flow: [Quotation to invoice](https://erpdocs.corexlogic.com/en/surecler/tekliften-faturaya).

## 5. Close the contract

At the end of the period, or when the agreement ends early, click **Kapat** (Close) in the details → the **Sözleşmeyi
Kapat** (Close Contract) dialog ("Kalan artık çağrılmaz; geçmiş çağrılar değişmez." — The remainder can no longer be
called off; past call-offs do not change.); **Gerekçe** (Reason) is required. The status changes to **Kapandı**
(Closed). A contract that has never been called off can be cancelled with **İptal Et** (Cancel); a contract with
call-offs cannot be cancelled.

## FAQ / Troubleshooting

| What happened | Cause and what to do |
|---|---|
| The **Sözleşme** (Contract) field is not shown on the sales order line | For the line's product and unit, the customer has no contract that is in effect, valid on the order date and in the order's channel; or the currency is different. Make sure the line details are open. |
| "MAM-0008: SSZ-2026-000001 hedefi 2000 ADET — çağrılan 2200." (target of SSZ-2026-000001 is 2000 units — called off 2200) | The approved call-offs together with this sales order exceed the target. Reduce the quantity, or open a line without a contract for the rest. |
| "SSZ-2026-000001 yürürlükte değil — çağrı yapılamaz." (SSZ-2026-000001 is not in effect — no call-off can be made) | The contract is in draft, closed or cancelled. |
| "SSZ-2026-000001 sipariş gününde geçerli değil." (SSZ-2026-000001 is not valid on the order date) | The order date is outside the validity period. |
| "MAM-0008: fiyat sözleşmeden gelir (235 TRY, satır iskontosu yok)." (the price comes from the contract — 235 TRY, no line discount) | The price or discount was changed on a contract line. |
| "MAM-0008: bedelsiz kalem sözleşmeden çağrılmaz." (a free-of-charge item cannot be called off from a contract) | A free-of-charge item category cannot be linked to a contract. |
| "Sözleşmeye bağlı sipariş satırı var — iptal yerine kapatın." (There are sales order lines linked to the contract — close it instead of cancelling) | A contract with call-offs cannot be cancelled; use **Kapat** (Close). |
| "Yalnız taslak sözleşme düzenlenir." (Only a draft contract can be edited.) | A contract in effect cannot be changed; open a new contract. |

## Step-by-step tasks

- [1. Create a contract](https://erpdocs.corexlogic.com/en/satis/islemler/sozlesme-olusturma) — Type, customer, validity, item and target.
  - [2. Order from a contract](https://erpdocs.corexlogic.com/en/satis/islemler/sozlesmeden-siparis) — Selecting the contract on the line.
  - [3. Approve the sales order](https://erpdocs.corexlogic.com/en/satis/islemler/siparisi-onaylama) — An approved sales order consumes the contract.
