Laravel ile GİB e-Arşiv Fatura Entegrasyonu

kategori:

Laravel projelerinde GİB (Gelir İdaresi Başkanlığı) e-Arşiv Portal’ı üzerinden fatura oluşturmak artık çok daha kolay. Geliştirdiğimiz açık kaynaklı Laravel paketi ile, GİB’in test ortamına doğrudan bağlanabilir, fatura oluşturabilir, önizleyebilir ve ZIP formatında indirebilirsiniz.

Bu yazıda sizlere bu yeni paketin sunduğu özellikleri, neden geliştirildiğini ve nasıl kullanılacağını detaylarıyla anlatacağım.


Neden Bu Paketi Geliştirdik?

GİB’in e-Arşiv portalı üzerinden manuel fatura kesme işlemi zaman alan ve hataya açık bir süreçti. Özellikle Laravel projelerinde bu işlemi otomatikleştirmek isteyenler için hazır çözümler pahalı veya esnek değildi.

Bu ihtiyaçtan yola çıkarak, Laravel projeleriyle tam uyumlu ve geliştirici dostu bir paket oluşturmaya karar verdik.

Paket ile Neler Yapılabilir?

Bu paket sayesinde:

• GİB e-Arşiv test ortamına bağlanabilirsiniz.

• Taslak fatura oluşturabilirsiniz.

• Oluşturulan faturaların HTML önizlemesini alabilirsiniz.

• Faturaları ZIP formatında indirebilirsiniz.

• Kullanıcı bilgilerini ve alıcı verilerini GİB üzerinden çekebilirsiniz.

• Laravel’in Storage sistemiyle entegre olarak faturaları kaydedebilirsiniz.

• İptal ve itiraz talepleri gibi gelişmiş işlemleri (yakında) destekleyecektir.


Kurulum Oldukça Basit

composer require bercanozcan/earsiv
php artisan vendor:publish --tag=config


Kullanım Örneği

use Bercanozcan\\Earsiv\\Gib;

$gib = app(Gib::class)
    ->setTestCredentials()
    ->login();

$ettn = $gib->createDraft([
    'faturaTarihi' => now()->format('d/m/Y'),
    'vknTckn' => '11111111111',
    'aliciUnvan' => 'Demo Müşteri A.Ş.',
    ...
]);

$html = $gib->getHtml($ettn);
$path = $gib->saveToDisk($ettn);

Dosya Sistemi Desteği

Paket, Laravel’in Storage sistemini kullanır. İster local, ister public, ister s3 gibi bir disk kullanıyor olun, faturalar doğru şekilde yapılandırdığınız dizine kaydedilir.

Örneğin: storage/app/faturalar/ yoluna otomatik olarak ZIP dosyası olarak kaydedilir.

Packagist Üzerinde Yayında

Paketimizi Packagist üzerinden de kurabilirsiniz:

🔗 https://packagist.org/packages/bercanozcan/earsiv

Her türlü katkıya ve geri bildirime açığız. GitHub üzerinden yıldız vererek destek olmayı unutmayın!

👉 https://github.com/bercanozcan/earsiv


Yorumlar

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir