Fatura Oluşturma/Önizleme
Sistemde mevcut olan ve faturası henüz oluşturulmamış olan bir sipariş için bir api isteği (GET
) ile fatura oluşturulabilmektedir.
Oluşturulacak uygulamanın akışına göre iki farklı kullanım şekli mevcuttur:
sale_code
ile: '/api/v1/finance/saleinvoice/invoice_html_for_sale/?sale_code={Sipariş Kodu}'sale_id
ile: '/api/v1/finance/saleinvoice/invoice_html_for_sale/?sale_id={Sipariş Propars ID}'
ID veya kod bilgisine ek olarak fatura tarihi de url parametresi olarak gönderilebilmektedir. Zorunluluğu fatura tarihi ayarına bağlıdır. Eğer otomatik tarihlendirme kapalı ise fatura oluşturma isteğinde fatura tarihi gönderilmelidir.
Örnek Endpoint: /api/v1/finance/saleinvoice/invoice_html_for_sale/?sale_code=abc123&invoice_date=2018-05-02T09:00:00+0300
Bu endpointe GET
isteği gönderildinde fatura yoksa (verilen tarihle) oluşturulup, oluşan faturanın html görüntü önizlemesi dönülecektir.
Ayrıca şu parametreleri alabilmektedir:
invoice_uuid
: Sipariş için fatura oluşturuluyorsa ve oluşacak olan faturanın uuid numarası (ETTN) client tarafından belirlenmek isteniyorsa bu parametre ile belirlenebilir. Formatı uuid version 4 olmalıdır. Zorunlu değildir
invoice_number
: Sipariş için fatura oluşturuluyorsa ve oluşacak olan faturanın fatura numarası numarası (ETTN) client tarafından belirlenmek isteniyorsa bu parametre kullanılabilir. Zorunlu değildir
invoice_char_code
: ??
Fatura Gönderme
Faturası mevcut olan ama gönderilmemiş olan bir sipariş için veya faturası hiç oluşturulmamış bir sipariş için fatura gönderim
işlemi bir POST
isteğiyle gerçekleştirilebilmektedir. Farklı senaryolar aşağıdaki gibidir.
- Sipariş Bilgileri ile Gönderim
sale_code
ile: '/api/v1/finance/saleinvoice/send_invoice_for_sale/?sale_code={Sipariş Kodu}'sale_id
ile: '/api/v1/finance/saleinvoice/send_invoice_for_sale/?sale_id={Sipariş Propars ID}'
ID veya kod bilgisine ek olarak fatura tarihi de url parametresi olarak gönderilebilmektedir. Zorunluluğu fatura tarihi ayarına bağlıdır. Eğer otomatik tarihlendirme kapalı ise fatura tarihi gönderilmelidir.
Ayrıca şu parametreleri alabilmektedir:
invoice_uuid
: Sipariş için fatura oluşturuluyorsa ve oluşacak olan faturanın uuid numarası (ETTN) client tarafından belirlenmek isteniyorsa bu parametre ile belirlenebilir. Formatı uuid version 4 olmalıdır. Zorunlu değildir
invoice_number
: Sipariş için fatura oluşturuluyorsa ve oluşacak olan faturanın fatura numarası numarası (ETTN) client tarafından belirlenmek isteniyorsa bu parametre kullanılabilir. Zorunlu değildir
invoice_char_code
: ??
- Fatura ID ile Gönderim
Fatura ID ile: Daha önceden oluşturulmuş faturanın id'si biliniyorsa doğrudan fatura objesi üzerinden gönderim
işlemi yapılabilir. Aşağıdaki endpointe POST
isteği gönderilerek fatura gönderimi sağlanabilir.
Endpoint: '/api/v1/finance/saleinvoice/{fatura ID}/send_invoice/'
Fatura gönderme isteği başarılı olursa sunucu cevap olarak -türüne göre- çeşitli bilgileri bulunduran fatura objesini dönecektir.
Fatura Görüntüleme
Fatura Oluşturma/Önizleme başlığındaki işlemler ile fatura gönderildikten sonra da html formatında görüntüsü alınabilmektedir.
İmzalı Fatura Xml Dosyası
İmzalanıp gönderilmiş bir e-fatura veya bir e-arşiv için elektronik imzalı xml dosyasına ulaşmak için aşağıdaki endpointler kullanılabilir:
sale_code
ile: '/api/v1/finance/saleinvoice/get_signed_xml_for_sale/?sale_code={Sipariş Kodu}'sale_id
ile: '/api/v1/finance/saleinvoice/get_signed_xml_for_sale/?sale_id={Sipariş Propars ID}'- Fatura ID ile: '/api/v1/finance/saleinvoice/{fatura ID}/get_signed_xml/'
Fatura İptali
Yalnızca e-arşiv faturaları iptal edilebilmektedir. Aşağıdaki endpointlere PATCH
isteği gönderilirek raporu
Gelir İdaresi Başkanlığı'na henüz gönderilmemiş olan bir e-arşiv fatura iptal edilebilmektedir.
Aynı zamanda oluşturulmuş ama GIB'e gönderilmemiş e-faturaların da iptali mümkündür.
- Sipariş ID ile: PATCH '/api/v1/core/sale/{Sipariş ID}/cancel_invoice/'
- Sipariş Kodu ile: PATCH '/api/v1/core/sale/cancel_invoice_by_code/?sale_code={Sipariş Kodu}'