Giter Site home page Giter Site logo

satcfe's Introduction

Projeto SATCFe

Development status Supported Python versions License Latest version Latest Documentation Join the chat at https://gitter.im/base4sistemas/satcfe

This project is about SAT-CF-e which is a system for autorization and transmission of fiscal documents, developed by Finance Secretary of state of São Paulo, Brazil. This entire project, variables, methods and class names, as well as documentation, are written in brazilian portuguese.

Refer to the oficial web site for more information (in brazilian portuguese only).


Build status

Este projeto refere-se à tecnologia SAT-CF-e desenvolvida pela Secretaria da Fazenda do Estado de São Paulo e faz parte de um grupo de cinco projetos que resolvem problemas específicos, mas relacionados.

Especificamente, este projeto é uma abstração que fornece acesso às funções da biblioteca SAT, que é fornecida pelos fabricantes de equipamentos SAT. Para maiores informações, consulte a documentação do projeto.

Se estiver procurando meios para emitir um extrato do CF-e-SAT, o Projeto SATExtrato pode ajudar.

Utilização

Este é um exemplo básico de uso, para consultar o equipamento SAT:

>>> from satcfe import BibliotecaSAT
>>> from satcfe import ClienteSATLocal
>>> cliente = ClienteSATLocal(BibliotecaSAT('/caminho/para/sat.dll'),
...         codigo_ativacao='12345678')
...
>>> resposta = cliente.consultar_sat()
>>> resposta.mensagem
u'SAT em Opera\xe7\xe3o'

Executando os Testes

É possível executar os testes contra qualquer equipamento SAT, em qualquer plataforma ou arquitetura, desde que você possua um kit de desenvolvimento, contendo o equipamento SAT e as bibliotecas do fabricante.

Para executar os testes em um ambiente Linux é preciso definir algumas variáveis de ambiente para configurar o acesso à biblioteca SAT fornecida pelo fabricante do equipamento, o código de ativação e o Estado do domicílio fiscal em que o equipamento SAT está registrado.

$ export SATCFE_TEST_LIB=/opt/fabricante/libsat.so
$ export SATCFE_TEST_LIB_CONVENCAO=1
$ export SATCFE_TEST_CODIGO_ATIVACAO=12345678
$ export SATCFE_TEST_UF=SP

Antes de executar os testes propriamente, é conveniente revisar a parametrização no script runtests.sh que, dependendo do seu equipamento SAT, os valores para configuração dos dados do emitente e outros dados podem variar.

$ ./runtests.sh tanca

Parametrização

As opções de parametrização dos testes são:

--codigo-ativacao
Código de ativação configurado no equipamento SAT.
--numero-caixa
Número do caixa de origem.
--assinatura-ac
Conteúdo da assinatura da AC.
--cnpj-ac
CNPJ da empresa desenvolvedora da AC (apenas dígitos).
--emitente-cnpj
CNPJ do estabelecimento emitente (apenas dígitos).
--emitente-ie
Inscrição estadual do emitente (apenas dígitos).
--emitente-im
Inscrição municipal do emitente (apenas dígitos).
--emitente-uf
Sigla da unidade federativa do estabelecimento emitente.
--emitente-issqn-regime
Regime especial de tributação do ISSQN do emitente, em casos de
testes de emissão de venda e/ou cancelamento.
--emitente-issqn-rateio
Indicador de rateio do desconto sobre o subtotal para produtos
tributados no ISSQN do emitente, em casos de testes de emissão de
venda e/ou cancelamento.
--lib-caminho
Caminho para a biblioteca SAT.
--lib-convencao
Convenção de chamada para a biblioteca SAT.
--skip-funcoes-sat
Ignora testes de todas as funções SAT evitando qualquer acesso ao
equipamento.
--skip-[funcao]
Permite evitar a execução de testes para uma função em particular,
substituindo [funcao] pelo nome da função SAT em letras minúsculas,
por exemplo, para evitar a execução da função ConsultarSAT use
--skip-consultarsat.

Executando Testes Manualmente

Se não quiser usar o script runtests.sh ou se estiver usando um ambiente Windows, poderá invocar a execução dos testes manualmente, por exemplo:

C> python setup.py test -a "--cnpj-ac=01234567000199 ..."

Ou para apenas executar os testes unitários que não interagem com o equipamento SAT de nenhuma maneira:

$ python setup.py test -a "-rs --skip-funcoes-sat"

satcfe's People

Contributors

danielgoncalves avatar gitter-badger avatar mileo avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.