PHPackages                             kowts/efatura-cv - 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. [Validation &amp; Sanitization](/categories/validation)
4. /
5. kowts/efatura-cv

ActiveLibrary[Validation &amp; Sanitization](/categories/validation)

kowts/efatura-cv
================

Biblioteca PHP para validação e emissão de documentos fiscais electrónicos e-Fatura de Cabo Verde.

v0.3.0(1mo ago)02MITPHPPHP ^8.1CI passing

Since Jul 11Pushed 1mo agoCompare

[ Source](https://github.com/Kowts/efatura-cv-php)[ Packagist](https://packagist.org/packages/kowts/efatura-cv)[ Docs](https://github.com/Kowts/efatura-cv-php)[ RSS](/packages/kowts-efatura-cv/feed)WikiDiscussions main Synced 1w ago

READMEChangelog (4)Dependencies (12)Versions (5)Used By (0)

e-Fatura CV para PHP
====================

[](#e-fatura-cv-para-php)

 [![e-Fatura CV para PHP](assets/efatura-cv-hero.png)](assets/efatura-cv-hero.png)

[![Testes](https://github.com/Kowts/efatura-cv-php/actions/workflows/ci.yml/badge.svg)](https://github.com/Kowts/efatura-cv-php/actions/workflows/ci.yml)[![Cobertura](https://camo.githubusercontent.com/0f6159d8cff0592e529e074ebae371ae401d8d16b60e2b85b4cd29913a544e23/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f636f626572747572612d25453225383925413536302532352d627269676874677265656e2e737667)](https://github.com/Kowts/efatura-cv-php/actions/workflows/ci.yml)[![PHPStan](https://camo.githubusercontent.com/5460b8042bd13ef6c36efb4e04f7dd50e0c1b05345a535abad4a751ab07ccb27/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5048505374616e2d6c6576656c253230382d3465396130362e737667)](phpstan.neon.dist)[![PHP](https://camo.githubusercontent.com/7d71b59ec3aa918b52f007e0b847cb62f0f386f380ad40e8130424eb8b25e372/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5048502d253545382e312d3737374242342e737667)](https://www.php.net/)[![Licença](https://camo.githubusercontent.com/835b26fae63eebe6db476b943f639592a05487876b260aa326f92a99430fa865/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e254333254137612d4d49542d626c75652e737667)](LICENSE)[![Packagist](https://camo.githubusercontent.com/0dc6cd9a5c4e764b03064339504759d2c547a0fdf8efef8ddfc8e33f65286df2/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6b6f7774732f656661747572612d63762e737667)](https://packagist.org/packages/kowts/efatura-cv)[![Aikido package health](https://camo.githubusercontent.com/2df5a6247ae09916e87abbab89409b0832eb2a4d476dff715e2c8d3b97fb8d35/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f41696b69646f2d7061636b6167652532306865616c74682d3666356266342e737667)](https://intel.aikido.dev/packages/packagist/kowts/efatura-cv)[![Status](https://camo.githubusercontent.com/716bfc39105776d292464f3d0a131e324a87c2ef5a038742f6447fceb8d5e378/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7374617475732d626574612d6f72616e67652e737667)](https://camo.githubusercontent.com/716bfc39105776d292464f3d0a131e324a87c2ef5a038742f6447fceb8d5e378/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7374617475732d626574612d6f72616e67652e737667)

Biblioteca PHP independente de frameworks para validar documentos fiscais, gerar XML DFE v11, validar com os XSD oficiais, assinar com XAdES-BES, criar pacotes ZIP e comunicar com serviços e-Fatura de Cabo Verde.

Important

Este projecto não é oficial da DNRE. A utilização em produção exige homologação do software, credenciais válidas e testes nos ambientes oficiais.

Funcionalidades
---------------

[](#funcionalidades)

- nove tipos de documento: `FTE`, `FRE`, `TVE`, `RCE`, `NCE`, `NDE`, `DTE`, `DVE` e `NLE`;
- geração, validação e interpretação de IUD;
- validação de NIF, entidades, linhas, impostos e reconciliação de totais;
- emissão online e em contingência;
- geração de XML compacto DFE v11;
- ciclo de eventos `FDC` e `UDN`, incluindo XML, ZIP e submissão;
- validação com os XSD oficiais de 27 de Maio de 2024;
- assinatura XAdES-BES com RSA-SHA256;
- validação de certificados e correspondência da chave privada;
- pacotes ZIP Deflate com nomes `{IUD}.xml`;
- sequências e idempotência em memória ou transaccionais por PDO;
- submissão por middleware e directamente à plataforma;
- consultas fiscais, repetição segura e reconciliação através de PSR-18;
- cálculos monetários com representação decimal exacta;
- DFA em PDF com QR Code;
- DTOs imutáveis e tipados, sem retirar a API por arrays;
- integrações opcionais com Laravel, Symfony e Yii2;
- CLI para inspeccionar IUDs e validar XML;
- respostas JSON/XML normalizadas;
- nenhuma dependência de Laravel, Symfony ou outro framework.

Fluxo de emissão
----------------

[](#fluxo-de-emissão)

O fluxo completo, com decisões de contingência, validação, assinatura, submissão e reconciliação, está documentado em [Arquitectura](docs/arquitectura.md#fluxo-de-emiss%C3%A3o).

Requisitos
----------

[](#requisitos)

- PHP 8.1 ou superior;
- extensões `curl`, `dom`, `json`, `libxml`, `openssl` e `zip`.

Instalação
----------

[](#instalação)

```
composer require kowts/efatura-cv
```

Para instalar directamente do ramo de desenvolvimento, pode declarar o repositório Git:

```
{
    "repositories": [
        {
            "type": "vcs",
            "url": "https://github.com/Kowts/efatura-cv-php"
        }
    ],
    "require": {
        "kowts/efatura-cv": "dev-main"
    }
}
```

Utilização rápida
-----------------

[](#utilização-rápida)

```
