# Comparativo de compras

# Introdução

Comparativo de compras é uma ferramenta que tem como objetivo indicar o melhor custo de aquisição nas operações de compras das empresas. Viabiliza um melhor planejamento de compras, pois em uma única consulta, há a possibilidade de pesquisa de diversos fornecedores e produtos tendo como retorno a indicação do melhor custo de aquisição.

# Sobre o Comparativo de Compras

O Comparativo de compras é uma ferramenta em forma de webapi/JSON que facilita a integração com outros sistemas.

A chamada na ferramenta possui 4 grupos de informações:

- **Cabeçalho**: informações pertinentes ao cliente que está fazendo a consulta, como usuário, senha e data da consulta;
- **Dados do produto**: nesse item são indicados os dados do produto que será consultado, como código do produto, CEAN, NCM e origem do produto;
- **Perfil do destino**: indicado nesse item os dados do comprador, como: perfil, uf e finalidade da compra. Nesse caso também é possivel fazer a chamada com mais de um perfil de destino, consultando assim qual o melhor custo de aquisição de acordo com o destino indicado;
- **Perfil de origem**: são as indicações dos fornecedores, onde é informado o perfil de origem, a natureza de operação e a uf de localização, podendo nesse caso ser indicado mais de um fornecedor por consulta;

Em uma única chamada é possível indicar diversos produtos, assim como mais de um destinatário e mais de um fornecedor, sendo:

- **Perfil de origem (fornecedores)**: no mínimo 2 e no máximo 5 indicações;
- **Perfil destino (compradores ou apenas destinatário)**: no mínimo 1 e no máximo 2;

Para isso basta repetir na chamada, dentro das listas, os grupos de informações do “DadosProdutos”, "perfil destino" e “perfil origem”.

# Acessos

O acesso á API é feito através da url:

Swagger: [https://wscockpit.systax.com.br/TaxEngineRest/swagger/ui/index#!/Comparador/Comparador\_Post](https://wscockpit.systax.com.br/TaxEngineRest/swagger/ui/index#!/Comparador/Comparador_Post "http://wscockpit.systax.com.br/TaxEngineRestTeste/swagger/ui/index#!/Comparador/Comparador_Post")

API Rest / JSON: [https://wscockpit.systax.com.br/TaxEngineRest/api/Comparador](https://wscockpit.systax.com.br/TaxEngineRest/api/Comparador)

A autenticação da API é feita por meios de credenciais de usuário e senha fornecidos pela Systax.

# Chamada

Aqui veremos todos pontos da chamada, como definições, estruturas e exemplos para serem utilizados como base.

# Definições da Chamada

Na chamada deve sempre ser indicado um produto, os dados do destinatário/comprador e aos menos 2 fornecedores diferentes (remetente) para que a solução tenha parâmetros para apontar qual fornecedor tem o melhor custo para aquisição.

Diferenciais: 1. Cálculo “onDemand” e 2. Consulta por valor de compra ou valor de custo

<u>1. Cálculo onDemand:</u>

O produto pode ser um existente na base do cliente ou ainda um produto novo ou desconhecido, onde nessa condição, a ferramenta fará uma consulta online com os produtos existentes na base de produtos da Systax.

Assim como o produto, os dados dos fornecedores podem ser de cenários já previamente cadastrados na base de cenários do cliente ou uma nova operação, e nessa condição, a ferramenta simulará um calculo online com cenários da base da Systax.

A modalidade de cálculo online tanto no caso de produto como de cenário, é conhecido como “onDemand”, e essa informação será indicada no genérico do retorno ‘tiporegra=ondemand".

<u>2. Consulta por valor de compra ou valor de custo:</u>

A ferramenta tem possibilidade de consultar cada fornecedor de forma diferente, onde pode-se indicar para um fornecedor o preço de custo, ou seja sem os tributos, e a ferramenta embute os tributos para calcular o “custo de aquisição” ou informa-se o valor da compra, com os tributos e demais despesas, e a ferramenta apenas indica o valor do custo (sem tributos), nesse caso, mantem o calculo do “custo de aquisição” pelo valor indicado no “vProdUni”, que corresponde ao valor de compra.

Em ambos os casos o Comparativo de Compras indica a melhor opção de compra, fazendo as devidas distinções entre as opções indicadas na chamada.

A chamada e o retorno de cada uma dessas opções são feitas em tags específicas.

Na chamada na tag "precoOuCusto” indica-se a modalidade de cálculo que se deseja para o fornecedor, onde:

 Se indicado nessa tag “C” a ferramenta vai considerar que o valor indicado na tag “vProdUni” é o custo sem os tributos, e portanto vai embutir os tributos e formar um novo “vProdUni”, calculando o custo de aquisição partindo desse valor, e indicará esse valor na tag do retorno “precoTributos”.

 Se indicado na tag “P” a ferramenta entende que o valor da tag “vProdUni” é o valor de compra com tributos, e calculará o “custo de aquisição” a partir desse valor e apenas indicará no retorno na tag “precoNet” o custo líquido, ou seja, valor sem os tributos.

 Se na chamada a tag não for indicado nenhum valor a ferramenta calculará o “custo de aquisição” partindo do valor informado no “vProdUni”.

Veja o anexo 1 com exemplos de uma chamada com as indicações dessas tags.

# Estrutura dos dados da chamada

<table cellspacing="0" class="Table" id="bkmrk-tag-pai-descri%C3%87%C3%83o-ob" style="width: 100%;"><tbody><tr><td style="width: 9.29389%;">**TAG**

</td><td style="width: 7.03119%;">**PAI**

</td><td style="width: 75.5481%;">**DESCRIÇÃO**

</td><td style="width: 7.98379%;">**OBRIGATÓRIO**

</td></tr><tr><td style="width: 9.29389%;">chamada

</td><td style="width: 7.03119%;">/

</td><td style="width: 75.5481%;">Ocorrência mínima: 1 | Ocorrência máxima: 1

</td><td style="width: 7.98379%;">Sim

</td></tr><tr><td style="width: 9.29389%;">**cabecalho**

</td><td style="width: 7.03119%;">**chamada**

</td><td style="width: 75.5481%;">**Ocorrência mínima: 1 | Ocorrência máxima: 1**

</td><td style="width: 7.98379%;">**Sim**

</td></tr><tr><td style="width: 9.29389%;">usuario

</td><td style="width: 7.03119%;">cabecalho

</td><td style="width: 75.5481%;">Usuário cadastrado no Cockpit

</td><td style="width: 7.98379%;">Sim

</td></tr><tr><td style="width: 9.29389%;">senha

</td><td style="width: 7.03119%;">cabecalho

</td><td style="width: 75.5481%;">Senha do usuário do Cockpit

</td><td style="width: 7.98379%;">Sim

</td></tr><tr><td style="width: 9.29389%;">sessionID

</td><td style="width: 7.03119%;">cabecalho

</td><td style="width: 75.5481%;">Código do sistema de origem + código hash

</td><td style="width: 7.98379%;">Sim

</td></tr><tr><td style="width: 9.29389%;">sisOrig

</td><td style="width: 7.03119%;">cabecalho

</td><td style="width: 75.5481%;">Código que identifica o sistema de origem

</td><td style="width: 7.98379%;">Sim

</td></tr><tr><td style="width: 9.29389%;">dtCalc

</td><td style="width: 7.03119%;">cabecalho

</td><td style="width: 75.5481%;">Data de cálculo a ser considerada na vigência da regra.

</td><td style="width: 7.98379%;">Sim

</td></tr><tr><td style="width: 9.29389%;">tpNF

</td><td style="width: 7.03119%;">cabecalho

</td><td style="width: 75.5481%;">Tipo da operação:  
0 – Entrada

</td><td style="width: 7.98379%;">Sim

</td></tr><tr><td style="width: 9.29389%;">generico

</td><td style="width: 7.03119%;">cabecalho

</td><td style="width: 75.5481%;">Campo genérico para funções especiais para a chamada inteira, não deve ser informado se não for especialmente necessário.  
Conforme tabela de informações genéricas do cabeçalho.

</td><td style="width: 7.98379%;">Não

</td></tr><tr><td style="width: 9.29389%;">chavebanco

</td><td style="width: 7.03119%;">cabecalho

</td><td style="width: 75.5481%;">Código do Cockpit considerado no cálculo

Permite utilizar um único Motor de Cálculo e vários bancos de dados. As chaves precisam ser previamente cadastradas e informadas no momento do cálculo.

Caso não seja informada, o motor irá procurar por um banco de dados padrão, que poderá ser configurado opcionalmente.

</td><td style="width: 7.98379%;">Não

</td></tr><tr><td style="width: 9.29389%;">**Itens**

</td><td style="width: 7.03119%;">**chamada**

</td><td style="width: 75.5481%;">**Ocorrência mínima: 1 | Ocorrência máxima: 1**

</td><td style="width: 7.98379%;">**Sim**

</td></tr><tr><td style="width: 9.29389%;">*DadosProduto*

</td><td style="width: 7.03119%;">*DadosProduto*

</td><td style="width: 75.5481%;">*Ocorrência mínima: 1 | Ocorrência máxima: 999*

</td><td style="width: 7.98379%;">*Sim*

</td></tr><tr><td style="width: 9.29389%;">cProd

</td><td style="width: 7.03119%;">DadosProduto

</td><td style="width: 75.5481%;">Código do produto previamente configurado.

</td><td style="width: 7.98379%;">Não

</td></tr><tr><td style="width: 9.29389%;">Orig

</td><td style="width: 7.03119%;">DadosProduto

</td><td style="width: 75.5481%;">Inteiro de 0 a 8 conforme tabela "Origem do produto" (abaixo).

</td><td style="width: 7.98379%;">Sim

</td></tr><tr><td style="width: 9.29389%;">cEAN

</td><td style="width: 7.03119%;">DadosProduto

</td><td style="width: 75.5481%;">Código de barras do produto

</td><td style="width: 7.98379%;">Não

</td></tr><tr><td style="width: 9.29389%;">NCM

</td><td style="width: 7.03119%;">DadosProduto

</td><td style="width: 75.5481%;">Classificação fiscal do produto

</td><td style="width: 7.98379%;">Não

</td></tr><tr><td style="width: 9.29389%;">EXTIPI

</td><td style="width: 7.03119%;">DadosProduto

</td><td style="width: 75.5481%;">Código EX da TIPI

</td><td style="width: 7.98379%;">Não

</td></tr><tr><td style="width: 9.29389%;">*PerfilDestino*

</td><td style="width: 7.03119%;">*PerfilDestino*

</td><td style="width: 75.5481%;">*Ocorrência mínima: 1 | Ocorrência máxima: 1*

</td><td style="width: 7.98379%;">*Sim*

</td></tr><tr><td style="width: 9.29389%;">finalidade

</td><td style="width: 7.03119%;">PerfilDestino

</td><td style="width: 75.5481%;">Código da finalidade do cenário.

</td><td style="width: 7.98379%;">Não

</td></tr><tr><td style="width: 9.29389%;">perfilDest

</td><td style="width: 7.03119%;">PerfilDestino

</td><td style="width: 75.5481%;">Obedecerá a tabela e códigos combinada a partir de parâmetros da contratação do serviço.

</td><td style="width: 7.98379%;">Sim

</td></tr><tr><td style="width: 9.29389%;">ufDest

</td><td style="width: 7.03119%;">PerfilDestino

</td><td style="width: 75.5481%;">Campo utilizado para informar o Estado de destino da mercadoria, ele é destinado para requisições do tributo A (ICMS e ICMS/ST).

</td><td style="width: 7.98379%;">Sim

</td></tr><tr><td style="width: 9.29389%;">CNAEDest

</td><td style="width: 7.03119%;">PerfilDestino

</td><td style="width: 75.5481%;">Código CNAE correspondente ao destinatário.

</td><td style="width: 7.98379%;">Não

</td></tr><tr><td style="width: 9.29389%;">munDest

</td><td style="width: 7.03119%;">PerfilDestino

</td><td style="width: 75.5481%;">Código do município de entrada da mercadoria, de acordo com a tabela IBGE (vide item 1 do anexo)

</td><td style="width: 7.98379%;">Não

</td></tr><tr><td style="width: 9.29389%;">*ItensComparacao*

</td><td style="width: 7.03119%;">*perfilOrigem*

</td><td style="width: 75.5481%;">*Ocorrência mínima: 1 | Ocorrência máxima: 999*

</td><td style="width: 7.98379%;">*Sim*

</td></tr><tr><td style="width: 9.29389%;">Id

</td><td style="width: 7.03119%;">perfilOrigem

</td><td style="width: 75.5481%;">Identificação única de cada item.

</td><td style="width: 7.98379%;">Sim

</td></tr><tr><td style="width: 9.29389%;">natOp

</td><td style="width: 7.03119%;">perfilOrigem</td><td style="width: 75.5481%;">Conforme tabela

</td><td style="width: 7.98379%;">Sim

</td></tr><tr><td style="width: 9.29389%;">ufOrig

</td><td style="width: 7.03119%;">perfilOrigem</td><td style="width: 75.5481%;">Campo utilizado para informar o Estado de saída da mercadoria, ele é destinado para requisições do tributo A (ICMS e ICMS/ST).

</td><td style="width: 7.98379%;">Sim

</td></tr><tr><td style="width: 9.29389%;">perfilRem

</td><td style="width: 7.03119%;">perfilOrigem</td><td style="width: 75.5481%;">Obedecerá a tabela e códigos combinada a partir de parâmetros da contratação do serviço.

</td><td style="width: 7.98379%;">Sim

</td></tr><tr><td style="width: 9.29389%;">CNAERem

</td><td style="width: 7.03119%;">perfilOrigem</td><td style="width: 75.5481%;">Código CNAE correspondente ao remetente.

</td><td style="width: 7.98379%;">Não

</td></tr><tr><td style="width: 9.29389%;">munOrig

</td><td style="width: 7.03119%;">perfilOrigem</td><td style="width: 75.5481%;">Código do município de saída da mercadoria, de acordo com a tabela IBGE (vide item 1 do anexo)

</td><td style="width: 7.98379%;">Não

</td></tr><tr><td style="width: 9.29389%;">precoOuCusto

</td><td style="width: 7.03119%;">perfilOrigem</td><td style="width: 75.5481%;">Calcula o custo do produto, sem os tributos, ou calcula o valor de compra:

P - Calcula o valor de custo – desembute os tributos

C – Forma novo valor do vProdUni - embute os tributos

</td><td style="width: 7.98379%;">Não

</td></tr><tr><td style="width: 9.29389%;">qTrib

</td><td style="width: 7.03119%;">perfilOrigem</td><td style="width: 75.5481%;">Quantidade

</td><td style="width: 7.98379%;">Sim

</td></tr><tr><td style="width: 9.29389%;">vProdUni

</td><td style="width: 7.03119%;">perfilOrigem</td><td style="width: 75.5481%;">Valor unitário do produto.

</td><td style="width: 7.98379%;">Sim

</td></tr><tr><td style="width: 9.29389%;">vFrete

</td><td style="width: 7.03119%;">perfilOrigem</td><td style="width: 75.5481%;">Valor do frete

</td><td style="width: 7.98379%;">Não

</td></tr><tr><td style="width: 9.29389%;">pFrete

</td><td style="width: 7.03119%;">perfilOrigem

</td><td style="width: 75.5481%;">Percentual de frete. Pode ser indicado quando for feita a chamada com a solicitação de retorno do NetPrice, assim será considerado na formação do valor do valor de custo o percentual relativo ao frete do produto.

</td><td style="width: 7.98379%;">Não

</td></tr><tr><td style="width: 9.29389%;">vSeg

</td><td style="width: 7.03119%;">perfilOrigem</td><td style="width: 75.5481%;">Valor do seguro

</td><td style="width: 7.98379%;">Não

</td></tr><tr><td style="width: 9.29389%;">vOutro

</td><td style="width: 7.03119%;">perfilOrigem</td><td style="width: 75.5481%;">Outras despesas acessórias

</td><td style="width: 7.98379%;">Não

</td></tr><tr><td style="width: 9.29389%;">vDesc

</td><td style="width: 7.03119%;">perfilOrigem</td><td style="width: 75.5481%;">Valor do desconto incondicional

</td><td style="width: 7.98379%;">Não

</td></tr><tr><td style="width: 9.29389%;">outrasDesp

</td><td style="width: 7.03119%;">perfilOrigem</td><td style="width: 75.5481%;">Outras despesas, para operações de entrada quando aplicável. Ocorrência mínima: 1 | Ocorrência máxima: 1

</td><td style="width: 7.98379%;">Não

</td></tr><tr><td style="width: 9.29389%;">vII

</td><td style="width: 7.03119%;">outrasDesp

</td><td style="width: 75.5481%;">Valor Imposto de Importação

</td><td style="width: 7.98379%;">Não

</td></tr><tr><td style="width: 9.29389%;">bcII

</td><td style="width: 7.03119%;">outrasDesp

</td><td style="width: 75.5481%;">Base de cálculo do Imposto de Importação

</td><td style="width: 7.98379%;">Não

</td></tr><tr><td style="width: 9.29389%;">vIOF

</td><td style="width: 7.03119%;">outrasDesp

</td><td style="width: 75.5481%;">Valor Imposto sobre Operações Financeiras

</td><td style="width: 7.98379%;">Não

</td></tr><tr><td style="width: 9.29389%;">vEncCamb

</td><td style="width: 7.03119%;">outrasDesp

</td><td style="width: 75.5481%;">Valor dos encargos cambiais

</td><td style="width: 7.98379%;">Não

</td></tr><tr><td style="width: 9.29389%;">vDespAdu

</td><td style="width: 7.03119%;">outrasDesp

</td><td style="width: 75.5481%;">Valor despesas aduaneiras

</td><td style="width: 7.98379%;">Não

</td></tr><tr><td style="width: 9.29389%;">pCredSN

</td><td style="width: 7.03119%;">perfilOrigem</td><td style="width: 75.5481%;">Alíquota do Simples Nacional aplicável no cálculo do crédito pelo contribuinte destinatário.

</td><td style="width: 7.98379%;">Não

</td></tr><tr><td style="width: 9.29389%;">generico

</td><td style="width: 7.03119%;">perfilOrigem</td><td style="width: 75.5481%;">Campo genérico para funções especiais no âmbito do item, não deve ser informado se não for especialmente necessário.  
Veja tabela de informações genéricas do item.

</td><td style="width: 7.98379%;">Não

</td></tr></tbody></table>

**Origem do produto**

<table border="1" id="bkmrk-0-nacional%2C-exceto-a" style="border-collapse: collapse; width: 100%; height: 322.36px;"><colgroup><col style="width: 50%;"></col><col style="width: 50%;"></col></colgroup><tbody><tr style="height: 29.7969px;"><td style="height: 29.7969px;">0</td><td style="height: 29.7969px;">Nacional, exceto as indicadas nos códigos 3, 4, 5 e 8</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">1</td><td style="height: 29.7969px;">Estrangeira - Importação direta, exceto a indicada no código 6</td></tr><tr style="height: 46.5938px;"><td style="height: 46.5938px;">2</td><td style="height: 46.5938px;">Estrangeira - Adquirida no mercado interno, exceto a indicada no código 7</td></tr><tr style="height: 46.5938px;"><td style="height: 46.5938px;">3</td><td style="height: 46.5938px;">Nacional, mercadoria ou bem com Conteúdo de Importação superior a 40% e inferior ou igual a 70%</td></tr><tr style="height: 46.5938px;"><td style="height: 46.5938px;">4</td><td style="height: 46.5938px;">Nacional, cuja produção tenha sido feita em conformidade com os PPB de que tratam as legislações citadas nos Ajustes</td></tr><tr style="height: 46.5938px;"><td style="height: 46.5938px;">5</td><td style="height: 46.5938px;">Nacional, mercadoria ou bem com Conteúdo de Importação inferior ou igual a 40%</td></tr><tr style="height: 46.5938px;"><td style="height: 46.5938px;">6</td><td style="height: 46.5938px;">Estrangeira - Importação direta, sem similar nacional, constante em lista da CAMEX e gás natural</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">7</td><td style="height: 29.7969px;">Estrangeira - Adquirida no mercado interno, sem similar nacional, constante em lista da CAMEX e gás natural</td></tr><tr><td>8</td><td>Nacional, mercadoria ou bem com Conteúdo de Importação superior a 70%</td></tr></tbody></table>

# Exemplo de chamada

{  
 "cabecalho": {  
 "usuario": "superdemo@systax.com.br",  
 "senha": "super123",  
 "sessionID": "1",  
 "sisOrig": "1",  
 "dtCalc": "2021-03-24",  
 "tpNF": "",  
 "generico": "",  
 "chaveBanco": "superdemo1"  
 },  
 "Itens": \[  
 {  
 "DadosProduto": {  
 "cProd": "",  
 "Orig": "",  
 "CEAN": "",  
 "NCM": "21033021",  
 "EXTIPI": ""  
 },  
 "PerfilDestino": \[  
 {  
 "finalidade": "569",  
 "perfilDest": "138",  
 "ufDest": "SC",  
 "CNAEDest": "",  
 "munDest": ""  
 },  
 {  
 "finalidade": "569",  
 "perfilDest": "138",  
 "ufDest": "SP",  
 "CNAEDest": "",  
 "munDest": ""  
 }   
 \],  
 "PerfilOrigem": \[  
 {  
 "Id": "1",  
 "natOp": "121",  
 "UfOrig": "AC",  
 "PerfilRem": "2",  
 "CNAERem": "",  
 "MunOrig": "",  
 "qTrib": "1",  
 "vProdUni": "10.00",  
 "precoNet": "S",  
 "vFrete": "",  
 "pFrete": "",  
 "vSeg": "",  
 "vOutro": "",  
 "vDesc": "",  
 "outrasDesp": {  
 "vII": "",  
 "bcII": "",  
 "vIOF": "",  
 "vEncCamb": "",  
 "vDespAdu": ""  
 },  
 "pCredSN": "",  
 "generico": ""  
 },  
 {   
 "Id": "2",  
 "natOp": "120",  
 "UfOrig": "TO",  
 "PerfilRem": "1",  
 "CNAERem": "",  
 "MunOrig": "",  
 "qTrib": "1",  
 "vProdUni": "10.00",  
 "precoNet": "",  
 "TribIncluse": "",  
 "vFrete": "",  
 "pFrete": "",  
 "vSeg": "",  
 "vOutro": "",  
 "vDesc": "",  
 "outrasDesp": {  
 "vII": "",  
 "bcII": "",  
 "vIOF": "",  
 "vEncCamb": "",  
 "vDespAdu": ""  
 },  
 "pCredSN": "",  
 "generico": ""  
 }  
 \]  
 }  
 \]  
}

# Retorno

Aqui veremos todos pontos do retorno, como definições, estruturas e exemplos para serem utilizados como base.

# Definições do retorno

O retorno é apresentado ordenado pelo melhor custo de aquisição entre os fornecedores e destinatários consultados, e para cada operação é informada toda tributação envolvida. Este retorno é apresentado no bloco "comparativo" ordenado do menor para o maior custo de aquisição"

Como mencionado no tópico anterior, a chamada pode ser feita solicitando uma consulta pelo valor de compra ou pelo custo, e o retorno dessas indicações são destacadas no bloco "comparativo" do retorno.

{

"comparativo" \[

 {

 "ufOrigem": "",

 "ufDestino": "",

 "perfilRem": "",

 "perfilDest": "",

 "custoAquisicao": "",

 "precoNet": "",

 "precoTributos": "",

 }

Dependendo da consulta feita é indicado o “precoNet” que informa o valor líquido da operação, ou seja, sem os tributos. Ou retorna o “precoTributos” que informa o valor da operação, embutindo os tributos no caso da indicação na chamada por um valor de custo.

Portanto:

\- Se na chamada for solicitado "precoOuCusto": "P" no retorno o resultado será apresentado "precoTributos";

\- Se na chamada for solicitado "precoOuCusto": "C" no retorno o resultado será apresentado no "precoNet".

\- Se na chamada o campo "precoOuCusto" for vazio, no retorno nenhum dos campos supra citados serão preenchidos.

# Estrutura dos dados do retorno

<table cellspacing="0" class="Table" id="bkmrk-tag-pai-descri%C3%87%C3%83o-re"><tbody><tr><td>**TAG**

</td><td>**PAI**

</td><td>**DESCRIÇÃO**

</td></tr><tr><td>retorno

</td><td>/

</td><td>Grupo raiz

</td></tr><tr><td>comparativo

</td><td>Retorno

</td><td>Grupo de itens

</td></tr><tr><td>itens

</td><td>Itens

</td><td>Diversas ocorrências por retorno conforme a quantidade de itens enviados.

</td></tr><tr><td>id</td><td>Itens</td><td>Identifica o item indicado na chamada.</td></tr><tr><td>ufOrigem

</td><td>Itens

</td><td>Corresponde a UF do fornecedor.

</td></tr><tr><td>ufDestino</td><td>Itens</td><td>Correspode a UF do destinatário </td></tr><tr><td>perfilRem

</td><td>Itens

</td><td>Perfil do fornecedor.

</td></tr><tr><td>perfilDest</td><td>Itens</td><td>Perfil do destinatário/comprador.</td></tr><tr><td>custoAquisicao

</td><td>Itens

</td><td>Valor do custo de aquisição.

</td></tr><tr><td>precoNet

</td><td>Itens

</td><td>Valor unitário sem os tributos.

</td></tr><tr><td>precoTributos

</td><td>Itens

</td><td>Novo valor unitário a ser empregado para o cálculo.

</td></tr><tr><td>item

</td><td>Itens

</td><td>Retorno de todos os detalhes do cálculo dos tributos, assim como status da consulta.

Conteúdo disponível conforme indicação do link abaixo.

</td></tr></tbody></table>

Como o retorno da tributação do Comparativo de Compras possuí a mesma estrutura do retorno do motor de cálculo, acesse o link abaixo para obter o detalhamento dos campos:

[http://documentacao.systax.com.br/Element78/VisualizationDetail/25693](http://documentacao.systax.com.br/Element78/VisualizationDetail/25693)

# Exemplo de retorno

{"comparativo": \[{  
 "itens": \[  
 {  
 "id": "1",  
 "ufOrigem": "ac",  
 "ufDestino": "sc",  
 "perfilRem": "2",  
 "perfilDest": "138",  
 "custoAquisicao": "7.87",  
 "precoNet": "",  
 "precoTributos": null  
 },  
 {  
 "id": "2",  
 "ufOrigem": "to",  
 "ufDestino": "sc",  
 "perfilRem": "1",  
 "perfilDest": "138",  
 "custoAquisicao": "7.87",  
 "precoNet": "",  
 "precoTributos": null  
 },  
 {  
 "id": "1",  
 "ufOrigem": "ac",  
 "ufDestino": "sp",  
 "perfilRem": "2",  
 "perfilDest": "138",  
 "custoAquisicao": "10.94",  
 "precoNet": "",  
 "precoTributos": null  
 },  
 {  
 "id": "2",  
 "ufOrigem": "to",  
 "ufDestino": "sp",  
 "perfilRem": "1",  
 "perfilDest": "138",  
 "custoAquisicao": "10.94",  
 "precoNet": "",  
 "precoTributos": null  
 }  
 \],  
 "calculoDetalhadoItens": \[  
 {  
 "id": "1",  
 "cProd": "",  
 "CEST": "1703800",  
 "CFOP": "6102",  
 "NCM": "21033021",  
 "pCredSN\_resp": "0",  
 "custo\_aquisicao": "7.87",  
 "generico": "busca=NCMD|codProd=NCM\_21033021-0|orig=|CFOP\_ENTRADA=2102|UFO=ac|UFD=sc|natOp=121|perfilorig=2|perfildest=138|tiporegra=ondemand|regranaocriada|versao=5.95|",  
 "status": {  
 "cod": "0",  
 "msg": "Retornado com sucesso."  
 },  
 "NFe": {  
 "imposto": {  
 "ICMS": {"ICMS00": {  
 "orig": "",  
 "CST": "00",  
 "modBC": "3",  
 "vBC": "10.00",  
 "pICMS": "12.0000",  
 "vICMS": "1.20"  
 }},  
 "IPI": {  
 "cEnq": "999",  
 "IPINT": {"CST": "51"}  
 },  
 "PIS": {"PISAliq": {  
 "CST": "01",  
 "vBC": "10.00",  
 "pPIS": "1.6500",  
 "vPIS": "0.17"  
 }},  
 "COFINS": {"COFINSAliq": {  
 "CST": "01",  
 "vBC": "10.00",  
 "pCOFINS": "7.6000",  
 "vCOFINS": "0.76"  
 }}  
 },  
 "infAdProd": "pFCP: 0%. vFCP: R$ 0.00. "  
 },  
 "conteudoAuxiliar": {  
 "ICMSCred": {  
 "cst\_entrada": "00",  
 "indicador\_credito": "1",  
 "percentual\_credito": "100.00",  
 "valor\_base\_calculo": "10.00",  
 "valor\_credito": "1.20",  
 "dispositivo\_legal": "Art.28 e 29, do RICMS/SC",  
 "pICMS": "12.0000"  
 },  
 "IPICred": {  
 "cst\_entrada": "01",  
 "indicador\_credito": "0",  
 "valor\_base\_calculo": "0.00",  
 "percentual\_credito": "0.00",  
 "valor\_credito": "0.00",  
 "dispositivo\_legal": "Art. 226 do RIPI/2010"  
 },  
 "PISCred": {  
 "cst\_entrada": "50",  
 "indicador\_credito": "1",  
 "valor\_base\_calculo": "10.00",  
 "percentual\_credito": "100.00",  
 "valor\_credito": "0.17",  
 "dispositivo\_legal": "Art. 3°, inciso I, da Lei 10.637/2002",  
 "pPIS": "1.6500"  
 },  
 "COFINSCred": {  
 "cst\_entrada": "50",  
 "indicador\_credito": "1",  
 "valor\_base\_calculo": "10.00",  
 "percentual\_credito": "100.00",  
 "valor\_credito": "0.76",  
 "dispositivo\_legal": "Art. 3°, inciso I, da Lei 10.833/2003",  
 "pCOFINS": "7.6000"  
 },  
 "DispositivoLegal": {  
 "DispositivoLegalICMS": "Art. 5º, I do RICMS/AC. Art. 17, II do RICMS/AC ",  
 "DispositivoLegalICMSST": null,  
 "DispositivoLegalIPI": "Art. 190 do RIPI/2010 e Decreto nº 8.950/2016",  
 "DispositivoLegalPIS": "Art. 1º da Lei nº 10.833/2003. Art. 2º, caput, da Lei nº 10.833/2003",  
 "DispositivoLegalCOFINS": "Art. 1º da Lei nº 10.637/2002. Art. 2º, caput, da Lei nº 10.637/2002"  
 }  
 }  
 },  
 {  
 "id": "2",  
 "cProd": "",  
 "CEST": "1703800",  
 "CFOP": "6102",  
 "NCM": "21033021",  
 "pCredSN\_resp": "0",  
 "custo\_aquisicao": "7.87",  
 "generico": "busca=NCMD|codProd=NCM\_21033021-0|orig=|CFOP\_ENTRADA=2102|UFO=to|UFD=sc|natOp=120|perfilorig=1|perfildest=138|tiporegra=ondemand|regranaocriada|versao=5.95|",  
 "status": {  
 "cod": "0",  
 "msg": "Retornado com sucesso."  
 },  
 "NFe": {  
 "imposto": {  
 "ICMS": {"ICMS00": {  
 "orig": "",  
 "CST": "00",  
 "modBC": "3",  
 "vBC": "10.00",  
 "pICMS": "12.0000",  
 "vICMS": "1.20"  
 }},  
 "IPI": {  
 "cEnq": "999",  
 "IPINT": {"CST": "51"}  
 },  
 "PIS": {"PISAliq": {  
 "CST": "01",  
 "vBC": "10.00",  
 "pPIS": "1.6500",  
 "vPIS": "0.17"  
 }},  
 "COFINS": {"COFINSAliq": {  
 "CST": "01",  
 "vBC": "10.00",  
 "pCOFINS": "7.6000",  
 "vCOFINS": "0.76"  
 }}  
 },  
 "infAdProd": "pFCP: 0%. vFCP: R$ 0.00. "  
 },  
 "conteudoAuxiliar": {  
 "ICMSCred": {  
 "cst\_entrada": "00",  
 "indicador\_credito": "1",  
 "percentual\_credito": "100.00",  
 "valor\_base\_calculo": "10.00",  
 "valor\_credito": "1.20",  
 "dispositivo\_legal": "Art.28 e 29, do RICMS/SC",  
 "pICMS": "12.0000"  
 },  
 "IPICred": {  
 "cst\_entrada": "01",  
 "indicador\_credito": "0",  
 "valor\_base\_calculo": "0.00",  
 "percentual\_credito": "0.00",  
 "valor\_credito": "0.00",  
 "dispositivo\_legal": "Art. 226 do RIPI/2010"  
 },  
 "PISCred": {  
 "cst\_entrada": "50",  
 "indicador\_credito": "1",  
 "valor\_base\_calculo": "10.00",  
 "percentual\_credito": "100.00",  
 "valor\_credito": "0.17",  
 "dispositivo\_legal": "Art. 3°, inciso I, da Lei 10.637/2002",  
 "pPIS": "1.6500"  
 },  
 "COFINSCred": {  
 "cst\_entrada": "50",  
 "indicador\_credito": "1",  
 "valor\_base\_calculo": "10.00",  
 "percentual\_credito": "100.00",  
 "valor\_credito": "0.76",  
 "dispositivo\_legal": "Art. 3°, inciso I, da Lei 10.833/2003",  
 "pCOFINS": "7.6000"  
 },  
 "DispositivoLegal": {  
 "DispositivoLegalICMS": "Art. 22, I da Lei nº 1.287/2001. Art. 27, § 2º,II da Lei nº 1.287/2001",  
 "DispositivoLegalICMSST": null,  
 "DispositivoLegalIPI": "Art. 190 do RIPI/2010 e Decreto nº 8.950/2016",  
 "DispositivoLegalPIS": "Art. 1º da Lei nº 10.833/2003. Art. 2º, caput, da Lei nº 10.833/2003",  
 "DispositivoLegalCOFINS": "Art. 1º da Lei nº 10.637/2002. Art. 2º, caput, da Lei nº 10.637/2002"  
 }  
 }  
 },  
 {  
 "id": "1",  
 "cProd": "",  
 "CEST": "1703800",  
 "CFOP": "6102",  
 "NCM": "21033021",  
 "pCredSN\_resp": "0",  
 "custo\_aquisicao": "10.94",  
 "generico": "busca=NCMD|codProd=NCM\_21033021-0|orig=|CFOP\_ENTRADA=2403|UFO=ac|UFD=sp|natOp=121|perfilorig=2|perfildest=138|tiporegra=ondemand|regranaocriada|versao=5.95|",  
 "status": {  
 "cod": "0",  
 "msg": "Retornado com sucesso."  
 },  
 "NFe": {  
 "imposto": {  
 "ICMS": {"ICMS00": {  
 "orig": "",  
 "CST": "00",  
 "modBC": "3",  
 "vBC": "10.00",  
 "pICMS": "12.0000",  
 "vICMS": "1.20"  
 }},  
 "IPI": {  
 "cEnq": "999",  
 "IPINT": {"CST": "51"}  
 },  
 "PIS": {"PISAliq": {  
 "CST": "01",  
 "vBC": "10.00",  
 "pPIS": "1.6500",  
 "vPIS": "0.17"  
 }},  
 "COFINS": {"COFINSAliq": {  
 "CST": "01",  
 "vBC": "10.00",  
 "pCOFINS": "7.6000",  
 "vCOFINS": "0.76"  
 }}  
 },  
 "infAdProd": "pFCP: 0%. vFCP: R$ 0.00. "  
 },  
 "conteudoAuxiliar": {  
 "ICMSCred": {  
 "cst\_entrada": "60",  
 "indicador\_credito": "0",  
 "percentual\_credito": "0.00",  
 "valor\_base\_calculo": "0.00",  
 "valor\_credito": "0.00"  
 },  
 "ICMS\_Antecipacao": {  
 "tipo\_antecipacao": "2",  
 "encerra\_trib": "1",  
 "responsavel": "D",  
 "p\_red\_bc\_interna\_dest": "0.00",  
 "aliq\_interna\_dest": "18.0000",  
 "bc\_icms\_antecipacao": "17.0720",  
 "vigencia\_de": "2020-03-01",  
 "valor\_icms\_antecipacao": "1.87",  
 "mva": "70.72",  
 "mva\_ajustado": "0.00",  
 "mva\_lista\_positiva\_ajustado": "0.00",  
 "mva\_lista\_negativa\_ajustado": "0.00",  
 "mva\_lista\_neutra\_ajustado": "0.00"  
 },  
 "ICMS\_ANTECIPACAOCred": {  
 "indicador\_credito": "0",  
 "valor\_base\_calculo": "0.00",  
 "percentual\_credito": "0.00",  
 "valor\_credito": "0.00",  
 "dispositivo\_legal": "Art. 277 cc §5º do artigo 426-A do RICMS/SP",  
 "observacoes": "Observar as condições do §3º do artigo 277 do RICMS/SP: \\"O valor do imposto recolhido antecipadamente por meio de guia de recolhimentos especiais, nos termos do art. 426-A, deverá ser escriturada no LRAICMS\\"."  
 },  
 "IPICred": {  
 "cst\_entrada": "01",  
 "indicador\_credito": "0",  
 "valor\_base\_calculo": "0.00",  
 "percentual\_credito": "0.00",  
 "valor\_credito": "0.00",  
 "dispositivo\_legal": "Art. 226 do RIPI/2010"  
 },  
 "PISCred": {  
 "cst\_entrada": "50",  
 "indicador\_credito": "1",  
 "valor\_base\_calculo": "10.00",  
 "percentual\_credito": "100.00",  
 "valor\_credito": "0.17",  
 "dispositivo\_legal": "Art. 3°, inciso I, da Lei 10.637/2002",  
 "pPIS": "1.6500"  
 },  
 "COFINSCred": {  
 "cst\_entrada": "50",  
 "indicador\_credito": "1",  
 "valor\_base\_calculo": "10.00",  
 "percentual\_credito": "100.00",  
 "valor\_credito": "0.76",  
 "dispositivo\_legal": "Art. 3°, inciso I, da Lei 10.833/2003",  
 "pCOFINS": "7.6000"  
 },  
 "DispositivoLegal": {  
 "DispositivoLegalICMS": "Art. 5º, I do RICMS/AC. Art. 17, II do RICMS/AC ",  
 "DispositivoLegalICMSST": null,  
 "DispositivoLegalIPI": "Art. 190 do RIPI/2010 e Decreto nº 8.950/2016",  
 "DispositivoLegalPIS": "Art. 1º da Lei nº 10.833/2003. Art. 2º, caput, da Lei nº 10.833/2003",  
 "DispositivoLegalCOFINS": "Art. 1º da Lei nº 10.637/2002. Art. 2º, caput, da Lei nº 10.637/2002"  
 }  
 }  
 },  
 {  
 "id": "2",  
 "cProd": "",  
 "CEST": "1703800",  
 "CFOP": "6102",  
 "NCM": "21033021",  
 "pCredSN\_resp": "0",  
 "custo\_aquisicao": "10.94",  
 "generico": "busca=NCMD|codProd=NCM\_21033021-0|orig=|CFOP\_ENTRADA=2403|UFO=to|UFD=sp|natOp=120|perfilorig=1|perfildest=138|tiporegra=ondemand|regranaocriada|versao=5.95|",  
 "status": {  
 "cod": "0",  
 "msg": "Retornado com sucesso."  
 },  
 "NFe": {  
 "imposto": {  
 "ICMS": {"ICMS00": {  
 "orig": "",  
 "CST": "00",  
 "modBC": "3",  
 "vBC": "10.00",  
 "pICMS": "12.0000",  
 "vICMS": "1.20"  
 }},  
 "IPI": {  
 "cEnq": "999",  
 "IPINT": {"CST": "51"}  
 },  
 "PIS": {"PISAliq": {  
 "CST": "01",  
 "vBC": "10.00",  
 "pPIS": "1.6500",  
 "vPIS": "0.17"  
 }},  
 "COFINS": {"COFINSAliq": {  
 "CST": "01",  
 "vBC": "10.00",  
 "pCOFINS": "7.6000",  
 "vCOFINS": "0.76"  
 }}  
 },  
 "infAdProd": "pFCP: 0%. vFCP: R$ 0.00. "  
 },  
 "conteudoAuxiliar": {  
 "ICMSCred": {  
 "cst\_entrada": "60",  
 "indicador\_credito": "0",  
 "percentual\_credito": "0.00",  
 "valor\_base\_calculo": "0.00",  
 "valor\_credito": "0.00"  
 },  
 "ICMS\_Antecipacao": {  
 "tipo\_antecipacao": "2",  
 "encerra\_trib": "1",  
 "responsavel": "D",  
 "p\_red\_bc\_interna\_dest": "0.00",  
 "aliq\_interna\_dest": "18.0000",  
 "bc\_icms\_antecipacao": "17.0720",  
 "vigencia\_de": "2020-03-01",  
 "valor\_icms\_antecipacao": "1.87",  
 "mva": "70.72",  
 "mva\_ajustado": "0.00",  
 "mva\_lista\_positiva\_ajustado": "0.00",  
 "mva\_lista\_negativa\_ajustado": "0.00",  
 "mva\_lista\_neutra\_ajustado": "0.00"  
 },  
 "ICMS\_ANTECIPACAOCred": {  
 "indicador\_credito": "0",  
 "valor\_base\_calculo": "0.00",  
 "percentual\_credito": "0.00",  
 "valor\_credito": "0.00",  
 "dispositivo\_legal": "Art. 277 cc §5º do artigo 426-A do RICMS/SP",  
 "observacoes": "Observar as condições do §3º do artigo 277 do RICMS/SP: \\"O valor do imposto recolhido antecipadamente por meio de guia de recolhimentos especiais, nos termos do art. 426-A, deverá ser escriturada no LRAICMS\\"."  
 },  
 "IPICred": {  
 "cst\_entrada": "01",  
 "indicador\_credito": "0",  
 "valor\_base\_calculo": "0.00",  
 "percentual\_credito": "0.00",  
 "valor\_credito": "0.00",  
 "dispositivo\_legal": "Art. 226 do RIPI/2010"  
 },  
 "PISCred": {  
 "cst\_entrada": "50",  
 "indicador\_credito": "1",  
 "valor\_base\_calculo": "10.00",  
 "percentual\_credito": "100.00",  
 "valor\_credito": "0.17",  
 "dispositivo\_legal": "Art. 3°, inciso I, da Lei 10.637/2002",  
 "pPIS": "1.6500"  
 },  
 "COFINSCred": {  
 "cst\_entrada": "50",  
 "indicador\_credito": "1",  
 "valor\_base\_calculo": "10.00",  
 "percentual\_credito": "100.00",  
 "valor\_credito": "0.76",  
 "dispositivo\_legal": "Art. 3°, inciso I, da Lei 10.833/2003",  
 "pCOFINS": "7.6000"  
 },  
 "DispositivoLegal": {  
 "DispositivoLegalICMS": "Art. 22, I da Lei nº 1.287/2001. Art. 27, § 2º,II da Lei nº 1.287/2001",  
 "DispositivoLegalICMSST": null,  
 "DispositivoLegalIPI": "Art. 190 do RIPI/2010 e Decreto nº 8.950/2016",  
 "DispositivoLegalPIS": "Art. 1º da Lei nº 10.833/2003. Art. 2º, caput, da Lei nº 10.833/2003",  
 "DispositivoLegalCOFINS": "Art. 1º da Lei nº 10.637/2002. Art. 2º, caput, da Lei nº 10.637/2002"  
 }  
 }  
 }  
 \]  
}\]}

# Códigos do retorno

No retorno, para cada consulta feita, ou seja dentro de cada "item", existe o "status" que indica qual o resultado da chamada, se foi retornada com sucesso, se não foi localizada regra, entre outros.

Essas informações estão dispostas nas tags "cod" e "msg", que correspondem aos valores abaixo:

<table cellspacing="0" class="MsoTableGrid" id="bkmrk-%E2%80%9Ccod%E2%80%9D-%E2%80%9Cmsg%E2%80%9D-0-retorn"><tbody><tr><td>**“cod”**

</td><td>**“msg”**

</td></tr><tr><td>0

</td><td>Retornado com sucesso.

</td></tr><tr><td>2

</td><td>Código do produto não localizado na tabela.

</td></tr><tr><td>3

</td><td>Código do produto não informado.

</td></tr><tr><td>7

</td><td>Parâmetros insuficiente para essa requisição.

</td></tr><tr><td>8

</td><td>Regra não encontrada para o item.

</td></tr><tr><td>9

</td><td>Regra parcialmente aprovada.

</td></tr><tr><td>10</td><td>Regra sem CFOP de Entrada, Ausencia de Tributos Obrigatórios - PIS, Ausencia de Tributos Obrigatórios - COFINS, Regra com ST e Antecipação, Regra com CST diferente de 60</td></tr><tr><td>11</td><td>Falha de conexão com API do Regra online</td></tr><tr><td>998</td><td>Usuário ou senha invalidos</td></tr><tr><td>999

</td><td>Erro fatal.

</td></tr></tbody></table>

# Dicionário de dados

Considerando que as tags da “chamada” e do “retorno” utilizam a mesma estrutura do 'motor de cálculo', indicamos nesse capítulo o acesso aos respectivos dicionários.

# Chamada

Tags relativos a chamada:

[https://documentacao.systax.com.br/PublicView2/Index/eb760fdab1ce135efabebecc1/25201/25954/25973](https://documentacao.systax.com.br/PublicView2/Index/eb760fdab1ce135efabebecc1/25201/25954/25973)

Tags exclusivas do Comparativo de Compras:

<u>Chamada</u>:

<table align="left" cellspacing="0" class="Table" id="bkmrk-campos-relativos-a-c"><tbody><tr><td colspan="4">**CAMPOS RELATIVOS A CHAMADA**

</td></tr><tr><td>**CAMPO**

</td><td>**TIPO**

</td><td>**TAMANHO**

</td><td>**OBSERVAÇÃO**

</td></tr><tr><td>precoOuCusto

</td><td>String

</td><td>1

</td><td>P ou C

</td></tr><tr><td>pFrete

</td><td>Decimal

</td><td>13,4

</td><td>13 dígitos de corpo e 4 dígitos de precisão

</td></tr></tbody></table>

# Retorno

Tags relativos ao retorno:

[https://documentacao.systax.com.br/PublicView2/Index/eb760fdab1ce135efabebecc1/25201/25954/25974](http://documentacao.systax.com.br/Element78/VisualizationDetail/25885)

Tags exclusivas do Comparativo de Compras:<u>  
  
Retorno</u>:

<table align="left" cellspacing="0" class="Table" id="bkmrk-campos-relativos-ao-"><tbody><tr><td colspan="4">**CAMPOS RELATIVOS AO RETORNO**

</td></tr><tr><td>**CAMPO**

</td><td>**TIPO**

</td><td>**TAMANHO**

</td><td>**OBSERVAÇÃO**

</td></tr><tr><td>precoNet

</td><td>Decimal

</td><td>13,4

</td><td>13 dígitos de corpo e 4 dígitos de precisão

</td></tr><tr><td>precoTributos

</td><td>Decimal

</td><td>13,4

</td><td>13 dígitos de corpo e 4 dígitos de precisão

</td></tr></tbody></table>

# Fórmulas para Cálculo dos Tributos

Para cálculo dos tributos são necessários elementos que formam a base de cálculo, calculam as diversidades de antecipações que existem, e as inúmeras formas de apropriação de créditos. A Systax possui algumas tabelas com as fórmulas para cada situação necessárias para composição dos cálculos.

Os nomes das tabelas representam as tags indicadas em cada retorno.

O conteúdo das tabelas com as fórmulas está disposto no capítulo "Tabelas Auxiliares"

- bc\_composição e bc\_composição FCP
- Tipo\_antecipação
- Indicador de crédito
- bc\_composição\_FCP\_antecipação

# Tabelas Auxiliares

As tabelas auxiliares são imprescindíveis para entender o retorno tributário disponibilizado pela Systax, pois são elas que indicam os perfis do remetente, destinatário, a natureza da operação, a finalidade da compra, entre outros.

A documentação dedicada das tabelas auxiliares pode ser acessada no link a seguir: [**https://documentacao.systax.com.br/books/tabelas-auxiliares**](https://documentacao.systax.com.br/books/tabelas-auxiliares)