# Sales return

> Goods coming back from the customer — return request, approval, receiving the return from the delivery into stock (warehouse, stock status, batch) and what follows.

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

In CoreX ERP, goods that were shipped to a customer and come back are handled with two documents: a **return
request** to agree on the quantity and reason before the goods come back, and a **sales return** to take the goods
into stock when they arrive at the warehouse. The request is optional; the return is always received from the
**delivery** with which the goods were shipped.

> **Scenario**
**M-0004 Trakya Et ve Et Ürünleri A.Ş.** reports that 12 cans from batch **DET-2609-002** of the item
**MAM-0008 Sıvı Deterjan 5 LT**, received with delivery **SV-2026-000001** dated 01.11.2026, arrived with cracked
caps. On 02.11.2026 the sales team opens a return request for 12 units; when the goods arrive at the warehouse they
are received into **Mamul Deposu / RAF-M2** (Finished Goods Warehouse / RAF-M2) in the **Karantina**
(Quarantine) stock status, because they will await quality inspection.

```
Delivery SV-2026-000001 ──► Return Request IT-2026-000001 ──► Approval ──► Sales Return SI-2026-000001
 (Goods Issue Posted)         (Awaiting Approval)              (Approved)    (stock +12, Quarantine)
                                     │                                        │
                                     └── Reject / Cancel (final status)       └── Reverse Return (for a wrong posting)
```

## 1. Find the delivery

**Lojistik Yönetimi › Giden Teslimat › Teslimatlar** (Logistics › Outbound Delivery › Deliveries) — open the
delivery details. The return buttons appear only on a delivery in **Mal Çıkışı Kaydedildi** (Goods Issue Posted)
status: **İade Talebi Aç** (Open Return Request) and **İade Al** (Receive Return). **İade Geçmişi** (Return History)
at the bottom of the page lists the returns received from this delivery.

![Delivery detail — return actions and return history](https://erpdocs.corexlogic.com/en/en/img/screens/satis/teslimat-iade-dugmeleri.png)
1. Returns only after goods issue
2. Open Return Request — agree first
3. Receive Return — goods arrived
4. Returns taken from this delivery

## 2. Open the return request

On the delivery details, click **İade Talebi Aç** (Open Return Request) → **Yeni İade Talebi** (New Return
Request):

1. **Talep Tarihi** (Request Date) (cannot be earlier than the delivery date) and **İade Nedeni** (Return Reason):
   *Hasarlı teslim* (Damaged on delivery).
2. **Açıklama** (Description): "Müşteri DET-2609-002 lotundan 12 bidonun kapağının çatlak geldiğini bildirdi."
   (The customer reported that 12 cans from batch DET-2609-002 arrived with cracked caps.)
3. In the **Kalemler** (Items) table, enter **12** in the **Talep** (Requested) cell of line 20 (batch
   DET-2609-002, **Dönebilir** (Returnable) 220).
4. Click **Talebi Aç** (Open Request).

![New Return Request form](https://erpdocs.corexlogic.com/en/en/img/screens/satis/iade-talebi-olustur.png)
1. Return reason
2. Returnable — shipped − reversed − returned
3. Requested quantity
4. Open Request — stock unchanged

**Result:** **IT-2026-000001** — **Onay Bekliyor** (Awaiting Approval). The request is a decision document;
**stock does not change**. Details: [Open a return request](https://erpdocs.corexlogic.com/en/satis/islemler/iade-talebi-acma).

## 3. Decide on the request

**Satış › İade Yönetimi › İade Talepleri** (Sales › Returns Management › Return Requests) — the approver sees their
queue with the **Durum: Onay Bekliyor** (Status: Awaiting Approval) filter and opens the request.

![Return request detail — awaiting approval](https://erpdocs.corexlogic.com/en/en/img/screens/satis/iade-talebi-detay.png)
1. Status
2. Approve — someone other than the requester
3. Reject — with a reason
4. Segregation of duties
5. Quantity returned against the request

The screenshot above is the screen of the person who opened the request (Demo Kullanıcı): **Onayla** (Approve) is
disabled. The decision is made by another approval authority — in the demo environment **Demo Onaylayıcı** (Sales
Manager):

![Return request — approver’s view](https://erpdocs.corexlogic.com/en/en/img/screens/satis/iade-talebi-onayci.png)
1. Status
2. Approve — someone other than the requester
3. Reject — with a reason
4. Requested · Returned · Remaining

- **Onayla** (Approve) → **Onaylandı** (Approved) (no dialog opens): the return can be received from this request,
  for the request's items and up to its remaining quantity. The **Karar** (Decision) field records who made the
  decision and when; the buttons become **İade Al** (Receive Return) and **Kapat** (Close).
- **Reddet** (Reject) (a **Red gerekçesi** — rejection reason — is required) → **Reddedildi** (Rejected); **İptal
  Et** (Cancel) (an **İptal gerekçesi** — cancellation reason — is required) → **İptal Edildi** (Cancelled). Both are
  final statuses.

![Approved return request — Receive Return and Close](https://erpdocs.corexlogic.com/en/en/img/screens/satis/iade-talebi-onaylandi.png)
1. Status
2. Receive Return — form linked to the request
3. Close — remainder not expected, with a reason
4. Who decided and when

The person who opened the request cannot approve it: the button is disabled and reads "Kendi açtığınız talebi
onaylayamazsınız; kararı başka bir yetkili verir." (You cannot approve a request you opened yourself; another
authorized user makes the decision.) Details: [Approve or reject a return request](https://erpdocs.corexlogic.com/en/satis/islemler/iade-talebini-onaylama).

> **In the demo environment**
IT-2026-000001 was approved by Demo Onaylayıcı on 02.11.2026. The example return SI-2026-000001 (step 4) was
received directly from the delivery before the request was approved, so it is not linked to the request: the
request's **Dönen** (Returned) quantity is 0 and **Kalan** (Remaining) is 12. The **İade Al** (Receive Return)
button of the approved request opens the same form with the line "IT-2026-000001 onaylı iade talebinden — yalnız
talebin kalemleri, talebin kalanı kadar." (From approved return request IT-2026-000001 — only the request's items,
up to the request's remaining quantity.); the line's **İade edilebilir** (Returnable) quantity is the request's
remaining quantity (12), and no return can be received from a delivery line that is not in the request.

![New Sales Return — from an approved request](https://erpdocs.corexlogic.com/en/en/img/screens/satis/iade-al-talepten.png)
1. Request link — only its items, up to the remainder
2. Line with nothing left to return
3. Return this line
4. Return quantity — up to the request remainder
5. Stock status — e.g. Quarantine
6. Save — stock increases at once

## 4. Receive the return into stock when the goods arrive

On the approved request, click **İade Al** (Receive Return), or on the delivery details click **İade Al** → **Yeni
Satış İadesi** (New Sales Return):

1. **İade Tarihi** (Return Date) and **İade Nedeni** (Return Reason): *Hasarlı teslim* (Damaged on delivery);
   **Açıklama** (Description): "12 bidon kapağı çatlak geldi; kalite kontrolü için karantinaya alındı." (12 can
   caps arrived cracked; placed in quarantine for quality inspection.)
2. On line 20, click **Bu satırı iade al** (Return this line) → **İade Miktarı** (Return Quantity) 12.
3. **Giriş Deposu** (Receiving Warehouse) *MAMUL — Mamul Deposu*, **Lokasyon** (Storage Location) *RAF-M2 — Mamul
   Rafı 2*, **Stok Durumu** (Stock Status) *KARANTINA — Karantina*.
4. Click **İadeyi Kaydet ve Stoğa Al** (Save Return and Receive into Stock).

![New Sales Return — return from delivery](https://erpdocs.corexlogic.com/en/en/img/screens/satis/iade-al.png)
1. Return reason
2. Return this line
3. Return quantity — up to the returnable
4. Receiving warehouse and location
5. Stock status — e.g. Quarantine
6. Save — stock increases at once

**Result:** **SI-2026-000001** is saved and the goods **enter stock at the same time**. The document cannot be
changed.

![Sales return detail](https://erpdocs.corexlogic.com/en/en/img/screens/satis/iade-detay.png)
1. Receiving warehouse / location
2. Stock status received into
3. Returned lot or serial
4. Reverse Return — for a wrong entry

**Stock effect:**

| | MAM-0008 · batch DET-2609-002 |
|---|---|
| Before the return | On hand 0 (all 220 units had been shipped) |
| After the return | **MAMUL / RAF-M2 / Karantina: on hand 12, available 0** |
| Value | 1.500,00 TRY — the goods come in at the cost at which they left with the delivery (125,00 TRY/unit) |

Stock in the quarantine status is not counted as available; it is not allocated to sales or shipments. After the
quality decision, change the stock status with **Stok Yönetimi › Mal Hareketleri › Stok Durumu Değişimi**
(Inventory › Goods Movements › Stock Status Change).

**Other effects:**

- Sales order **SS-2026-000001** stays **shipped** (a return means the delivery did take place; it is not a
  correction).
- The returnable quantity of the delivery line drops from 220 to 208; SI-2026-000001 appears in **İade Geçmişi**
  (Return History).
- If the return was received from a request, the request's **Dönen** (Returned) quantity increases; when all items
  have come back, the request automatically becomes **Kapandı** (Closed).
- The return amount (3.528,00 TRY, approximately from the order price) is deducted from the customer's rebate
  basis — in the example, **İadeler −2.940,00 TRY** (Returns, net) in rebate agreement PRA-2026-000001.
- The invoice side of the return is in Finance.

Details: [Receive a return from a delivery](https://erpdocs.corexlogic.com/en/satis/islemler/iade-alma).

## 5. Wrong posting: reverse the return

On the return details, click **İadeyi Geri Al** (Reverse Return) → **İade geri alınsın mı?** (Reverse the
return?): the stock receipt is reversed with today's date, the document remains as "geri alınmış" (reversed) and
the goods can be received as a return again. **Geri Alma Gerekçesi** (Reversal Reason) is required. If a return
received from a request is reversed, the quantity goes back to the request.

## FAQ / Troubleshooting

| What happened | Cause and what to do |
|---|---|
| **İade Talebi Aç** (Open Return Request) / **İade Al** (Receive Return) is missing on the delivery | The delivery is **Açık** (Open) or **İptal Edildi** (Cancelled) (the goods did not leave), or you do not have the permission (`erp-sales-return-requests.create`, `erp-sales-returns.create`). |
| **Onayla** (Approve) is disabled: "Kendi açtığınız talebi onaylayamazsınız; kararı başka bir yetkili verir." (You cannot approve a request you opened yourself; another authorized user makes the decision.) | Segregation of duties. Another approval authority must open or approve the request. Server message: "Kendi açtığınız iade talebini onaylayamazsınız. Kararı başka bir yetkili vermeli." (You cannot approve a return request you opened yourself. Another authorized user must make the decision.) |
| "İade talebi henüz onaylanmadı; onaysız talepten iade alınamaz." (The return request has not been approved yet; a return cannot be received from an unapproved request.) | The request is Onay Bekliyor (Awaiting Approval). A decision must be made first — or receive the return from the delivery without a link to the request. |
| "İade talebi kapalı; bu talepten iade alınamaz." (The return request is closed; a return cannot be received from this request.) | The request is Kapandı (Closed), Reddedildi (Rejected) or İptal Edildi (Cancelled). |
| "10. talep satırı: iade miktarı (15) talebin kalanını (12) aşıyor." (Request line 10: the return quantity (15) exceeds the request's remaining quantity (12).) | A return received from a request cannot exceed the requested quantity (the numbers are examples). |
| "20. teslimat satırı daha önce tamamen iade edilmiş ya da geri alınmış." (Delivery line 20 has already been fully returned or reversed.) | No returnable quantity is left on the line. |
| "Yalnız karar bekleyen talep iptal edilebilir; onaylanmış talep kapatılır." (Only a request awaiting a decision can be cancelled; an approved request is closed.) | If the remaining quantity is no longer expected on an approved request, use **Kapat** (Close). |
| "İade tarihi teslimat tarihinden önce olamaz." (The return date cannot be earlier than the delivery date.) | Correct the date. |
| "'MAMUL' deposunda lokasyon seçimi zorunlu." (A storage location must be selected in warehouse 'MAMUL'.) | In a warehouse with storage location tracking, select a **Lokasyon** (Storage Location) (the warehouse code is an example). |
| "Stok bu sırada başka bir işlemle değişti. Sayfayı yenileyip tekrar deneyin." (Stock was changed by another transaction in the meantime. Refresh the page and try again.) | Another transaction at the same time; update the form with **İade bilgilerini yenile** (Refresh return information). |
| "İade faturalanmış (fatura, fatura referansı ya da gelen iade faturası bağlı) — geri almadan önce o bağı kaldırın." (The return has been invoiced (an invoice, invoice reference or incoming return invoice is linked) — remove that link before reversing.) | An invoiced return cannot be reversed. |

## Step-by-step tasks

- [1. Open a return request](https://erpdocs.corexlogic.com/en/satis/islemler/iade-talebi-acma) — From the delivery, before the goods come back.
  - [2. Decide on the request](https://erpdocs.corexlogic.com/en/satis/islemler/iade-talebini-onaylama) — Approval, rejection, closing.
  - [3. Receive a return from a delivery](https://erpdocs.corexlogic.com/en/satis/islemler/iade-alma) — Warehouse, stock status, batch and serial number.
  - [Return without a delivery](https://erpdocs.corexlogic.com/en/satis/islemler/teslimatsiz-iade) — Goods coming back without a delivery.
