dystcz/fakturoid

Laravel wrapper for Fakturoid

3.0.1 2025-02-14 17:39 UTC

README

Latest Version on Packagist Total Downloads Tests

Simple wrapper for official php package https://github.com/fakturoid/fakturoid-php

Docs

Installation

Step 1: Install package

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.

Step 2: Configuration

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.

Configuration

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 <your@email.cz>'),
];

Examples

Create Subject, Create Invoice, Send Invoice

use Dystcz\Fakturoid\Facades\Fakturoid;

try {
    // create subject
    $response = Fakturoid::getSubjectsProvider()->create([
        'name' => 'Firma s.r.o.',
        'email' => 'aloha@pokus.cz'
    ]);

    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());
}

More examples

For more examples, please visit the Fakturoid documentation.

Credits

License

Copyright (c) 2019 - 2025 dyst digital s.r.o MIT Licensed.