[WIP] Servidor stand-alone com cache e APIs REST para envio e consulta de XMLs de Documentos Fiscais da SEFAZ.
A aplicação é compatível com Windows e Linux oferecendo um menu como a seguir:
$ cargo run --quiet --release -- --help
Fiscalidade Server v0.6.7 (linux-x86_64)
Copyright (c) Silvio Clécio <[email protected]>
Uso: target/release/fiscalidade_server [opções]
Opções:
-h, --help Imprime este menu de ajuda
-v, --version Imprime versão da aplicação
-p, --port 8000 Porta do servidor
-d, --database postgres://postgres:postgres@localhost/postgres
Banco de dados
-s, --silent Desativa informações de log
Geral:
- Autenticação via token
- Controle acesso público, privado, administrativo ou de serviço
- Criação e atualização automática de DB
- Cadastro e listagem de Contribuintes
- Listagem de Serviços (no momento, apenas NF-e)
- Cache de XML consultado
- Listagem de cache
- Log de erros e acessos
- Configuração de webservices
NF-e / consultas:
- Status do Serviço
- Consulta Cadastro por CPF, CNPJ, ou IE
- Consulta XML por chave da nota
O servidor possui APIs com acesso pública, privado, administrativo ou por serviço. Toda comunicação é feita via REST, garantindo uma maior compatibilidade entre diversos tipos de clients HTTP.
Uma API é composta do seguinte formato:
<servidor>/<aplicação>/<versão>/<path>[/outro-path]
Exemplo:
http://localhost:8080/fiscalidade/v1/taxpayers/services
Tipos de autenticação:
- pública: não requer autenticação;
- privada: requer autenticação via token;
- administrativa: requer autenticação via token e direitos de administrativos;
- serviço: requer autenticação via token e autorização para uso de determinado serviço.
A lista completa com as APIs bem como suas respectivas utilidades pode ser encontrada em docs/APIs.md.
Siga as instruções iniciais de uso em docs/Uso.md. Para instruções sobre instalação, siga os passos em docs/Instalação.md.
Acesse a área de releases para download de binários compatíveis com Windows ou Linux.
- criar AppImage
- embutir arquivo de serviço na instalação
- embutir arquivo de webservice no executável
- configuração via arquivo
- exemplos de uso com cURL
- migrar para código assíncrono
- atualizar documentação
- imagem Docker
- compressão de dados
- paginação de dados
- mais serviços como envio de lote, consulta de recibo, inutilização, distribuição de DFe, etc.
- testes
- mais documentação
Pull Requests e Issues são sempre bem-vindos! =)
fiscalidade_server
é distribuído sob qualquer uma das seguintes licenças:
- Apache License 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT License (LICENSE-MIT or http://opensource.org/licenses/MIT)