# Opening Stock import

> Import the inherited stock with warehouse, storage location, status, batch/serial number and unit cost as a one-time opening document.

URL: https://erpdocs.corexlogic.com/en/veri-aktarimi/stok-acilisi

- **Type:** Screen
- **Module:** General
- **Menu path:** Yönetim › Araçlar › Veri Aktarımı › Stok Açılışı (Administration › Tools › Data Import › Opening Stock)
- **Screen route:** `/erp/data-import/stock-opening`
- **Required permission:** `erp-inventory-opening-balances.view (görme, kontrol) · .import + .create (aktarma)`

The inherited stock: with warehouse, storage location, status, batch/serial number and unit cost. Items, warehouses
and storage locations are loaded **first**. This object is **migration data**: it is only imported with the
template, and existing records are not exported (on the Dışa Aktar (Export) tab: "Bu nesne geçiş verisidir — yalnız
şablonla içeri alınır, mevcut kayıt dışa aktarılmaz." — This object is migration data — it is only imported with the
template, existing records are not exported.).

> **Cannot be run again — a document, not an update**
The other objects work by code as "update if it exists, create if not"; the opening stock does not. Rows with the
same `Referans` become a **single opening document**, and a reference that has already been posted **is not posted a
second time**. In the demo installation, when the demo package's already-loaded opening workbook was validated again,
all 136 rows were rejected with this message: "Bu referansla açılış zaten yazılmış (AB-2026-000001) — stok ikinci
kez girmez." (An opening has already been posted with this reference (AB-2026-000001) — the stock is not entered a
second time.) Loading the same file again does not correct anything; changes after the opening are made with
Inventory Management documents.

![Stock Opening — same reference is not posted twice](https://erpdocs.corexlogic.com/en/en/img/screens/veri-aktarimi/stok-acilisi-tekrar.png)
1. All rows rejected
2. "Opening already posted with this reference"

## Workbook sheets

| Sheet | Matching (record key) | What it writes |
|---|---|---|
| **Açılış Bakiyeleri** (Opening Balances) | `Referans` | Opening rows. The same Referans becomes a single opening document; a reference already posted is not posted a second time. |

## Columns

The tables are generated from the same source as the system's **Alan Kılavuzu** (Field Guide) tab. If a column with
**Required: Yes** is left empty, the row becomes **Hatalı** (Invalid). All cells are read as text; `Evet`/`Hayır`
(Yes/No) columns accept no other value, and in a column with a list of allowed values the spelling must match the
list.

### Açılış Bakiyeleri (Opening Balances)

Opening rows. The same Referans becomes a single opening document; a reference already posted is not posted a second
time. Matching: `Referans`.

| Column | Required | Description | Example / allowed values |
|---|---|---|---|
| `Referans` | **Yes** | Groups the document — e.g. one reference per warehouse. | `DEVIR-ANA-D` |
| `AcilisTarihi` | **Yes** | Opening date (dd.mm.yyyy) — the go-live date is recommended. It cannot be in a closed period; a date earlier than today requires the back-dating permission. | `01.11.2026` |
| `DepoKodu` | **Yes** | The warehouse code. | `ANA-D` |
| `LokasyonKodu` | No | The warehouse's storage location; must be filled for a warehouse that requires storage locations. | `STOK` |
| `UrunKodu` | **Yes** | A stock-keeping item. | `HM-00001` |
| `UrunAdi` | No | Information — not read. |  |
| `Miktar` | **Yes** | Greater than zero. | `10` |
| `Birim` | **Yes** | The item's unit or a convertible unit. | `ADET` |
| `StokDurumu` | **Yes** | Stock status code (SIFIR, IKINCIEL …) — does not fall back to the default. | `SIFIR` |
| `LotNo` | No | Required for a batch-managed item. |  |
| `UretimTarihi` | No | The batch's production date. |  |
| `SonKullanmaTarihi` | No | The batch's expiry date. |  |
| `TedarikciLotNo` | No | The supplier's batch number. |  |
| `SeriNolari` | No | For a serial-managed item, as many serial numbers as the quantity, separated with ';'. |  |
| `BirimMaliyet` | **Yes** | Approved unit cost in the row's unit. Enter 0 for free-of-charge stock — it cannot be left empty: a goods receipt with cost is rejected for stock with an unknown cost (an opening valuation is required first). | `125,50` |
| `ParaBirimi` | **Yes** | Three-letter code (TRY, USD, EUR); a non-TRY cost is converted at the exchange rate of the opening date. | `TRY` |
| `MaliyetKaynagi` | **Yes** | The basis of the cost (count record, purchase invoice, valuation list) — written into the document's description. | `Son alış faturası` |

## In the demo package

`11-stok-acilisi.xlsx`: opening on 01.10.2026 — four warehouses, batch-managed chemicals (with expiry dates),
serial-numbered inverters and pumps; total value 1,960,810 TL. **Kontrol Et** (Validate) on an empty installation:
136 rows · Hatalı (Invalid) 0.

## Common errors

The messages are the same as the text in the system's **Kontrol sonucu** (Validation result) table (`…` is the
variable part).

| Message | Cause and solution |
|---|---|
| Bu referansla açılış zaten yazılmış (…) — stok ikinci kez girmez. (An opening has already been posted with this reference (…) — the stock is not entered a second time.) | The reference was imported before. If rows are missing, prepare a separate opening with a new reference. |
| …: '…' deposu bulunamadı. (…: warehouse '…' was not found.) | Create the warehouse first with [Warehouses and Storage Locations](https://erpdocs.corexlogic.com/en/veri-aktarimi/depolar-ve-lokasyonlar). |
| …: '…' deposunda '…' lokasyonu yok. (…: warehouse '…' has no storage location '…'.) | Create the storage location under the warehouse; in a warehouse that requires storage locations, this column must be filled. |
| …: '…' stok durumu bulunamadı. (…: stock status '…' was not found.) | Write the stock status code (e.g. `SIFIR`) exactly as defined in the system; an empty status does not fall back to the default. |

## Related

- [Data Import — overview](https://erpdocs.corexlogic.com/en/veri-aktarimi)
- [Validate the workbook](https://erpdocs.corexlogic.com/en/veri-aktarimi/islemler/kitabi-kontrol-etme) · [Import the workbook](https://erpdocs.corexlogic.com/en/veri-aktarimi/islemler/kitabi-aktarma)
- [Setup with data import process](https://erpdocs.corexlogic.com/en/surecler/veri-aktarimi-ile-kurulum)
