PHPackages                             16bitsrl/fattureincloud-cli - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [CLI &amp; Console](/categories/cli)
4. /
5. 16bitsrl/fattureincloud-cli

ActiveProject[CLI &amp; Console](/categories/cli)

16bitsrl/fattureincloud-cli
===========================

Comprehensive CLI for Fatture in Cloud API - built for humans and agents.

v0.5.1(1mo ago)04MITPHPPHP ^8.2

Since Mar 17Pushed 1mo agoCompare

[ Source](https://github.com/16bitsrl/fattureincloud-cli)[ Packagist](https://packagist.org/packages/16bitsrl/fattureincloud-cli)[ Docs](https://github.com/16bitsrl/fattureincloud-cli)[ RSS](/packages/16bitsrl-fattureincloud-cli/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (9)Dependencies (6)Versions (10)Used By (0)

Fatture in Cloud CLI
====================

[](#fatture-in-cloud-cli)

A CLI for the [Fatture in Cloud](https://www.fattureincloud.it) API, with full API coverage, agent-oriented docs, and a practical XML import workflow for fattura elettronica files.

See `CHANGELOG.md` for release notes starting from `1.0.1`.

Install
-------

[](#install)

### Composer

[](#composer)

```
composer global require 16bitsrl/fattureincloud-cli
```

### Static binaries

[](#static-binaries)

Each release also ships static builds for Linux, macOS, and Windows.

- Download them from the GitHub release assets
- Or inspect the local examples in `builds/static/`

After download, make the binary executable on Unix-like systems:

```
chmod +x ./fic-linux-x86_64
./fic-linux-x86_64 --version
```

Quick start
-----------

[](#quick-start)

```
# Authenticate
fic auth:login

# Set your default company
fic company:set

# Explore the generated API commands
fic api:list

# Search helpers
fic clients:search acme --company-id=12345
fic suppliers:search studio --company-id=12345
fic products:search consulting --company-id=12345
```

Get your manual token at [secure.fattureincloud.it/api](https://secure.fattureincloud.it/api).

XML e-invoice import
--------------------

[](#xml-e-invoice-import)

The official API does not ingest raw XML, so the CLI recreates documents through JSON APIs.

For issued XML imports, the recreated document is treated as an electronic invoice by default.

```
# Preview a single XML
fic einvoice:import /absolute/path/to/fattura.xml --company-id=12345 --dry-run

# Preview a signed XML.p7m file
fic einvoice:import /absolute/path/to/fattura.xml.p7m --company-id=12345 --dry-run

# Import a folder of XML files (direction is auto-detected from XML content)
fic einvoice:import /absolute/path/to/xml-dir --company-id=12345 --yes
```

The import supports recap before creation, dry runs, `.xml` and `.xml.p7m` inputs, client/supplier matching, embedded attachment carry-over, automatic direction inference (issued/received/self-invoice), and structured mapping for supported e-invoice fields before falling back to `ei_raw`. If neither XML party matches the selected company, the import is rejected.

Agent skill
-----------

[](#agent-skill)

This repository includes an [agent skill](https://skills.sh) that teaches coding agents how to use the CLI, including filtering, sorting, pagination, FAQ edge cases, quotas, and XML import.

### Install the skill

[](#install-the-skill)

```
fic install-skill
```

Skill sources live in `skills/fattureincloud/`.

Handy examples
--------------

[](#handy-examples)

```
fic api:list-issued-documents --company-id=12345 --type=invoice --sort=-date --json
fic api:list-clients --company-id=12345 --q="vat_number = 'IT01234567890'" --json
fic api:send-e-invoice --company-id=12345 --document-id=99
```

API coverage
------------

[](#api-coverage)

ResourceCommandsClientslist, get, create, modify, delete, infoSupplierslist, get, create, modify, deleteProductslist, get, create, modify, deleteIssued documentslist, get, create, modify, delete, totals, email, transform, joinE-Invoicessend, verify XML, get XML, rejection reasonReceived documentslist, get, create, modify, delete, totals, pendingReceiptslist, get, create, modify, delete, monthly totalsTaxes (F24)list, get, create, modify, delete, attachmentsCashbooklist, get, create, modify, deleteArchivelist, get, create, modify, delete, attachmentsSettingspayment accounts/methods, VAT types, tax profile, templatesInfocities, countries, currencies, languages, categories, etc.Webhookslist, create, get, modify, delete, verifyUserinfo, companiesCompaniesinfo, plan usageAgent skill
-----------

[](#agent-skill-1)

See the dedicated section above.

Testing
-------

[](#testing)

```
composer test
```

Releasing a new version
-----------------------

[](#releasing-a-new-version)

Use the release script:

```
./bin/release.sh X.Y.Z
```

It will:

- build `builds/fic` with the requested version
- verify that `builds/fic` matches the source version
- commit `builds/fic`
- create tag `vX.Y.Z`
- push branch and tag

Then the GitHub release workflow will build the PHAR and static binaries for Linux, macOS, and Windows.

If you only want to verify that the committed PHAR is still aligned with the source version:

```
./bin/check-phar-sync.sh
```

CI also runs the same sync check on pushes and pull requests.

Users install or update with `composer global require 16bitsrl/fattureincloud-cli`.

Updating the OpenAPI spec
-------------------------

[](#updating-the-openapi-spec)

```
./bin/update-spec.sh              # latest from master
./bin/update-spec.sh v2.1.8       # specific tag
fic clear-cache                   # clear cached normalized spec
```

Credits
-------

[](#credits)

- Built with [Laravel Zero](https://laravel-zero.com) and [Spatie Laravel OpenAPI CLI](https://spatie.be/docs/laravel-openapi-cli)
- API by [Fatture in Cloud](https://developers.fattureincloud.it)
- Made by [Mattia Trapani](https://github.com/zupolgec) at [16bit S.r.l.](https://16bit.it)

License
-------

[](#license)

The MIT License (MIT). Please see [LICENSE.md](LICENSE.md) for more information.

###  Health Score

37

—

LowBetter than 83% of packages

Maintenance89

Actively maintained with recent releases

Popularity5

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity42

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

9

Last Release

53d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/c4d043f6d69ebdba89936fb938bd273b7cbca8911f1952eb0cb5dd17d9ba8d0d?d=identicon)[zupolgec](/maintainers/zupolgec)

---

Top Contributors

[![zupolgec](https://avatars.githubusercontent.com/u/161318?v=4)](https://github.com/zupolgec "zupolgec (28 commits)")

---

Tags

apicliinvoicingE-Invoicefatturafattureinclouditalia

###  Code Quality

TestsPest

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/16bitsrl-fattureincloud-cli/health.svg)

```
[![Health](https://phpackages.com/badges/16bitsrl-fattureincloud-cli/health.svg)](https://phpackages.com/packages/16bitsrl-fattureincloud-cli)
```

###  Alternatives

[zenddevops/client

ZF2 CLI tool to access Zend Server Web API

225.1k](/packages/zenddevops-client)[renoki-co/php-helm

PHP Helm Processor is a process wrapper for Kubernetes' Helm v3 CLI. You can run programmatically Helm v3 commands, directly from PHP, with a simple syntax.

1310.5k](/packages/renoki-co-php-helm)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
