1. Go to this page and download the library: Download charkoulis/einvoicing library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
charkoulis / einvoicing example snippets
use Einvoicing\Exceptions\ValidationException;
use Einvoicing\Readers\UblReader;
$reader = new UblReader();
$document = file_get_contents(__DIR__ . "/example.xml");
$inv = $reader->import($document);
try {
$inv->validate();
} catch (ValidationException $e) {
// Invoice is not EN 16931 complaint
}
use Einvoicing\Identifier;
use Einvoicing\Invoice;
use Einvoicing\InvoiceLine;
use Einvoicing\Party;
use Einvoicing\Presets;
use Einvoicing\Writers\UblWriter;
// Create PEPPOL invoice instance
$inv = new Invoice(Presets\Peppol::class);
$inv->setNumber('F-202000012')
->setIssueDate(new DateTime('2020-11-01'))
->setDueDate(new DateTime('2020-11-30'));
// Set seller
$seller = new Party();
$seller->setElectronicAddress(new Identifier('9482348239847239874', '0088'))
->setCompanyId(new Identifier('AH88726', '0183'))
->setName('Seller Name Ltd.')
->setTradingName('Seller Name')
->setVatNumber('ESA00000000')
->setAddress(['Fake Street 123', 'Apartment Block 2B'])
->setCity('Springfield')
->setCountry('DE');
$inv->setSeller($seller);
// Set buyer
$buyer = new Party();
$buyer->setElectronicAddress(new Identifier('ES12345', '0002'))
->setName('Buyer Name Ltd.')
->setCountry('FR');
$inv->setBuyer($buyer);
// Add a product line
$line = new InvoiceLine();
$line->setName('Product Name')
->setPrice(100)
->setVatRate(16)
->setQuantity(1);
$inv->addLine($line);
// Export invoice to a UBL document
header('Content-Type: text/xml');
$writer = new UblWriter();
echo $writer->export($inv);
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.