Simple wrapper for official php package https://github.com/fakturoid/fakturoid-php
Add the package in your composer.json by executing the command.
composer require dystcz/fakturoid
This will both update composer.json and install the package into the vendor/ directory.
First initialise the config file by running this command:
php artisan vendor:publish
With this command, initialize the configuration and modify the created file, located under config/fakturoid.php
.
return [
'client_id' => env('FAKTUROID_CLIENT_ID', 'XXX'),
'client_secret' => env('FAKTUROID_CLIENT_SECRET', 'XXX'),
'account_slug' => env('FAKTUROID_ACCOUNT_SLUG'),
'user_agent' => env('FAKTUROID_USER_AGENT', 'Application <[email protected]>'),
];
use Dystcz\Fakturoid\Facades\Fakturoid;
try {
// create subject
$response = Fakturoid::getSubjectsProvider()->create([
'name' => 'Firma s.r.o.',
'email' => '[email protected]'
]);
if ($subject = $response->getBody()) {
// Create invoice with lines
$lines = [
[
'name' => 'Big sale',
'quantity' => 1,
'unit_price' => 1000
],
];
$invoiceProvider = Fakturoid::getInvoicesProvider();
$response = Fakturoid::getInvoicesProvider()->create([
'subject_id' => $subject->id,
'lines' => $lines
]);
$invoice = $response->getBody();
// Send created invoice
$invoiceProvider->fireAction($invoice->id, 'deliver');
}
} catch (\Exception $e) {
dd($e->getCode() . ": " . $e->getMessage());
}
For more examples, please visit the Fakturoid documentation.
- Fakturoid s.r.o. fakturoid-php for the underlying package.
Copyright (c) 2019 - 2025 dyst digital s.r.o MIT Licensed.