30% OFF para compra e renovaÇÃo »

Autor Tópico: Integrar Consulta IBPT via API  (Lida 192 vezes)

phfmiranda

  • Novato
  • *
  • Mensagens: 32
Integrar Consulta IBPT via API
« Online: Agosto 13, 2018, 11:42:55 am »
Bom dia, encontrei este código de exemplo para integrar a consulta do IBPT via API, porem nao sei como utilizar, os amigos poderiam me dar uma dica?

Código: [Selecionar]
class IBPT {
private $url;

//Inicializa URL
public_function __construct() {
$this->url = 'https://apioni.ibpt.org.br/api/v1/produtos?';
}

public function ConsultarTributos($token, $cnpj, $codigo, $uf, $ex, $codigoInterno, $descricao, $unidadeMedida, $valor, $gtin) {
//Inicializa cUrl montando os parametros da URL

$ch = curl_init($this->url.'token='.$token.'&cnpj='.$cnpj.'&codigo='.$codigo.'&uf='.$uf.'&ex='.$ex.'&codigoInterno='.$codigoInterno.'&descricao='.$descricao.'&unidadeMedida='.$unidadeMedida.'&valor='.$valor.'&gtin='.$gtin.);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, 0);

//Pega o JSON de retorno
$resposta = curl_exec($ch);
curl_close($ch);

//Retorna os dados
return $resposta;
}
}

Arquivo 2:

Código: [Selecionar]
require ('./ibpt.php');

$IBPT = new IBPT;
$IBPT->__construct();

$resposta = $IBPT -> ConsultarTributos('W0kdktq239gU1DHenZyjA5TnwrO2hBd', 'meu cnpj', '28152000', 'MG', '0', '0', 'HIDROXIDO', 'KG','5.25','0');
echo $resposta;

Haroldo

  • Expert
  • *****
  • Mensagens: 8555
  • Conhecimento diminui limitações.△TFA△
    • InfinitusWeb Software de Gestãol/Gestão ITIL/Consultoria Scriptcase
Re:Integrar Consulta IBPT via API
« Responder #1 Online: Agosto 13, 2018, 11:47:15 am »
Não é mais fácil baixar a tabela e acessar localmente?

Bom dia, encontrei este código de exemplo para integrar a consulta do IBPT via API, porem nao sei como utilizar, os amigos poderiam me dar uma dica?

Código: [Selecionar]
class IBPT {
private $url;

//Inicializa URL
public_function __construct() {
$this->url = 'https://apioni.ibpt.org.br/api/v1/produtos?';
}

public function ConsultarTributos($token, $cnpj, $codigo, $uf, $ex, $codigoInterno, $descricao, $unidadeMedida, $valor, $gtin) {
//Inicializa cUrl montando os parametros da URL

$ch = curl_init($this->url.'token='.$token.'&cnpj='.$cnpj.'&codigo='.$codigo.'&uf='.$uf.'&ex='.$ex.'&codigoInterno='.$codigoInterno.'&descricao='.$descricao.'&unidadeMedida='.$unidadeMedida.'&valor='.$valor.'&gtin='.$gtin.);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, 0);

//Pega o JSON de retorno
$resposta = curl_exec($ch);
curl_close($ch);

//Retorna os dados
return $resposta;
}
}

Arquivo 2:

Código: [Selecionar]
require ('./ibpt.php');

$IBPT = new IBPT;
$IBPT->__construct();

$resposta = $IBPT -> ConsultarTributos('W0kdktq239gU1DHenZyjA5TnwrO2hBd', 'meu cnpj', '28152000', 'MG', '0', '0', 'HIDROXIDO', 'KG','5.25','0');
echo $resposta;

phfmiranda

  • Novato
  • *
  • Mensagens: 32
Re:Integrar Consulta IBPT via API
« Responder #2 Online: Agosto 13, 2018, 11:56:17 am »
Haroldo,

O Layout da tabela disponibilizado é o abaixo, como você me sugere realizar esta atualização em meu banco de dados todas as vezes que um item for inserido?




Não é mais fácil baixar a tabela e acessar localmente?

Bom dia, encontrei este código de exemplo para integrar a consulta do IBPT via API, porem nao sei como utilizar, os amigos poderiam me dar uma dica?

Código: [Selecionar]
class IBPT {
private $url;

//Inicializa URL
public_function __construct() {
$this->url = 'https://apioni.ibpt.org.br/api/v1/produtos?';
}

public function ConsultarTributos($token, $cnpj, $codigo, $uf, $ex, $codigoInterno, $descricao, $unidadeMedida, $valor, $gtin) {
//Inicializa cUrl montando os parametros da URL

$ch = curl_init($this->url.'token='.$token.'&cnpj='.$cnpj.'&codigo='.$codigo.'&uf='.$uf.'&ex='.$ex.'&codigoInterno='.$codigoInterno.'&descricao='.$descricao.'&unidadeMedida='.$unidadeMedida.'&valor='.$valor.'&gtin='.$gtin.);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, 0);

//Pega o JSON de retorno
$resposta = curl_exec($ch);
curl_close($ch);

//Retorna os dados
return $resposta;
}
}

Arquivo 2:

Código: [Selecionar]
require ('./ibpt.php');

$IBPT = new IBPT;
$IBPT->__construct();

$resposta = $IBPT -> ConsultarTributos('W0kdktq239gU1DHenZyjA5TnwrO2hBd', 'meu cnpj', '28152000', 'MG', '0', '0', 'HIDROXIDO', 'KG','5.25','0');
echo $resposta;

Haroldo

  • Expert
  • *****
  • Mensagens: 8555
  • Conhecimento diminui limitações.△TFA△
    • InfinitusWeb Software de Gestãol/Gestão ITIL/Consultoria Scriptcase
Re:Integrar Consulta IBPT via API
« Responder #3 Online: Agosto 13, 2018, 11:57:57 am »
exporte do excel para csv, importe no banco de dados.
conforme o ncm vc multiplica % pelo quantidade e depois tira uma média geral e apresenta nas observações da nota fiscal (se é esse o interesse).



Haroldo,

O Layout da tabela disponibilizado é o abaixo, como você me sugere realizar esta atualização em meu banco de dados todas as vezes que um item for inserido?




Não é mais fácil baixar a tabela e acessar localmente?

Bom dia, encontrei este código de exemplo para integrar a consulta do IBPT via API, porem nao sei como utilizar, os amigos poderiam me dar uma dica?

Código: [Selecionar]
class IBPT {
private $url;

//Inicializa URL
public_function __construct() {
$this->url = 'https://apioni.ibpt.org.br/api/v1/produtos?';
}

public function ConsultarTributos($token, $cnpj, $codigo, $uf, $ex, $codigoInterno, $descricao, $unidadeMedida, $valor, $gtin) {
//Inicializa cUrl montando os parametros da URL

$ch = curl_init($this->url.'token='.$token.'&cnpj='.$cnpj.'&codigo='.$codigo.'&uf='.$uf.'&ex='.$ex.'&codigoInterno='.$codigoInterno.'&descricao='.$descricao.'&unidadeMedida='.$unidadeMedida.'&valor='.$valor.'&gtin='.$gtin.);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, 0);

//Pega o JSON de retorno
$resposta = curl_exec($ch);
curl_close($ch);

//Retorna os dados
return $resposta;
}
}

Arquivo 2:

Código: [Selecionar]
require ('./ibpt.php');

$IBPT = new IBPT;
$IBPT->__construct();

$resposta = $IBPT -> ConsultarTributos('W0kdktq239gU1DHenZyjA5TnwrO2hBd', 'meu cnpj', '28152000', 'MG', '0', '0', 'HIDROXIDO', 'KG','5.25','0');
echo $resposta;

phfmiranda

  • Novato
  • *
  • Mensagens: 32
Re:Integrar Consulta IBPT via API
« Responder #4 Online: Agosto 13, 2018, 12:04:16 pm »
Eu havia pensado em fazer o seguinte: ao informar  NCM do item o sistema buscaria estas informações no BD e preencheria no meu produto, isso seria possivel?

Como poderia fazer esta busca?

Obrigado.

exporte do excel para csv, importe no banco de dados.
conforme o ncm vc multiplica % pelo quantidade e depois tira uma média geral e apresenta nas observações da nota fiscal (se é esse o interesse).



Haroldo,

O Layout da tabela disponibilizado é o abaixo, como você me sugere realizar esta atualização em meu banco de dados todas as vezes que um item for inserido?




Não é mais fácil baixar a tabela e acessar localmente?

Bom dia, encontrei este código de exemplo para integrar a consulta do IBPT via API, porem nao sei como utilizar, os amigos poderiam me dar uma dica?

Código: [Selecionar]
class IBPT {
private $url;

//Inicializa URL
public_function __construct() {
$this->url = 'https://apioni.ibpt.org.br/api/v1/produtos?';
}

public function ConsultarTributos($token, $cnpj, $codigo, $uf, $ex, $codigoInterno, $descricao, $unidadeMedida, $valor, $gtin) {
//Inicializa cUrl montando os parametros da URL

$ch = curl_init($this->url.'token='.$token.'&cnpj='.$cnpj.'&codigo='.$codigo.'&uf='.$uf.'&ex='.$ex.'&codigoInterno='.$codigoInterno.'&descricao='.$descricao.'&unidadeMedida='.$unidadeMedida.'&valor='.$valor.'&gtin='.$gtin.);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, 0);

//Pega o JSON de retorno
$resposta = curl_exec($ch);
curl_close($ch);

//Retorna os dados
return $resposta;
}
}

Arquivo 2:

Código: [Selecionar]
require ('./ibpt.php');

$IBPT = new IBPT;
$IBPT->__construct();

$resposta = $IBPT -> ConsultarTributos('W0kdktq239gU1DHenZyjA5TnwrO2hBd', 'meu cnpj', '28152000', 'MG', '0', '0', 'HIDROXIDO', 'KG','5.25','0');
echo $resposta;

Maurélio

  • Avançado
  • ****
  • Mensagens: 334
  • Sempre Aprendiz.'.
    • Email
Re:Integrar Consulta IBPT via API
« Responder #5 Online: Agosto 13, 2018, 03:12:13 pm »
A sugestão do Haroldo é a ideal.
Faz a consulta no momento da geração da NF e faz os cálculos.
Se colocar na hora que cadastrar o produto, caso a tabela mude, a cada 6 meses, você vai ter que varrer todos os produtos para acertar os valores.

Marco Aurélio

Everaldo Claro dos Anjos

  • Novato
  • *
  • Mensagens: 26
    • Email
Re:Integrar Consulta IBPT via API
« Responder #6 Online: Agosto 13, 2018, 05:33:32 pm »
Se for poucos clientes, via arquivo vai legal.
Pode criar a rotina para capturar via aplicação e até se for o caso programar no Cron do servidor.



$url =  "https://apidoni.ibpt.org.br/api/v1/produtos?token=$token&cnpj=$cnpj&codigo=$ncm&uf=$UF&ex=0&descricao=$nm_produto&unidadeMedida=$UN&valor=$valor&gtin=sem%20gtin";


$consulta = json_decode(file_get_contents($url));
echo "<pre>";
print_r($consulta);


Resultado deve ser este:



stdClass Object
(
    [Codigo] => 08072000
    [UF] => SC
    [EX] => 0
    [Descricao] => Mamoes (papaias) frescos
    [Nacional] => 4.2
    [Estadual] => 12
    [Importado] => 15.29
    [Municipal] => 0
    [Tipo] => 0
    [VigenciaInicio] => 01/07/2018
    [VigenciaFim] => 30/09/2018
    [Chave] => A3S28F
    [Versao] => 18.2.B
    [Fonte] => IBPT/empresometro.com.br
    [Valor] => 3
    [ValorTributoNacional] => 0.13
    [ValorTributoEstadual] => 0.36
    [ValorTributoImportado] => 0.46
    [ValorTributoMunicipal] => 0
)


só tratar os dados e pronto.



Everaldo Claro dos Anjos
Email: everaldo@mgce.com.br
Skype: eve_anjos
Fone/Whatsapp: (48) 9 9908-0003

jorgepopel

  • Expert
  • *****
  • Mensagens: 759
    • iCentro Tecnologia e Sistemas
    • Email
Re:Integrar Consulta IBPT via API
« Responder #7 Online: Agosto 14, 2018, 09:00:28 am »
Se não estou enganado, essa tabela do IBPT se atualiza a cada 3 meses.

Ambas as sugestões apresentadas, numa tabela no excel ou uma rotina que atualiza o banco são funcionais.

Algo que acho legal é buscar no momento da impressão da nota.
Dentro da API SPED-NFe tem métodos para isso.

phfmiranda

  • Novato
  • *
  • Mensagens: 32
RESOLVIDO - Re:Integrar Consulta IBPT via API
« Responder #8 Online: Agosto 21, 2018, 06:07:15 pm »
Boa tarde Pessoal, optei por fazer a importação da planilha para o banco de dados.

Obrigado a todos pela ajuda.