This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

Acesso aos web services do IBPT

Project Description

IBPT Web Services


Implementa uma camada fina para acesso aos web services do IBPT, para auxiliar no cumprimento à Lei 12.741/2012, popularmente conhecida como “De Olho no Imposto”. O Instituto Brasileiro de Planejamento e Tributação, IBPT, calcula e fornece os valores aproximados dos tributos para produtos e serviços com base no código NCM (Nomenclatura Comum do Mercosul, para produtos) e no código NBS (Nomenclatura Brasileira de Serviços).

Para que o acesso aos web services seja possível, é preciso cadastrar-se no IBPT para obter seu token de acesso.

Configuração e Consultas Básicas

Exemplo básico de configuração e consulta de produto:

>>> from ibptws import conf
>>> from ibptws import get_produto

>>> conf.token = 'ZyW9z...' # cadastre-se no IBPT para obter seu token
>>> conf.cnpj = '08427847000169'
>>> conf.estado = 'SP'

>>> get_produto('02091021')
Produto(codigo=u'2091021', uf=u'SP', ex=0, descricao=u'Gordura de porco,fresca,refrigerada ou congelada', nacional=4.2, estadual=12.0, importado=6.39)

Similarmente, para consultar um serviço faça:

>>> from ibptws import get_servico
>>> get_servico('0101')
Servico(codigo=u'101', uf=u'SP', descricao=u'An\xe1lise e desenvolvimento de sistemas.', tipo=u'NBS', nacional=13.45, estadual=0.0, municipal=3.9, importado=15.45)

Calculadora DeOlhoNoImposto

A calculadora De Olho no Imposto auxilia na computação dos valores aproximados dos tributos, tornando trivial a consulta por n produtos e/ou servicos e a obtenção dos cálculos parciais e totais dos tributos.

>>> from decimal import Decimal
>>> from ibptws.calculadoras import DeOlhoNoImposto

>>> calc = DeOlhoNoImposto()
>>> calc.produto('02091021', 0, Decimal('5.75'))
>>> calc.servico('0101', Decimal('73.47'))

>>> calc.carga_federal_nacional()
Decimal('10.123215')

>>> calc.carga_federal_importado()
Decimal('11.718540')

>>> calc.carga_estadual()
Decimal('0.6900')

>>> calc.carga_municipal()
Decimal('2.86533')

>>> calc.total_tributos()
Decimal('25.397085')

>>> calc.total()
Decimal('79.22')

>>> calc.percentual_sobre_total()
Decimal('0.3205893082554910376167634436')

Provisionamento de Dados

A calculadora De Olho no Imposto recorre a um proxy para realizar as consultas de produtos e serviços, possibilitando que seja implementada uma camada para provisionamento (cache) das consultas realizadas. Este projeto traz uma implementação de provisionamento baseada em Redis:

from ibptws.calculadoras import DeOlhoNoImposto
from ibptws.provisoes import ProvisaoViaRedis

calc = DeOlhoNoImposto(provisao=ProvisaoViaRedis(
        host='192.168.0.111', port=6379, db=0))

Neste exemplo, as consultas a produtos e serviços serão realizadas através do proxy e, uma vez acessado o web services do IBPT, os dados ficarão provisionados até que expire (o padrão é expirar em 24h, mas você poderá usar os seus próprios critérios).

Testes

Os testes são baseados em pytest e não há acesso real aos serviços do IBPT, portanto não há necessidade de configurar o token de acesso para executar os testes unitários:

$ python setup.py test

Isenção de Responsabilidade

Os autores deste projeto não tem qualquer relação com o Instituto Brasileiro de Planejamento e Tributação (IBPT), e este, por sua vez, não avaliza o uso desta biblioteca de código. Utilize por sua conta e risco.

Release History

Release History

This version
History Node

0.4

History Node

0.3

History Node

0.2

History Node

0.1

Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
ibptws-0.4.tar.gz (13.3 kB) Copy SHA256 Checksum SHA256 Source Dec 18, 2015

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting