=== FatturaFacile ===
Contributors: vmauro
Donate link: https://maurovallotti.it/contatti
Tags: electronic invoicing, quotes, invoice, italy, billing
Requires at least: 6.2
Tested up to: 7.0
Requires PHP: 8.0
Stable tag: 1.0.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

The WordPress plugin for the complete cycle: Quote, Client Acceptance, Electronic Invoice, SDI Submission. Built for Italian freelancers and micro-businesses.

== Description ==

**FatturaFacile** is a WordPress plugin that simplifies quote and client management directly from your website. Create unlimited clients and quotes, send them via a public acceptance link, track who accepted or rejected, and let your customers reply online.

A separate Pro add-on (sold elsewhere) extends the plugin with electronic invoicing, XML SDI 1.7.1 generation, and automatic submission to the Italian Sistema di Interscambio.

= Free Features =

* **Unlimited client management** — Complete records with VAT number, Tax Code, SDI Code, PEC, split payment
* **CSV Import/Export** — Import clients from your existing tools. Downloadable template, automatic format detection
* **Unlimited quotes** — Professional quotes with line items, discounts, VAT per rate, custom terms
* **Public link and online acceptance** — Send your client a link to view, accept or reject the quote
* **Email notifications** — Automatic emails when a client accepts; expiry reminders; support widget
* **Automatic numbering** — Progressive numbering with custom prefix

= Pro Features =

* **Unlimited electronic invoicing** — Create invoices manually or convert accepted quotes
* **FatturaPA XML generation** — XML compliant with SDI 1.7.1 specifications
* **Automatic SDI submission** — Integration with Openapi.it or Invoicetronic
* **Courtesy PDF** — Readable PDF to attach to the electronic invoice
* **Credit notes** — Generate credit notes (TD04) with auto-fill from original invoice
* **Advanced dashboard** — Monthly revenue, quote acceptance rate, status counters
* **Email notifications** — Automatic email when a quote is accepted

[Discover Pro plans](https://maurovallotti.it/fatturafacile-pro)

== Installation ==

1. Go to **Plugins > Add New** in your WordPress admin panel
2. Search for "FatturaFacile"
3. Click **Install Now** and then **Activate**
4. Go to **FatturaFacile > Settings** to configure your business data

== Frequently Asked Questions ==

= Is FatturaFacile free? =

Yes! The free version includes unlimited client management, quotes, online acceptance and PDFs. Electronic invoicing and SDI submission require a Pro license.

= Does the plugin generate SDI-compliant invoices? =

Yes, the generated XML is compliant with SDI version 1.7.1, including all document types, VAT nature codes, tax regimes and payment methods.

= Does it work with any WordPress theme? =

Yes, the admin interface is independent from the theme. The public quote page uses its own template.

== Screenshots ==

1. Client list with CSV import/export
2. Quote list with colored status badges and quick actions
3. Quote creation with line items, discounts and live summary
4. Public quote acceptance page (client view)
5. Settings — company information and quote numbering
6. In-app guide with sticky table of contents

== Changelog ==

= 1.0.0 =
* Initial release

== Upgrade Notice ==

= 1.0.0 =
First public release of FatturaFacile.

== External services ==

This plugin does not connect to any external service. All data is processed locally on your WordPress installation.

= Note about the Pro version =

The separately available Pro add-on (not included in this plugin) connects to additional external services for electronic invoicing (SDI submission). Those services are documented in the Pro add-on's own readme.

== Source Code ==

The full source code for this plugin (including the React sources for the admin UI) is included in the plugin zip under `/src/`. The compiled admin bundle is generated using `@wordpress/scripts` (webpack-based) and produced at `/admin/js/ffwp-admin.js`.

== Build Instructions ==

The admin JavaScript bundle is generated from the React source files in `/src/`. To rebuild it:

1. Install Node.js (>= 18) and npm.
2. From the plugin directory run: `npm install`
3. Build the production bundle: `npm run build`

This produces `/admin/js/ffwp-admin.js` and `/admin/js/ffwp-admin.asset.php`. The build configuration uses the official WordPress build toolchain (`@wordpress/scripts`).

== Third-party Libraries ==

* **@wordpress/element**, **@wordpress/scripts** — official WordPress libraries, used at build time. Licensed under GPLv2+.
* **react-router-dom** — used for hash-based routing inside the admin SPA. Licensed under MIT.

These libraries are bundled into the compiled `admin/js/ffwp-admin.js` file via the build process. Their unminified source code is available in the `node_modules/` directory after running `npm install`, or directly on their respective public repositories.
