webrteu / smartbill
SmartBill integration for Auditor
1.0.1
2026-02-22 04:15 UTC
Requires
- php: ^8.2
- illuminate/http: ^10.0|^11.0|^12.0
- illuminate/support: ^10.0|^11.0|^12.0
- webrteu/invoicing: ^1.0
README
A Laravel package providing seamless integration with the SmartBill API for generating, downloading, and managing invoices (proforma and fiscal).
Requirements
- PHP 8.2+
- Laravel 10.0+ / 11.0+ / 12.0+
Installation
You can install the package via composer:
composer require webrteu/smartbill
Publish the config file with:
php artisan vendor:publish --tag="smartbill-config"
Add the required variables to your .env file:
SMARTBILL_EMAIL=your_email@example.com SMARTBILL_TOKEN=your_smartbill_api_token SMARTBILL_CIF=RO12345678 SMARTBILL_TEST=false SMARTBILL_API_URL=https://ws.smartbill.ro/SBORO/api SMARTBILL_SERIE_FACTURA=WEBRT_FACT_ SMARTBILL_SERIE_PROFORMA=WEBRT_PROF_
Usage
The SmartBillService is registered as a singleton in the Laravel Service Container. You can resolve it via dependency injection or using the app() helper.
Sending an Invoice
use WeBRTeu\SmartBill\SmartBillService; // Resolve the instance $smartBillService = app(SmartBillService::class); // Send an invoice $result = $smartBillService->sendInvoice($invoice); if ($result['success']) { echo "Invoice saved with series: " . $result['series'] . " and number: " . $result['number']; } else { echo "Error: " . $result['error']; }
Available Methods
$smartBillService->sendInvoice(Invoice $invoice): Sends a new invoice to SmartBill.$smartBillService->downloadInvoicePdf(string $series, string $number): Downloads the requested invoice PDF.$smartBillService->deleteInvoice(string $series, string $number, bool $cancel = false): Deletes or cancels a specific invoice in the SmartBill system.
Testing / Sandbox Mode
For testing purposes, a sandbox mode is available by making sure the test variable is set to true in your .env file:
SMARTBILL_TEST=true
Credits
License
The MIT License (MIT).