Last active
November 14, 2022 20:00
-
-
Save dimaspante/a950102e5851f15bac983e14f828a701 to your computer and use it in GitHub Desktop.
Webservice TNT Logística
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
$xmlr = '<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://service.calculoFrete.mercurio.com" xmlns:mod="http://model.vendas.lms.mercurio.com"> | |
<soapenv:Header/> | |
<soapenv:Body> | |
<ser:calculaFrete> | |
<ser:in0> | |
<mod:login>' . $user_login . '</mod:login> | |
<mod:senha></mod:senha> | |
<mod:nrIdentifClienteRem>' . $cnpj . '</mod:nrIdentifClienteRem> | |
<mod:nrIdentifClienteDest>' . $idclientedest . '</mod:nrIdentifClienteDest> | |
<mod:tpFrete>' . $tipo_frete . '</mod:tpFrete> | |
<mod:tpServico>' . $tipo_servico . '</mod:tpServico> | |
<mod:cepOrigem>' . $cep_origem . '</mod:cepOrigem> | |
<mod:cepDestino>' . $cep_dst . '</mod:cepDestino> | |
<mod:vlMercadoria>' . number_format($valor_nf, 2, '.', '') . '</mod:vlMercadoria> | |
<mod:psReal>' . number_format($peso_total, 3, '.', '') . '</mod:psReal> | |
<mod:nrInscricaoEstadualRemetente>' . $ie . '</mod:nrInscricaoEstadualRemetente> | |
<mod:nrInscricaoEstadualDestinatario></mod:nrInscricaoEstadualDestinatario> | |
<mod:tpSituacaoTributariaRemetente>' . $situacao_trib . '</mod:tpSituacaoTributariaRemetente> | |
<mod:tpSituacaoTributariaDestinatario>CO</mod:tpSituacaoTributariaDestinatario> | |
<mod:cdDivisaoCliente>' . $divisao_cliente . '</mod:cdDivisaoCliente> | |
<mod:tpPessoaRemetente>' . $tipo_pessoa . '</mod:tpPessoaRemetente> | |
<mod:tpPessoaDestinatario>F</mod:tpPessoaDestinatario> | |
</ser:in0> | |
</ser:calculaFrete> | |
</soapenv:Body> | |
</soapenv:Envelope>'; | |
$uri = 'http://service.calculoFrete.mercurio.com'; | |
$location_URL = 'https://ws.tntbrasil.com.br:443/tntws/CalculoFrete?wsdl'; | |
$action_URL = 'https://ws.tntbrasil.com.br:443/tntws/CalculoFrete'; | |
$client = new SoapClient(null, array( | |
'location' => $location_URL, | |
'uri' => $uri, | |
'trace' => 1, | |
)); | |
$xml = $client->__doRequest($xmlr, $location_URL, $action_URL, 1); | |
$dom = new DOMDocument('1.0', 'ISO-8859-1'); | |
$dom->loadXml($xml); | |
$valor = $dom->getElementsByTagName('vlTotalFrete')->item(0)->nodeValue; | |
$prazo = $dom->getElementsByTagName('prazoEntrega')->item(0)->nodeValue; | |
$cidade = $dom->getElementsByTagName('nmMunicipioDestino')->item(0)->nodeValue; |
E as medidas (altura, largura e profundidade) não precisa enviar?
Opa, na época não precisava, só enviava o peso total na linha 17. Talvez hj tenha mudado, realmente faz tempo que não mexo com a TNT hehe
Pois é, documentação deles é muito ruim, mas valeu! Obrigado"
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
E as medidas (altura, largura e profundidade) não precisa enviar?