Bem vindo(a) ao manual da API REST Figura Fiscal.
Nas abas acima, você encontra todas as possibilidades de integração (via GET e POST) com nossa base tributária. Os resultados dos acessos são retornados através de um JSON (formato compacto, de padrão aberto independente, de troca de dados simples e rápida entre sistemas) para que possam ser tratados e utilizados em seu sistema de retaguarda.
Importante: A API tem o limite máximo de 50.000 requisições por mês (somatório de qualquer uma das funções disponíveis na API).
Conheça abaixo a URL da API e os parametros obrigatórios para acesso aos dados em qualquer função de integração desejada:
funcao
/id
/cnpj
/token
Função: | A função de integração desejada. Como uma consulta de tributos de um determinado EAN, monitorar os tributos durante as vendas do cliente, revisar todos os itens da base do cliente, etc (todas listadas nas abas acima). |
---|---|
ID: (int) |
É o ID do parceiro que administra os tributos do seu cliente. *O cliente recebe este ID ao ser cadastrado. |
CNPJ: (string, 14) |
É o CNPJ do cliente que receberá os dados tributários através de seu sistema de retaguarda. |
TOKEN: (string, 32) |
Token de acesso a API, um campo de validação para permitir as transações. *O cliente recebe este TOKEN ao ser cadastrado. |
Os demais parâmetros, deverão ser incrementados de acordo com a função que irá executar. Devem ser enviados via GET ou POST, informados com mais detalhes em cada aba.
Em caso de dúvidas, fale conosco através do email desenvolvimento@avantfiscal.com.br
Ao utilizar qualquer uma de nossas funções (Revisões, Consultas e Monitoramentos), nossa API irá retornar um JSON contendo o status da solicitação efetuada e no caso de sucesso, retornará um array contendo a tributação de cada um dos itens solicitados. Detalhamos abaixo os campos do JSON de retorno:
erro
(int) - Em caso de sucesso, o valor retornado será zero (0)mensagem
(string, 250) - Caso o acesso do associado seja inválido, o motivo será descrito aquicliente
(string, 250) - Nome Fantasia do associado cujo CNPJ e TOKEN foi informadoregime_tributario
(string, 15) - Regime tributário do associado configurado em nosso sistema. Os tributos serão retornados de acordo com essa parametrizaçãoestado
(string, 2) - Estado (UF) do associado configurado em nosso sistema. Os tributos serão retornados de acordo com essa parametrizaçãoidtransacao
(int) - Identificação do seu acesso a nossa APIdttransacao
(datetime) - Data/Hora do seu acesso a nossa APItributos
(array) - Array de retorno com todos os parâmetros tributários de cada item solicitadoidproduto
(int) - Código do produto em nossa base de dados (retornado apenas na consulta por EAN)idsegmento
(int) - Código do segmento (família de produtos) em que o item está vinculado. É importante guardar esta informação em sua retaguarda para utilizar posteriormente a consulta de "Atualizações". Desta forma, ao informarmos que um determinado NCM sofreu mudanças, você conseguirá identificar quais os produtos que irão sofrer estas atualizaçõesidregra
(int) - Identificação da regra tributária do produtos (descrita no campo abaixa)desc_regra
(string, 25) - Descrição da regra tributária do produtos (ex: Tributado, Substituição Tributária, etc)importado
(int) - Identifica se o produto é importado (importado = 1)ncm
(string, 10) - Código do NCM do produto e/ou segmento do mesmoncmex
(string, 2) - Detalhemento para o Sped Fiscal de Pis/Cofinsdescricao
(string, 255) - Descrição do produtosegmento
(string, 110) - Nome do segmento (família de produtos)ipi
(float) - Percentual do IPIpis
(float) - Percentual do PIScofins
(float) - Percentual do COFINSpiscofins_situacao
(string, 50) - Situação tributária do PIS/COFINSpiscofins_cst_entrada
(string, 3) - Código do CST de ENTRADA do PIS/COFINSpiscofins_cst_saida
(string, 3) - Código do CST de SAÍDA do PIS/COFINSpiscofins_naturezarec
(string, 3) - Código da Natureza de Receita do PIS/COFINSicms_entrada
(float) - Percentual do ICMS de ENTRADAicms_saida
(float) - Percentual do ICMS que sai na Nota Fiscal (valor sem o Fundo de Pobreza - FCP)icms_fcp
(float) - Percentual do FCP (Fundo de Combate a Pobreza) do ICMS de SAÍDAicms_saida_percentual_reducao
(float) - Percentual utilizado para calcular a Alíquota Efetiva em itens com Base de Redução.icms_saida_aliquota_cheia
(float) - Também conhecida como Alíquota Interna ou Nominal. Importante: Caso não seja um item com Base de Redução e este percentual seja necessário, basta capturar e somar os valores dos campos icms_saida e icms_fcp.icms_saida_cst
(string, 3) - Código do CST de SAÍDA do ICMS (associados do Lucro Real e Lucro Presumido)icms_saida_csosn
(string, 4) - Código do CSOSN de SAÍDA do ICMS (associados do Simples Nacional)icms_saida_sublimite
(float) - Percentual do ICMS de SAÍDA do Excesso de Sublimite para associados do Simples Nacional (valor sem o Fundo de Pobreza - FCP)icms_fcp_sublimite
(float) - Percentual do FCP (Fundo de Combate a Pobreza) do ICMS de SAÍDA do Excesso de Sublimite para associados do Simples Nacionalicms_saida_cst_sublimite
(string, 3) - Código do CST de SAÍDA do ICMS do Excesso de Sublimite para associados do Simples Nacionalcfop_venda
(string, 4) - Código Fiscal de Operações e Prestações das SAÍDAS de mercadorias e bens dentro do estadocod_beneficio
(string, 8) - Código do Benefício Fiscal (válido para estados que solicitem tal informação)desoneracao_motivo
(string, 255) - Descrição do motivo da Desoneração do ICMSdesoneracao_icms
(float) - Percentual do ICMS Desonerado (Deve ser somado ao desoneracao_fcp para calcular o "Valor do ICMS Desonerado"desoneracao_fcp
(float) - Percentual do FCP/FECP Desoneradodesoneracao_descontar_icms
(int) - Identifica se o ICMS Desonerado deve ser descontado do produto (desoneracao_descontar_icms = 1)desoneracao_descontar_piscofins
(int) - Identifica se o PIS/COFINS Desonerado deve ser descontado do produto (desoneracao_descontar_piscofins = 1)idlista
(int) - Identificação do Tipo de Lista do produto (descrita no campo abaixa)lista
(string, 100) - Descrição do Tipo de Lista do produto (ex: Negativa, Positiva, etc)cest
(string, 9) - Código Especificador da Substituição Tributária do produto e/ou segmentosubitem
(string, 10) - Código do SubItem do produto e/ou segmentomva
(float) - Pencentual do MVA/IVA Originalmva_importado
(float) - Pencentual do MVA/IVA Ajustado para produtos Importadosbase_reduzida
(float) - Pencentual da Base da cálculo reduzida ao ICMS a pagarmodalidade_bc
(int) - Modalidade da Base de Cálculo (o valor deste campo começará a ser utilizado em breve)pauta
(int) - Informa se o produto possui um valor específico de Pauta (pauta = 1)pauta_valor
(float) - Valor da pauta do produtosubstituicao_tributaria
(int) - Identifica se o produto e/ou segmento é de Substituição Tributária (substituicao_tributaria = 1)cesta_basica
(int) - Identifica se o produto e/ou segmento é um item da Cesta Basica (cesta_basica = 1)codigo_anp
(string, 9) - Código de Produto da ANP (Combustíveis e Lubrificantes)icms_entrada_UF_atacado
(float) - Percentual do ICMS de Entrada (a sigla virá no lugar de "UF") para o ATACADO.mva_ajustado_UF_atacado
(float) - Pencentual do MVA/IVA Ajustado do Estado (a sigla virá no lugar de "UF") para o ATACADO.icms_entrada_UF_industria
(float) - Percentual do ICMS de Entrada (a sigla virá no lugar de "UF") para o INDÚSTRIA.mva_ajustado_UF_industria
(float) - Pencentual do MVA/IVA Ajustado do Estado (a sigla virá no lugar de "UF") para a INDÚSTRIA.icms_entrada_UF_cd
(float) - Percentual do ICMS de Entrada (a sigla virá no lugar de "UF") para a CENTRAL DE COMPRAS.mva_ajustado_UF_cd
(float) - Pencentual do MVA/IVA Ajustado do Estado (a sigla virá no lugar de "UF") para a CENTRAL DE COMPRAS.
A consulta por EAN retorna os dados tributários do produto através do array tributos
.
A consulta deve ser efetuada via GET, enviando os parâmentros EAN
e Descrição do Produto
(além dos parâmetros obrigatórios informados na introdução).
Ao efetuar a consulta, caso o EAN não seja encontrado em nossa base, utilizaremos a "descrição do produto" (passada na consulta) para solicitar automaticamente o cadastro deste item. A equipe tributária será informada sobre a necessidade do cadastro do item e efetuará o quanto antes.
consulta-ean
para capturar os tributos do item;tributos
não é nulo
), aplicar os tributos na base de dados do cliente automaticamente. Ou informar que existem tributos do site a serem aplicados ao item, criar uma forma de exibir estes tributos e exigir o "aceite" (forma recomendada);idsegmento
. Este é o segmento tributário ao qual o produto pertence e deve ser armazenado na base do cliente. Desta forma, quando seu sistema receber atualizações tributárias de um determinado segmento, saberá quais são os produtos vinculados ao mesmo e que precisam sofrer as alterações necessárias;tributos
é nulo
), informar ao cliente que uma solicitação de cadastro foi enviada para a equipe tributária do site;Utilize o formulário abaixo para efetuar testes de consulta em tempo real em nossa API:
ean
(string, 14) - Código de Barras do produto a ser consultado (Caso o item não tenha EAN, infome o código interno);descricao
(string, 250) - Descrição do Produto (Será utilizado caso o item não conste na base do site e o cadastro seja solicitado);regime
(string, 250) - Regime tributario Embora opcional, é recomendável incluir o 'regime' ['simples', 'real' ou 'presumido] nas requisições para assegurar precisão. Caso não informado, utilizaremos o regime informado no ato do cadastro da empresa. Sua colaboração é fundamental para operações livres de erros.;
A consulta por NCM retorna os dados tributários dos "segmentos" através do array tributos
e seus respectivos produtos vinculados (uma lista com até 100 itens listados em ordem aleatória), através do array produtos
.
A consulta deve ser efetuada via GET, enviando o parâmentro NCM
(além dos parâmetros obrigatórios informados na introdução).
consulta-ean
sem sucesso (o item não foi encontrado), é possivel efetuar a consulta via NCM (geralmente já conhecido se a família ou segmento deste produto já estiver cadastrada na base do cliente);tributos
não é nulo
), sua retaguarda pode exbir uma tela com os segmentos encontrados (e uma lista com aguns itens vinculados a este segmento: array produtos
). Assim, o cliente pode decidir se deseja vincular o seu produto a um destes segmentos tributários do site;Utilize o formulário abaixo para efetuar testes de consulta em tempo real em nossa API:
ncm
(string, 8) - NCM do segmento de produtos a ser consultado;
A consulta por DATA retorna as atualizações tributárias ocorridas nos "segmentos" de produtos.
Ex: Digamos que tenhamos 500 produtos dentro de um mesmo segmento. Todos estes produtos tem exatamente a mesma característica tributária. Desta forma, a API irá listar uma única vez os tributos deste segmento e cabe a sua retaguarda atualizar os produtos vinculados a este segmento. Seja pelo idsegmento
(mais indicado) ou NCM
.
Importante: Esta consulta deve ser processada diariamente por seu sistema de retaguarda (no começo ou no fim do dia, para checar todas as possíveis alterações tributárias). Caso o cliente tenha tido qualquer problema e não tenha conseguido efetuar esta consulta, é possível informar uma data anterior a até "30 dias". Neste caso, a API irá listar todos as atualizações ocorridas a partir da data informada.
Os tributos são retornados através do array tributos
. Pode ocorrer a situação onde um produto fazia parte de um segmento e por algum motivo tributário, teve que ser vinculado a outro segmento. Neste caso, listaremos estes itens atualizados através do array produtos_troca_segmento
e informaremos qual era o ID/NCM do antigo segmento e ID/NCM do segmento atual a qual pertence.
A consulta deve ser efetuada via GET, enviando o parâmentro DATA
(além dos parâmetros obrigatórios informados na introdução).
Utilize o formulário abaixo para efetuar testes de consulta em tempo real em nossa API:
date
(string, 10) - DATA da consulta por atualizações (O sistema pesquisa todas as atualizações ocorridas na data informado e a partir dela);regime
(string, 250) - Regime tributario Embora opcional, é recomendável incluir o 'regime' ['simples', 'real' ou 'presumido] nas requisições para assegurar precisão. Caso não informado, utilizaremos o regime informado no ato do cadastro da empresa. Sua colaboração é fundamental para operações livres de erros.;
O recurso de Revisão Fiscal permite verificar e corrigir os tributos de todos os itens da base de dados do cliente. A cada envio de um lote com os itens do cliente, a API retorna os tributos do item através do array tributos
. Em cada item, caso o NCM, ICMS, Pis ou Cofins seja informado, um campo no retorno identifica se houve divergencia
entre os tributos no cadastro do cliente e o informado pelo site. Caso algum item não seja encontrado na base do site, uma solicitação de cadastro sera enviada automaticamente para nossa equipe tributária, que providenciará o cadastro o quanto antes.
Após o termino do envio de todos os itens da base do cliente, sua retaguarda pode chamar nossa URL, para que o cliente tenha acesso a um relatório listando todos os itens revisados neste processo, as divergências encontradas, etc.
tributos
. Caso você tenha enviado o NCM, ICMS, PIS ou COFINS e alguma dessas informações estejam diferentes da base do site, o campo divergencia
será igual a 1;idsegmento
. Este é o segmento tributário ao qual o produto pertence e deve ser armazenado na base do cliente. Desta forma, quando seu sistema receber atualizações tributárias de um determinado segmento, saberá quais são os produtos vinculados ao mesmo e que precisam sofrer as alterações necessárias;idrevisao
, que passado junto ao token
do cliente dá acesso ao relatório de revisão Fiscal em nosso site;idrevisao
&token=token
Utilize o formulário abaixo para efetuar testes de consulta em tempo real em nossa API:
codinterno
(string, 15) - Código interno do item na base do cliente. A API irá retonar este mesmo código, para que sua função de buscar o campo no banco tenha mais desempenho no momento de aplicar as tributações;ean
(string, 14) - Código de Barras do item (Caso o item não tenha EAN, repita aqui o codinterno);descricao
(string, 250) - Descrição do item;icms
(float) - Percentual do ICMS de Saída *Se o item tiver FCP (Fundo de Combate a Pobreza), enviar somado ao ICMS! *Opcional para diagnóstico!;ncm
(string, 8) - NCM do item *Opcional para diagnóstico!;pis
(float) - Percentual do PIS do item *Opcional para diagnóstico!;cofins
(float) - Percentual do COFINS do item *Opcional para diagnóstico!;icmsCst
(string, 3) - Código do ICMS do item *Opcional para diagnóstico (Caso seja Regime Real ou Regime Presumido)!;csosn
(string, 3) - CSOSN do item *Opcional para diagnóstico (Caso seja Regime Simples Nacional)!;cstPisSaida
(string, 2) - CST Saída do item *Opcional para diagnóstico!;cfop
(string, 4) - CFOP do item *Opcional para diagnóstico!;cest
(string, 8) - CEST do item *Opcional para diagnóstico!;regime
(string, 250) - Regime tributario Embora opcional, é recomendável incluir o 'regime' ['simples', 'real' ou 'presumido] nas requisições para assegurar precisão. Caso não informado, utilizaremos o regime informado no ato do cadastro da empresa. Sua colaboração é fundamental para operações livres de erros.;Nosso sistema oferece aos seus clientes o recurso de Monitoramento de Vendas em Tempo Real. Desta forma, caso o cliente efetue vendas no PDV com alguma informação tributária incorreta, nós monitoramos e notificamos sobre os itens que apresentaram problemas na última venda. Desta forma, o cadastro pode ser corrigido e na próxima venda o erro não ocorrerá.
É o fim das vendas com divergências tributárias!
Nesta função, listamos a tributação correta de todos os itens que apresentaram divergências no monitoramento dentro da última hora. Desta forma, é possível atualizar o cadastro do seu cliente e nas próximas vendas, todos os tributos estarão corrigidos. Automatizamos o processo, o cliente não precisará efetuar estas correções manualmente e estes itens não apresentarão mais divergências.
idsegmento
(sempre importante para futuras chegagens de atualizações tributárias);Utilize o formulário abaixo para efetuar testes de consulta em tempo real em nossa API:
Esta documentação descreve o uso da API de Diferencial de Alíquota ICMS que fornece as informações fiscais para a realização do cálculo do diferencial de alíquota na venda de mercadorias para consumidores finais não contribuintes do ICMS localizados em outro estado.
Diferencial de Alíquota (DIFAL) é a diferença entre a alíquota interna do Estado destinatário e a alíquota interestadual do Estado remetente, para a mercadoria comercializada.
TABELA A - Código de Regime Tributário – CRT, do AJUSTE SINIEF 07/05
difal
.
ICMSUFOrigem
. Para os dados de Origem e ICMSUFDest
. Para os dados de DestinoUtilize o formulário abaixo para efetuar testes de consulta em tempo real em nossa API:
codinterno
(string, 15) - Código interno do item na base do cliente. A API irá retonar este mesmo código, para que sua função de buscar o campo no banco tenha mais desempenho no momento de aplicar as tributações;ean
(string, 14) - Código de Barras do item (Caso o item não tenha EAN, repita aqui o codinterno);descricao
(string, 250) - Descrição do item;regime
(string, 250) - Regime tributario Embora opcional, é recomendável incluir o 'regime' ['simples, 'real' ou 'presumido] nas requisições para assegurar precisão. Caso não informado, utilizaremos o regime informado no ato do cadastro da empresa. Sua colaboração é fundamental para operações livres de erros.;“cfop": "6.108":
- Código Fiscal de Operações e Prestações das SAÍDAS de mercadorias e bens, em comércio interestadual, para consumidor final não contribuinte do ICMS. (para CRT = 1, 2 e 3);"cst":
- Código do CST de SAÍDA do ICMS (associados do Lucro Real, Lucro Presumido e Simples Nacional com Excesso de Sublimite). (para CRT = 2 e 3);"cBenef":
- Código do Benefício Fiscal da Unidade Federativa de Origem, quando embasamento legal permite comércio interestadual com benefício. (para CRT = 2 e 3);"motDesICMS":
- Motivo da Desoneração do ICMS. (para CRT = 2 e 3);"descMotDesICMS":
- Descrição do Motivo da Desoneração do ICMS. (para CRT = 2 e 3);"desconto_icms":
- Identifica se o ICMS Desonerado deve ser descontado do produto (desoneracao_descontar_icms = 1). (para CRT = 2 e 3);"pRedBC":
- Percentual de Redução da Base de Cálculo do ICMS. (para CRT = 2 e 3);"csosn":
- Código do CSOSN de SAÍDA interestadual do ICMS (associados do Simples Nacional). (para CRT = 1);"pST":
- Alíquota suportada pelo Consumidor Final: Deve ser informada a alíquota do cálculo do ICMS-ST, já incluso o FCP. Exemplo: alíquota da mercadoria na venda ao consumidor final = 18% e 2% de FCP. A alíquota a ser informada no campo pST deve ser 20%. (para CRT = 1);"pICMSEfet":
- Alíquota do ICMS efetiva: Alíquota do ICMS na operação a consumidor final, caso estivesse submetida ao regime comum de tributação. (para CRT = 1);"pICMS_origem->UF":
- Percentual da alíquota ICMS utilizada na comercialização interestadual UF origem x UF destino, quando mercadoria nacional (para CRT = 2 e 3);"pICMS_origem->IM":
- Percentual da alíquota ICMS utilizada na comercialização interestadual UF origem x UF destino, quando mercadoria importada (para CRT = 2 e 3);"pICMSDeson_origem->UF":
- Percentual do ICMS Desonerado (Deve ser somado ao desoneracao_fcp para calcular o "Valor do ICMS Desonerado". (para CRT = 2 e 3);"pICMSUFDest":
- percentual do ICMS interno da Unidade Federativa de destino, para a mercadoria. (para CRT = 1, 2 e 3);"pFCPUFDest":
- percentual do FCP interno da Unidade Federativa de destino, para a mercadoria. (para CRT = 1, 2 e 3);"pICMSInter":
- Percentual do ICMS Interestadual para a Unidade Federativa de destino. (para CRT = 2 e 3);"pRedBC":
- percentual de Redução da Base de Cálculo, quando mercadoria possuir benefício fiscal interno na Unidade Federativa de destino. (para CRT = 1, 2 e 3);"aliqICMSEfet:
- Alíquota do ICMS efetiva na UF Destino:
Alíquota efetiva do ICMS, na UF destino, referente à mercadoria
comercializada, caso a mesma esteja alcançada por benefício fiscal de
Redução da Base de Cálculo na UF destino.;"pICMSInterPart" (100%):
- percentual de partilha do ICMS que cabe à Unidade Federativa de destino, a partir de 2019. (para CRT = 1, 2 ou 3);"pICMSInterPart" (100%):
- percentual de partilha do ICMS
que cabe à Unidade Federativa de destino, a partir de 2019. (para
CRT = 1, 2 ou 3);"icmsLeiDifalDestinoSN":
- Embasamento legal referente à
alíquota interna do ICMS, na UF destino, quando remetente optante pelo
Simples Nacional;"icmsLeiDifalDestinoRN":
- Embasamento legal referente à
alíquota interna do ICMS, na UF destino, quando remetente do Regime
Normal;"baseUnica:
- Representada por "1" caso a SEFAZ da UF
destino optar por calcular o DIFAL Não Contribuinte, utilizando Base de
Cálculo Única. Representada por "0", caso a SEFAZ da UF destino optar por
calcular o DIFAL Não Contribuinte, utilizando Base de Cálculo Dupla;
"leiBaseICMS:
- Embasamento legal referente à opção pela
utilização da Base Única ou Base Dupla, pela UF destino;"linkLeiBaseICMS:
- Link do embasamento legal referente à
opção pela utilização da Base Única ou Base Dupla, pela UF destino;
O STF, através das ADI's 5464 e 5469, decidiu que não existe cobrança do DIFAL para destinatário consumidor final não contribuinte, quando o remetente é contribuinte do ICMS optante pelo Simples Nacional.
Entretanto estamos realizando pesquisa e consulta, com as Secretarias de Estado de Fazenda, para identificar quais delas estão cobrando o DIFAL na barreira fiscal, uma vez que recebemos alguns relatos de que existem algumas UF efetuando esse tipo de cobrança.
Até o momento, as UF que se manifestaram, informando que NÃO há cobrança do DIFAL quando remetente optante pelo Simples Nacional de outra UF, comercializar mercadoria para consumidor final não contribuinte do ICMS localizados em seu Estado, são:
Estamos aguardando o retorno das demais UF para identificar se estão exigindo ou não o recolhimento do DIFAL.
regime_tributario
, que representa o regime em que o cliente consta cadastrado em nosso sistema. As possibilidades de retorno do campo são:REAL
(para clientes no Lucro Real), PRESUMIDO
(para clientes no Lucro Presumido) e SIMPLES
(para clientes no Simples Nacional).