Download the PHP package mlevent/fatura without Composer

On this page you can find all versions of the php package mlevent/fatura. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package fatura

🧾 Fatura

GİB e-Arşiv portal üzerinde; e-Fatura, e-SMM, e-Müstahsil oluşturma, düzenleme, imzalama vb. işlemlere olanak tanır.

Fatura

Başlarken

Bu paket GİB'e tabi şahıs şirketi ya da şirket hesapları ile çalışır ve bu kişiler adına resmi fatura/makbuz oluşturur. GİB e-Arşiv portala tarayıcınızdan giriş yapmak için aşağıdaki linkleri kullanabilirsiniz;

Kullanıcı kodu ve parola bilgilerini muhasebecinizden ya da GİB - İnteraktif Vergi Dairesi'nden edinebilirsiniz.

Fatih Kadir Akın'ın fatura.js paketinden faydalanılmıştır.

Kurulum

🛠️ Paketi composer ile projenize dahil edin;

🎉 Özellikler

🔗Api Bağlantısı

Test Kullanıcısı

e-Arşiv portal üzerinden yeni bir test kullanıcısı oluşturmak ve token almak için;

Token ve kullanıcı bilgilerine ulaşmak için;

Gerçek Kullanıcı

e-Arşiv portal kullanıcı bilgilerinizi setCredentials metodunu kullanarak tanımlayabilirsiniz.

Bilgilerinizi doğrudan login metoduyla da tanımlayabilirsiniz.

Not: Token değerini herhangi bir yerde kullanmanız gerekmeyecek.

Oturum Sonlandırma

Herhangi bir kısıtlama veya oturum sorunu yaşamamak adına, işlemlerden sonra oturumu sonlandırabilir ya da setToken yöntemini kullanabilirsiniz.

Bir kez token aldıktan sonra token süresi sonlanana kadar login/logout olmadan da işlem yapılabilir.

Token süresi sonlandığında yeni token alınmalıdır.

📃Belge Oluşturma

Model kullanırken named arguments (adlandırılmış değişkenler) veya dizilerle çalışabilirsiniz. Oluşturulan belgeler, daha sonra imzalanmak üzere e-Arşiv portalda taslaklara kaydedilir.

faturaUuid ve belgeNumarasi belirtildiyse; portalda bu bilgilerle eşleşen belge güncellenir, diğer durumda portal üzerinde yeni bir belge oluşturulur. Belge Güncelleme sayfasını kontrol edin.

e-Fatura

Kütüphaneyi kullanarak aşağıdaki fatura türleri ile çalışabilirsiniz;

Döviz cinsinden fatura düzenlemek için modelde paraBirimi ve dovizKuru parametreleri kullanılmalıdır.

Belge oluştururken model kullanmak istemiyorsanız /examples klasörü altındaki createInvoiceWithoutModel.php dosyasındaki örneği inceleyebilirsiniz.

Satış

Satış faturası oluşturabilmek için, faturaTipi InvoiceType::Satis gönderilmelidir.

İade

İade faturası oluşturabilmek için, faturaTipi InvoiceType::Iade gönderilmeli; iadeye konu faturalar addReturnItem metoduyla faturaya eklenmelidir.

Tevkifat

Tevkifatlı fatura oluşturabilmek için, faturaTipi InvoiceType::Tevkifat gönderilmelidir.

Tevkifat kodlarına ait liste çıktısını almak için;

İstisna

İstisna fatura oluşturabilmek için, faturaTipi InvoiceType::Istisna gönderilmeli; 12 haneli gtip kodu faturaya ait ürün/hizmet eklenirken belirtilebilir.

Özel Matrah

Özel matrah fatura oluşturabilmek için, faturaTipi InvoiceType::OzelMatrah gönderilmeli; faturaya ait ürün/hizmet eklenirken ozelMatrahNedeni ve ozelMatrahTutari belirtilmelidir.

Özel matrah nedenlerine ait liste çıktısını almak için;

e-Müstahsil

Müstahsil makbuzu ile çalışılacaksa, Gib sınıfı başlatılırken DocumentType::ProducerReceipt başlangıç parametresi olarak gönderilmelidir.

e-SMM

Serbest meslek makbuzu ile çalışılacaksa, Gib sınıfı başlatılırken DocumentType::SelfEmployedReceipt başlangıç parametresi olarak gönderilmelidir.

Not Ekleme

Belgelere not eklemek için, setNote metodunu kullanabilirsiniz. Not eklenmemiş belgelere otomatik olarak, "yazı ile toplam ödenecek tutar" not olarak eklenir.

💸Vergi Ekleme

Belgedeki hizmetlere addTax metodunu kullanarak vergi ekleyebilirsiniz. Vergiler doğrudan belgeye eklenemez, yalnızca öğe modeli üzerinden her bir öğeye ayrı ayrı eklenebilir.

Vergi Listesi

Vergi listesine ulaşmak için cases statik metodunu kullanabilirsiniz;

Vergiler ve Toplamlar

Belgeye eklenen öğelere ulaşmak için getItems metodunu kullanabilirsiniz;

Belge Günceleme

Fatura oluşturulurken faturaUuid ve belgeNumarasi belirtildiyse; portalda bu bilgilerle eşleşen belge güncellenir, diğer durumda portal üzerinde yeni bir belge oluşturulur.

Belgeleri güncellemek için bir diğer yöntem; önce düzenlenecek belgeyi getirmek ve daha sonra düzenlenecek alanlarla birlikte güncelleme isteği göndermektir. Örneğin oluşturulan faturada yalnızca alıcı bilgilerini güncellemek isteyebilirsiniz;

addItem metodunun kullanılması durumunda içe aktarılmış öğeler silinecektir.

Belge Silme

Taslak belgeleri silmek için deleteDraft metodu kullanılmalıdır. Metod bir dizi kabul eder. Gönderilecek dizi içerisinde silinecek belge veya belgelere ait uuid bilgisi bulunması gerekir.

Aşağıdaki örnek, bilinen bir tarih aralığındaki tüm taslak belgeleri siler.

Belirsiz bir tarih aralığındaki taslak belgeler silinmek isteniyorsa;

Belge İmzalama

☢️ Belge imzalama, faturanın/makbuzun kesilmesi işlemidir ve vergi sisteminde mali veri oluşturur. Belge imzalandıktan sonra üzerinde değişiklik yapılamaz ve silinemez. Bu nedenle dikkatli kullanınız.

📲SMS ile İmzalama

SMS doğrulamasına başlamak için startSmsVerification yöntemi kullanılmalıdır. Yöntem portalda kayıtlı gsm numarasına bir doğrulama kodu gönderecek ve imzalama işlemi için daha sonra kullanacağınız bir ID döndürecektir.

Doğrulama işlemini tamamlamak için kullanılacak completeSmsVerification yöntemine; SMS ile gelen doğrulama kodu, SMS doğrulaması başlatılırken alınan Operasyon ID'si ve onaylanacak belgelere ait UUID değerlerinin bulunduğu bir dizi olmak üzere 3 farklı parametre gönderilmelidir.

Belge Listeleme

Oluşturulan taslak belgeleri, tarih aralığı belirtmek koşuluyla farklı şekillerde listeleyebilirsiniz.

Düzenlenen Belgeler

Bu örnek, aşağıdaki şu diziyi döndürecektir;

Adıma Düzenlenen Belgeler

İki tarih arasındaki gelen faturaları (GİB portaldaki adıyla Adıma Düzenlenen Belgeler) listeler.

Belge Detayları

Portal üzerinde kayıtlı belge detaylarına ulaşmak için;

Oluşturulan Son Belge

Portal üzerinde en son oluşturulan belgeye ait detaylara ulaşmak için;

HTML Çıktı Alma

Portal üzerinde kayıtlı belgeye ait HTML çıktıya ulaşmak için;

Belge İndirme Adresi

Portal üzerinde kayıtlı belgeye ait indirme adresine ulaşmak için;

Belgeyi Sunucuya Kaydetme

Portal üzerinde kayıtlı belgeyi sunucuya kaydetmek için;

Belge Filtreleme

🔍 Kayıtları zincirleme metodlar kullanarak kolayca filtreleyebilirsiniz.

Alıcı adında mehmet ifadesi geçen imzalanmamış kayıtlar döner.


Kullanılabilir Filtreleme Yöntemleri

Metod Açıklama
onlyInvoice() Faturalar.
onlyProducerReceipt() Müstahsil makbuzları.
onlySelfEmployedReceipt() Serbest meslek makbuzları.
onlySigned() İmzalanmış belgeler.
onlyUnSigned() İmzalanmamış belgeler.
onlyDeleted() Silinmiş belgeler.
findRecipientName($value) Alıcı adına göre filtreleme.
findRecipientId($value) Alıcı vergi numarasına göre filtreleme.
findDocumentId($value) Belge numarasına göre filtreleme.
findEttn($value) Uuid numarasına göre filtreleme.
setLimit($limit, $offset) Sonuçlar için limit belirleme.
sortAsc() Önce ilk kayıtlar.
sortDesc() (Varsayılan) Önce son kayıtlar.

İptal/İtiraz Talepleri

GİB Portalda kayıtlı İptal/İtiraz taleplerine ulaşmak için getRequests metodunu kullanabilirsiniz. Sonuç bir dizi şeklinde döner.

Yeni iptal/itiraz talebi oluşturmak için objectionRequest ve cancellationRequest metodlarını kullanabilirsiniz.

GİB Profil Bilgileri

Kayıtlı kullanıcı bilgilerine ulaşmak için getUserData metodunu kullanabilirsiniz. Sonuç bir dizi şeklinde döner.

Önce portaldan profil bilgilerini okuyup daha sonra modele import ederek yalnızca belirli alanları güncelleyebilirsiniz.

Mükellef Sorgulama

TC Kimlik Numarası ya da Vergi Numarası ile mükellef sorgulamaya yarar. Fatura oluşturma aşamasında vergi numarasının doğruluğunu sorgulamak için kullanılabilir. Test ortamında sonuç boş döner.

Bu örnek, aşağıdaki şu diziyi döndürecektir;

Birimler

https://www.php.net/manual/en/language.types.enumerations.php sayfasını kontrol edin.

Ürün/Hizmet Birimleri

Vergi Birimleri

Para Birimleri

📧İletişim

İletişim için [email protected] adresine e-posta gönderin.

Buy Me A Coffee


☢️ Bu paket vergiye tabi olan mali veri oluşturur. Bu paket nedeniyle oluşabilecek sorunlardan bu paket sorumlu tutulamaz, risk kullanana aittir. Riskli görüyorsanız kullanmayınız.


All versions of fatura with dependencies

PHP Build Version
Package Version
Requires php Version ^8.1
guzzlehttp/guzzle Version ^7.5
ramsey/uuid Version ^4.5
kwn/number-to-words Version ^2.6
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package mlevent/fatura contains the following files

Loading the files please wait ....