e-Defter

API

Entegrasyon API Endpoint Referansı

Client, kullanıcı arayüzü ve API arasındaki aktarım, oluşturma, onay, durum ve GİB sonucu sözleşmeleri.

Bu sayfadaki endpointler tek bir çağrıda yasal defter sonucunu üretmez. Aktarım, rapor, üretim, onay, imza ve GİB sonucu birbirinden ayrı aşamalardır. Her çağrıdan sonra hem ServiceResponse hem güncel özet durumu kontrol edilmelidir.

Önerilen Çağrı Sırası

SıraÇağrıÖn koşulBaşarı kanıtıSonraki adım
1Session/LoginYetkili kullanıcıToken ve firma UUID'si alındı.Header'ları oluşturun.
2LedgerState/TransferParsedFileVBT Client analizi başarılıParça özet kaydıyla ilişkilendirildi.Kalan parçaları aktarın.
3LedgerState/GetProcessReportTüm parçalar aktarıldıIsReadyForLedgerCreation=true, teşhis listesi boş ve toplamlar tutarlı.Defter üretimini başlatın.
4LedgerState/CreateLedgerRapor üretime hazırİstek kabul edildi; özet WaitingForApprove durumuna ilerledi.Önizleme ve mutabakat yapın.
5LedgerApproval/LedgerApprovalGüncel özet WaitingForApproveÖzet WaitingForSign durumuna ilerledi.İmza sonucunu izleyin.
6LedgerGib/BulkSendGibQueueÖzet WaitingForSendingToGibGönderim isteği kabul edildi; mevcut Uuid ilerliyor.Paket ve özet durumunu sorgulayın.
7LedgerGib/GetBatchStatus / ReceiveFilePlatformun döndürdüğü gerçek paket adıGİB sonucu olumlu ve onaylı dosya alınabilir.İmzalı defter ve onaylı beratları arşivleyin.

VBT Client → API

POST/api/LedgerState/TransferParsedFile

Analiz edilmiş tek defter parçasını firma ve dönem kimliğiyle aktarır. Çok parçalı kaynaklarda her parça ayrı çağrılır.

RequestTransferParsedLedgerPartCredentials, ParsedFile.Key, ParsedFile.Value
ResponseServiceResponse<LedgerSummaryViewModel>
TekilleştirmeAynı firma, şube, ay ve gerçek parça adı kullanılır.
Başarı sonrasıSon parça aktarılana kadar üretim çağrılmaz.
POST/api/LedgerState/GetProcessReport

Aktarımın sayısal özetini, teşhis mesajlarını ve oluşturma hazır bilgisini döndürür.

RequestFirmCredentials
ResponseServiceResponse<TempLedger_ProcessReport>
KontrolDescriptive, DiagnoseMessages, AccountTransactions ve IsReadyForLedgerCreation birlikte değerlendirilir.
BaşarısızsaTeşhis mesajındaki parça, fiş ve satır bilgisi kaynak kayıtla eşleştirilir; CreateLedger çağrılmaz.
Client sözleşmesi: TransferParsedFile doğrudan kaynak muhasebe JSON'u kabul etmez. ParsedFile, VBT Client'ın ürettiği ad/Base64 byte çifti olarak taşınır.

Kullanıcı Arayüzü → API

POST/api/LedgerState/CreateLedger

Hazır aktarım için aylık yevmiye, kebir ve berat üretimini başlatır.

RequestLedgerCredentials
ResponseServiceResponse<bool>
Ön koşulSüreç raporu üretime hazır ve teşhis listesi boş olmalıdır.
Başarı anlamıData=true isteğin kabul edildiğini gösterir; üretimin bittiğini göstermez.
POST/api/LedgerApproval/LedgerApproval

Kontrol edilen tek bir defter özetini onaylar ve imza aşamasına taşır.

RequestLedgerSummaryViewModel
ResponseServiceResponse<bool>
Ön koşulYevmiye, kebir, berat, dönem ve mali toplamlar mutabık; durum WaitingForApprove.
Model kaynağıGüncel GetEntity veya özet cevabındaki Data nesnesinin tamamı.

Durum ve GİB Sonucu

MetotEndpointAmaç
GET/api/LedgerSummary/GetEntity?Uuid={uuid}Tek bir dönem özetini ve güncel durumu alır.
POST/api/LedgerSummary/GetCurrentLedgerSumaryFirma/şube için güncel dönem özetini döndürür.
POST/api/LedgerSummary/GetPreviousLedgerSummaryBir önceki dönem özetini döndürür.
POST/api/LedgerGib/BulkSendGibQueueLedgerCredentials ile hazır dönemin GİB gönderim sürecini başlatır.
POST/api/LedgerGib/GetBatchStatusGetBatchStatusRequestModel içindeki gerçek FileName için GİB durumunu döndürür.
POST/api/LedgerGib/ReceiveFileReceiveDocumentRequestModel ile GİB onaylı dosyayı alır.
Çağrı sırası: GİB gönderimi yalnız WaitingForSendingToGib durumunda başlatılır. Aynı dönem için yeni gönderim açmadan önce güncel özet ve paket durumu kontrol edilir.

Belirsiz Sonuç ve Güvenli Tekrar

OlayYapılmaması gerekenGüvenli kontrol
Parça aktarımında timeoutDosya adını değiştirip yeni parça gibi göndermekGüncel özeti ve süreç raporundaki parça/fiş sayılarını kontrol edin.
CreateLedger cevabı alınamadıAynı dönemi doğrudan yeniden oluşturmakGetCurrentLedgerSumary veya GetEntity ile durum ve Uuid'yi doğrulayın.
Onay cevabı alınamadıEski özet gövdesiyle tekrar onay vermekGüncel özeti alın; durum hâlâ WaitingForApprove ise güncel Data nesnesini kullanın.
GİB gönderim sonucu belirsizYeni paket veya yeni dönem oluşturmakAynı Uuid, gerçek paket adı ve güncel durum üzerinden sorgulayın.