Sorumluluklar
Entegratör Sorumlulukları
Entegratörün veri hazırlama, doğrulama ve belge oluşturma sürecindeki sorumlulukları.
Veri Sorumluluk Tablosu
Entegratörün (ERP/e-ticaret sistemi) API çağırmadan önce sağlaması gerekenler:
| # | Veri | Kim Üretir | Entegratör Ne Yapmalı | Hata |
|---|---|---|---|---|
| 1 | ProfileId | Entegratör | Alıcı GİB e-Fatura mükellefi değilse EARSIVFATURA gönder | INV0220 / INV0221 / INV0229 |
| 2 | AccountingCustomerParty | Entegratör | Alıcının VKN (tüzel) veya TCKN (gerçek kişi) bilgisini gönder | Taraf/kimlik validasyonu |
| 3 | InvoiceLine[] | Entegratör | Her ürün/hizmet için miktar, birim, ad, fiyat ve satır toplamını hesapla | UBL kardinalite hatası |
| 4 | WithholdingTaxTotal | Entegratör | Tevkifat alanı kullanılacaksa belge seviyesinde tutarlı hesapla | Validasyon hatası |
| 5 | BillingReference | Entegratör | Mükerrer/iade veya ÖKC referansı varsa InvoiceDocumentReference/AdditionalDocumentReference ile gönder | Referans validasyonu |
| 6 | İnternet satışı ibaresi ve alanları | Entegratör | Satış tamamen internet üzerinden yapıldıysa VUK 509 md. IV.2.4.5'teki zorunlu alanları ve ibareyi ekle | Validasyon hatası |
Senaryo Bazlı Hazırlık Matrisi
Ortak belge alanları hazırlandıktan sonra entegratörün asıl ayrımı, satışın niteliğine göre doğru ek alanı doğru referansla göndermesidir.
| Senaryo | Entegratörün Hesaplayacağı Alanlar | Zorunlu Kod/Alan | Gönderim Öncesi Kontrol |
|---|---|---|---|
| Normal satış | Taraflar, satırlar, belge toplamları | InvoiceLine[], LegalMonetaryTotal | Ek alan yoksa PayableAmount satır toplamlarıyla kapanır |
| İnternet satışı | Web adresi, ödeme şekli/tarihi, taşıyan bilgisi, gönderim/ifa tarihi | VUK 509 md. IV.2.4.5 zorunlu alanları + ibare | "Bu satış internet üzerinden yapılmıştır." ibaresi eklendi mi |
| ÖKC ile birlikte | ÖKC fiş referansı | BillingReference.AdditionalDocumentReference, DocumentTypeCode=OKCBF, DocumentType=OKCBilgiFisi | Ayrıca Id/IssueDate/DocumentDescription/Attachment.ExternalReference/IssuerParty.EndpointId/ValidityPeriod.StartDate dolu olmalı |
| Tevkifatlı | Tevkifat matrahı, oranı ve tutarı | WithholdingTaxTotal | Aynı tutar TaxTotal altında tekrar düşülmemeli |
| Mükerrer/iade referanslı | İlişkili belgenin no/tarih bilgisi | BillingReference.InvoiceDocumentReference | Referans verilen belge gerçekten mevcut olmalı |
| İptal/İtiraz | İptal/itiraz edilecek belgenin kimliği | EArchiveCancelRequestModel / DocumentObjectionRequestModel | Bkz. İptal ve İtiraz Durum Takibi |
Adım Süreci
Entegratör tarafındaki hazırlık süreci, alıcı uygunluk kontrolünden başlar; akış bu hazırlığın API gönderimine nasıl bağlandığını gösterir.
Doğrulama Öncesi Kontrol Listesi
Request gönderilmeden önce yapılan son kontrol, teknik hata dönüşlerini azaltır ve belge üretimini daha öngörülebilir hale getirir.
| Kontrol | Beklenen | Neden |
|---|---|---|
| Alıcı uygunluğu | Alıcı VKN/TCKN'si GİB e-Fatura mükellefi listesinde değil | EARSIVFATURA yalnızca e-Fatura'ya kayıtlı olmayan alıcılar için geçerlidir (INV0221); mükellef olma tarihi fatura tarihinden sonraysa TICARIFATURA da INV0229 ile reddedilebilir |
| Taraflar | Alıcı VKN (tüzel) veya TCKN (gerçek kişi) ile gönderilir | UBL taraf rolü ve GİB raporu aynı kimlik tipine dayanır |
| Satırlar | En az bir InvoiceLine; miktar, birim, ürün adı ve fiyat dolu | Faturanın ekonomik içeriği satır seviyesinde taşınır |
| İnternet satışı | İbare + 6 zorunlu alan (web adresi, ödeme şekli/tarihi, taşıyan, gönderim/ifa tarihi, iade bölümü) dolu | VUK 509 md. IV.2.4.5 zorunlu tutar |
| Tevkifat | WithholdingTaxTotal kullanılıyorsa toplamlar PayableAmount ile uyumlu | Net ödenecek tutarın aynı kesintiyi iki kez düşmesini engeller |
| İptal/İtiraz yasal süresi | 8 günlük yasal yanıt süresi entegratör tarafında izlenir | TTK madde 21'e dayanan genel bir hukuki süredir; e-Arşiv Fatura'nın iptal/itiraz akışında API tarafından doğrulanmaz (bkz. İptal ve İtiraz Durum Takibi) |