LaravelPackages.net
Acme Inc.
Toggle sidebar
minestorecms/laravel-fatturapa

13
0
About minestorecms/laravel-fatturapa

minestorecms/laravel-fatturapa is a Laravel package. It currently has 0 GitHub stars and 13 downloads on Packagist. Install it with composer require minestorecms/laravel-fatturapa. Discover more Laravel packages by minestorecms or browse all Laravel packages to compare alternatives.

Last updated

FatturaPA

Latest Version MIT License

This package allows you to generate the XML of Italian eInvoice (aka FatturaPA).

Useful links:

Installation

composer require condividendo/laravel-fatturapa

Usage

$invoice = \Condividendo\FatturaPA\FatturaPA::build()
    ->senderId('IT', '01879020517')
    ->transmissionFormat(\Condividendo\FatturaPA\Enums\TransmissionFormat::FPR12())
    ->transmissionSequence('1')
    ->recipientCode('ABC1234')
    ->supplier(
        \Condividendo\FatturaPA\Entities\Supplier::make()
            ->companyName('Condividendo italia srl')
            ->vatNumber('IT12345640962')
            ->taxRegime(\Condividendo\FatturaPA\Enums\TaxRegime::RF01())
            ->address(
                \Condividendo\FatturaPA\Entities\Address::make()
                    ->addressLine('Via Italia, 123')
                    ->postalCode('12345')
                    ->city('Milano')
                    ->province('MI')
                    ->country('IT')
            )
    )
    ->customer(
        \Condividendo\FatturaPA\Entities\Customer::make()
            ->firstName('Mario')
            ->lastName('Rossi')
            ->fiscalCode('RSSMRA73L09Z103F')
            ->address(
                \Condividendo\FatturaPA\Entities\Address::make()
                    ->addressLine('Via Italia, 123')
                    ->postalCode('12345')
                    ->city('Milano')
                    ->province('MI')
                    ->country('IT')
            )
    )
    ->addBody(
        \Condividendo\FatturaPA\Entities\Body::make()
            ->type(\Condividendo\FatturaPA\Enums\Type::TD01())
            ->currency('EUR')
            ->number('1')
            ->items([
                \Condividendo\FatturaPA\Entities\Item::make()
                    ->number(1)
                    ->description('Product description')
                    ->price('10.00')
                    ->taxRate('0.22')
            ])
            ->summaryItems([
                \Condividendo\FatturaPA\Entities\SummaryItem::make()
                    ->taxableAmount('10.00')
                    ->taxRate('0.22')
            ])
    );
    
/** @var \SimpleXMLElement $xml */
$xml = $invoice->toXML();

// do whatever you want with $xml variable...

Changelog

Please see Changelog File for more information on what has changed recently.

Testing

composer test

License

The MIT License (MIT). Please see License File for more information.

Star History Chart