e-Envanter Defteri

API

İşlem Örnekleri

Firma, dönem, oluşturma, rapor ve durum sorguları için tam ve kopyalanabilir JSON örnekleri.

Oturum Açma

POST /api/Session/Login
{
  "Email": "entegrasyon@example.com",
  "Password": "GuvenliParolaniz"
}

Başarılı cevapta alınan token ve firma kimliği sonraki çağrıların header'larında kullanılır; parola yeniden gönderilmez.

VBT Client Tarafından Üretilen Aktarım

POST /api/InventoryState/TransferParsedFile
{
  "Credentials": {
    "IdentificationNumber": "1234567890",
    "BranchCode": "0000",
    "PeriodStart": "2026-01-01T00:00:00",
    "PeriodEnd": "2026-01-01T00:00:00"
  },
  "ParsedFile": {
    "Key": "client-uretimli-parca-000001.json",
    "Value": "BASE64_ENCODED_CLIENT_PART"
  }
}
Elle oluşturmayın: ParsedFile.Value, VBT Client'ın ayrıştırıp sıkıştırdığı gerçek parça içeriğinin Base64 karşılığıdır. Bu örnek yalnız JSON serileştirme biçimini gösterir.

Açılış Envanteri

POST /api/InventoryState/CreateInventory
{
  "IdentificationNumber": "1234567890",
  "BranchCode": "0000",
  "PeriodStart": "2026-01-01T00:00:00",
  "PeriodEnd": "2026-01-01T00:00:00"
}

Başarılı yanıt

{
  "Data": true,
  "Messages": [],
  "StackTrace": null,
  "StatusCode": 200,
  "TotalRows": 0,
  "TotalPages": 0,
  "IsSuccessful": true
}

Data=true açılış kaydı için üretim isteğinin kabul edildiğini gösterir. Nihai sonuç güncel özet durumundan izlenir.

Kapanış Envanteri

POST /api/InventoryState/CreateInventory
{
  "IdentificationNumber": "1234567890",
  "BranchCode": "0000",
  "PeriodStart": "2026-12-31T00:00:00",
  "PeriodEnd": "2026-12-31T00:00:00"
}

Başarılı yanıt

{
  "Data": true,
  "Messages": [],
  "StackTrace": null,
  "StatusCode": 200,
  "TotalRows": 0,
  "TotalPages": 0,
  "IsSuccessful": true
}

Data=true kapanış kaydı için üretim isteğinin kabul edildiğini gösterir. Nihai sonuç güncel özet durumundan izlenir.

Rapor ve Durum

POST /api/InventoryState/GetProcessReport
{
  "IdentificationNumber": "1234567890",
  "BranchCode": "0000"
}

Data.IsReadyForInventoryEntityCreation ve Data.IsReadyForInventoryUblCreation değerleri ile Data.DiagnoseMessages birlikte değerlendirilir.

POST /api/InventorySummary/GetCurrentInventorySummary
{
  "IdentificationNumber": "1234567890",
  "BranchCode": "0000"
}

Güncel özetin Uuid, dönem ve CurrentStatus alanları sonraki onay/durum çağrıları için korunur.

POST /api/InventoryApproval/InventoryApproval

Request gövdesi, GetEntity veya güncel özet cevabındaki Data nesnesinin tamamıdır.

{
  "Uuid": "22222222-2222-2222-2222-222222222222",
  "SecurityFirmUuid": "11111111-1111-1111-1111-111111111111",
  "IdentificationNumber": "1234567890",
  "BranchCode": "0000",
  "BranchDescription": "Merkez",
  "IsBranch": false,
  "PeriodStart": "2026-01-01T00:00:00",
  "PeriodEnd": "2026-01-01T00:00:00",
  "PartCount": 1,
  "HeaderCount": 25,
  "FirstHeader": 1,
  "LastHeader": 25,
  "DetailCount": 80,
  "FirstDetail": 1,
  "LastDetail": 80,
  "SourceApplication": "ERP",
  "SourceMethod": "Client",
  "SourceUser": "entegrasyon",
  "CurrentStatus": "WaitingForApprove",
  "PreviousStatus": "WaitingForInventoryUblCreation",
  "PeriodYear": 2026,
  "PeriodMonth": 1,
  "FailDescription": null,
  "IsFirmSummaryUpdatable": false,
  "FirmLastUniqueNumber": "25",
  "StatusDescription": "Envanter Onayı Bekleniyor",
  "InventoryFileSize": 102400
}

GİB Durumu ve Onaylı Dosya

POST /api/InventoryGib/GetBatchStatus
{
  "FileName": "PLATFORMDAN_DONEN_DOSYA_ADI.zip"
}

Örnek yanıt

{
  "Data": {
    "StatusDescription": "GİB TARAFINDAN İŞLENDİ",
    "StatusCode": "PAKET_DURUM_KODU",
    "FileName": "PLATFORMDAN_DONEN_DOSYA_ADI.zip"
  },
  "Messages": [],
  "StackTrace": null,
  "StatusCode": 200,
  "TotalRows": 0,
  "TotalPages": 0,
  "IsSuccessful": true
}

Data.StatusCode, Data.StatusDescription ve Data.FileName birlikte değerlendirilir. GİB durum kodu ve açıklaması örnekte temsili gösterilmiştir; entegrasyon gerçek yanıttaki değerleri kullanır.

POST /api/InventoryGib/ReceiveFile
{
  "FileName": "PLATFORMDAN_DONEN_DOSYA_ADI.zip"
}

Başarılı yanıt

{
  "Data": {
    "FileName": "PLATFORMDAN_DONEN_DOSYA_ADI.zip",
    "FileByte": "UEsDBBQAAAAI..."
  },
  "Messages": [],
  "StackTrace": null,
  "StatusCode": 200,
  "TotalRows": 0,
  "TotalPages": 0,
  "IsSuccessful": true
}

Data.FileName dosya adını, Data.FileByte ise JSON içinde Base64 olarak serileştirilen dosya içeriğini taşır.

Tarih modeli: Açılış ve kapanış isteklerinde başlangıç ile bitiş aynı gündür. 2026-01-01 / 2026-12-31 gibi bütün yılı kapsayan tek istek gönderilmez.