yldrykuru / ublinvoice
UBL-TR 2.1 Generator
0.0.2.x-dev
2024-02-07 00:59 UTC
Requires
- php: ^7.1||^8.1
- sabre/xml: ^2.1
Requires (Dev)
- phpunit/phpunit: ^9.0
This package is auto-updated.
Last update: 2025-04-07 03:20:26 UTC
README
Bu kütüphane, fatura oluşturmak için kullanılan UBL (Universal Business Language) standardına uygun XML faturalarını oluşturmanıza olanak tanır.
Kullanım Örneği
$invoice = (new \Yldrykuru\Ublinvoice\Invoice()) ->setUBLVersionID("2.1") ->setCustomizationID("TR1.2") ->setProfileID("TEMELFATURA") ->setId("GIB20090000000001") ->setCopyIndicator(false) ->setUUID("F47AC10B-58CC-4372-A567-0E02B2C3D479") ->setIssueDate("2009-01-05") ->setIssueTime("14:42:00") ->setInvoiceTypeCode(\Yldrykuru\Ublinvoice\InvoiceTypeCode::SATIS) ->setDocumentCurrencyCode("TRY") ->setLineCountNumeric("1") ->setInvoicePeriod( (new \Yldrykuru\Ublinvoice\InvoicePeriod()) ->setStartDate("2008-12-05") ->setEndDate("2009-01-05") ) ->setSignature( (new \Yldrykuru\Ublinvoice\Signature()) ->setVknTCKN("1288331521") ->setSignatoryParty( (new \Yldrykuru\Ublinvoice\SignatoryParty()) ->setVkn("1288331521") ->setPostalAddress( (new \Yldrykuru\Ublinvoice\Address()) ->setStreetName("Papatya Caddesi Yasemin Sokak") ->setBuildingNumber("21") ->setCitySubdivisionName("Beşiktaş") ->setCityName("İSTANBUL") ->setPostalZone("34100") ) ) ->setDigitalSignatureAttachmentURI("#Signature") ) ->setAccountingSupplierParty( (new \Yldrykuru\Ublinvoice\Party()) ->setName("AAA Anonim Şirketi") ->setWebsiteURI("http://www.aaa.com.tr/") ->setPostalAddress( (new \Yldrykuru\Ublinvoice\Address()) ->setStreetName("Papatya Caddesi Yasemin Sokak") ->setBuildingNumber("21") ->setCitySubdivisionName("Beşiktaş") ->setCityName("İstanbul") ->setPostalZone("34100") ->setCountry( (new \Yldrykuru\Ublinvoice\Country()) ->setName("Türkiye") ) )->setContact( (new \Yldrykuru\Ublinvoice\Contact()) ->setTelephone("(212) 925 51515") ->setTelefax("(212) 925505015") ->setElectronicMail("aa@aaa.com.tr") )->setPartyTaxScheme( (new \Yldrykuru\Ublinvoice\PartyTaxScheme()) ->setTaxScheme( (new \Yldrykuru\Ublinvoice\TaxScheme()) ->setName("Büyük Mükellefler") ) )->setPartyIdentifications( [ (new \Yldrykuru\Ublinvoice\PartyIdentification())->setValue("VKN", "1288331521") ] ) ) ->setAccountingCustomerParty( (new \Yldrykuru\Ublinvoice\Party()) ->setName("Deneme") ->setPostalAddress( (new \Yldrykuru\Ublinvoice\Address()) ->setStreetName("6. Sokak") ->setBuildingNumber("1") ->setCitySubdivisionName("Beşiktaş") ->setCityName("İstanbul") ->setPostalZone("34100") ->setCountry( (new \Yldrykuru\Ublinvoice\Country()) ->setName("Türkiye") ) )->setContact( (new \Yldrykuru\Ublinvoice\Contact()) ->setElectronicMail("1234567890@mydn.com.tr") )->setPerson( (new \Yldrykuru\Ublinvoice\Person()) ->setFirstName("Ali") ->setFamilyName("YILMAZ") )->setPartyIdentifications( [ (new \Yldrykuru\Ublinvoice\PartyIdentification())->setValue("TCKN", "1234567890"), (new \Yldrykuru\Ublinvoice\PartyIdentification())->setValue("TESISATNO", "1234567"), (new \Yldrykuru\Ublinvoice\PartyIdentification())->setValue("SAYACNO", "12345678") ] ) ) ->setPaymentTerms( (new \Yldrykuru\Ublinvoice\PaymentTerms())->setNote("BBB Bank Otomatik Ödeme")->setPaymentDueDate("2009-01-20") ) ->setTaxTotal( (new \Yldrykuru\Ublinvoice\TaxTotal())->setTaxAmount(2.73)->addTaxSubTotal( (new \Yldrykuru\Ublinvoice\TaxSubTotal())->setTaxableAmount(15.15)->setTaxAmount(2.73)->setTaxCategory( (new \Yldrykuru\Ublinvoice\TaxCategory())->setTaxScheme( (new \Yldrykuru\Ublinvoice\TaxScheme())->setTaxTypeCode("0015") ) ) ) ) ->setLegalMonetaryTotal( (new \Yldrykuru\Ublinvoice\LegalMonetaryTotal()) ->setLineExtensionAmount(15.15) ->setTaxExclusiveAmount(15.15) ->setTaxInclusiveAmount(17.88) ->setPayableAmount(17.88) ) ->setInvoiceLines([ (new \Yldrykuru\Ublinvoice\InvoiceLine()) ->setId("1") ->setInvoicedQuantity(101) ->setLineExtensionAmount(15.15) ->setUnitCode("KWH") //BİZİM KULLANACAĞIMIZ C62 ->setTaxTotal( (new \Yldrykuru\Ublinvoice\TaxTotal())->setTaxAmount(2.73)->addTaxSubTotal( (new \Yldrykuru\Ublinvoice\TaxSubTotal())->setTaxableAmount(15.15)->setTaxAmount(2.73)->setPercent(18.0)->setTaxCategory( (new \Yldrykuru\Ublinvoice\TaxCategory())->setTaxScheme( (new \Yldrykuru\Ublinvoice\TaxScheme())->setName("KDV")->setTaxTypeCode("0015") ) ) ) )->setItem( (new \Yldrykuru\Ublinvoice\Item())->setName("Elektrik Tüketim Bedeli") ) ->setPrice( (new \Yldrykuru\Ublinvoice\Price())->setPriceAmount(0.15)->setUnitCode("KWH") ) ]); $generator = new \Yldrykuru\Ublinvoice\Generator(); $outputXMLString = $generator->invoice($invoice); $dom = new \DOMDocument; $dom->loadXML($outputXMLString); $dom->save('KAYIT PATHI');
Katkıda Bulunma
Bu projeye katkıda bulunmaktan çekinmeyin. Sorunlar oluşturabilir, depoyu çatallayabilir ve işlevselliği geliştirmek için pull istekleri gönderebilirsiniz.
Lisans
Bu proje MIT Lisansı ile lisanslanmıştır. Daha fazla bilgi için LICENSE dosyasına göz atabilirsiniz.