Módulo de Calculo de Frete dos Correios com Valor Exato

14:26 Vinicius Lima 39 Comentários


Se você está vendo esta postagem acredito eu que você esta com problemas com o calculo de frete dos correios que não está retornando o valor correto do frete.

Exemplo: Minha loja vende produtos um pouco pesados e tambem bastante compridos, o modúlo anterior me retornava um valor, mais quando eu fui verificar na calculadora de frete dos correios acabei verificando que o valor que estava me retornando no modúlo não estava correto, porque?
Resposta: No modúlo anterior os valores do Comprimento, Largura e Altura possuiam valores estáticos ou seja tinha valores pré-definidos no modúlo.

Depois de verificar esse "Problema" eu então resolvi corrigir esse "Problema" e consegui chegar ao valor exato do calculo do frete dos correios.

Não vou ensinar a como instalar o modúlo, porque isso serve apenas para quem ja tem o modulo dos correios instalado em sua loja virtual.

Clique aqui para baixar o modúlo

ATENÇÃO: Para evitar erros do tipo "Undefined _Altura in" todos os produtos de sua loja devem estar preenchidos os seguintes campos:
  • Comprimento
  • Altura
  • Largura
Caso contrário os erros apareceram na hora em que for calcular o frete no carrinho de compras.

39 comentários:

  1. Amigo, coloquei o modulo na loja e o mesmo retorna a seguinte menssagem " Infelizmente não entregamos em sua localização.
    Por favor selecione outra localização e tente novamente."

    ResponderExcluir
  2. Verifique se você configurou o seu cep, no caso o cep de envio, caso ainda persista o erro, veja se você esta aplicando o frete a partir de zona

    ResponderExcluir
  3. Olá amigo, primeiro gostaria de parabeniza-lo por ter disponibilizado o módulo para que possamos baixar, muito obrigado ajudou muito!!!

    Manow, eu instalei o módulo mas esta dando um problema quando entro na página entrega & fretes, ela fica toda branca, não me deixa configurar o módulo, mas quando eu deleto o módulo da pasta Shipping a a pagina volta a exibir as informações, vc sabe o que pode ser?
    Obrigado pela ajuda!!

    ResponderExcluir
  4. Então, esse problema é de versão, verifique se a versão em que voce esta instalando é a 5.5, caso contrario não funcionara, vou procurar um tempinho para disponibilizar em outras versões tambem

    ResponderExcluir
  5. Então, minha versão é a 5.5.4 eu fiz o teste também nas versões 5.5.0 e 6.0 apresentou o mesmo problema.

    Se não for pedir muito teria um local onde eu possa baixar a versão da loja que funcione com este módulo?

    Obrigado pela força!

    ResponderExcluir
  6. Ok André, vou postar aqui a minha versão que eu uso, e acredito que os problemas se resolvam :D

    ResponderExcluir
  7. Olá, parabens pela iniciativa, gostaria de saber porque o resultado do frete se multiplica, para cada produto, ou seja se vc tem um produto no carrinho, ele mostra:
    [] pac 12,00
    [] sedex 19,00

    e se vc tem + produtos ele da um loop mostrando assim, 2 , 3, ou mais vezes a mensagem de acordo com a QTD de produtos

    EX: 3 produtos no carrinho:
    [] pac 12,00
    [] sedex 19,00

    [] pac 12,00
    [] sedex 19,00

    [] pac 12,00
    [] sedex 19,00

    ResponderExcluir
  8. Olá Adriano, na verdade isso é padrão do interspire , onde você define como voce quer estregar certos produtos, talves isso sirva para que eu possa estar corrigindo e seguindo o padrao Brasileiro de Loja Virtual.

    Obrigado !

    ResponderExcluir
  9. amigo, parabens pela iniciativa, se não for pedir d+ poderia nos discrever a forma da instalação? pois ja tenho instalado mais como atualizar com o seu arquivo?

    ResponderExcluir
  10. Então cara , é só voce pegar o arquivo baixado (.zip) e extrair , dentro vai ter uma pasta "correios" ai só voce pegar essa pasta de jogar na pasta modules/shipping , se pedir para substituir confirme

    ResponderExcluir
  11. Vlw Vinicius Lima, desde ja agradeço por sua ajuda, com certeza além de mim essa resposta vai ajudar varias outras pessoas...fiz todo o procedimento que vc passou, porem na hora do calculo do frete ainda sim mostra INDIDPONIVEL, por que será? tem que fazer mais alguma configuração? meu produtos estam todos com descrição certinha da largura, altura e profundidade e peso...poderia me dar uma força novamente? dsde ja agradeço..

    ResponderExcluir
  12. Concerteza Luiz Ronaldo, então esse problema está acontecendo com todas as lojas interspire, oque pode ser: Os correios possam estar passando por alguma manutenção. Vou verificar essa informação direitinho e informá-lo

    ResponderExcluir
  13. Op amigao, muito obrigado mesmo viu...e dificiu aqui na net encontrar pessoas que se disponam assim ajudar, tirar dúvidas e dar dicas...se não for pedir d+ e vc conseguir descobrir o por que do problema poderia me adicionar? "linha212@hotmail.com" ou ate me enviar um email...vlw amigão abç...

    ResponderExcluir
  14. Srs, o problema é a modificação que os correios fizeram no webservice.

    Edite o arquivo
    encontre a linha
    http://ws.correios.com.br/calculador/CalcPrecoPrazo.aspx

    e substitua por essa
    http://ws.correios.com.br/calculador/CalcPrecoPrazo.asmx/CalcPreco?

    que volta a funcionar.

    [ ´ ]s

    Se o dono do blog aqui aceitar, visitem o forum
    interspirebr.com.br/forum que tem bastante coisa la.

    ResponderExcluir
    Respostas
    1. Então no meu caso aqui apareceu este erro:
      Como concertar?
      Notice: Undefined offset: 1 in /home/lojatot1/public_html/web/modules/shipping/correios/module.correios.php on line 148

      Excluir
  15. Parabéns pelos módulos e por todo o conteúdo de seu blog

    Voçê por acaso teria o modulo do E-sedex com essa correção nova para disponibilizar

    ResponderExcluir
  16. Então amigo fiz a substituição do modulo e ainda continua o erro o que posso fazer estou utilizando a 9.1. fico no aguardo

    ResponderExcluir
  17. Aqui funcionou! realmente a substituição por isso: http://ws.correios.com.br/calculador/CalcPrecoPrazo.asmx/CalcPreco? resolveu meu problema.

    Obrigado pela dica

    ResponderExcluir
  18. Alguém poderia disponibilizar o modulo que já esteja funcionando para eu fazer o Downloads... pois já alterei o end do servidor e continua dando erro... fico no aguardo

    ResponderExcluir
  19. eu quero saber que versao de php e mysql e usado pra loja 6? estos modulos sao pra que versao Vinicius muito obrigado espero resposta brother, adicionei no msn azanki@live.com

    ResponderExcluir
  20. Boitatah eu tmb utilizo a 9.1, fiz a substituição e erro permaneceu. Então exclui a pasta CORREIOS que está no caminho /www/modules/shipping/correios. O módulo continuou calculando errado, acho que ao excluir, não era nem para ele calcular. Portanto acho que temos que editar algum outro arquivo que está em outra pasta. Alguma dica ?

    ResponderExcluir
  21. Minha primeira contribuição para o interspire lol, retire os comentários da tag de abertura php e irá funcionar, ficando assim:
    <?php
    class SHIPPING_CORREIOS extends ISC_SHIPPING
    {

    <?php /** tal tal tal */ = isso nunca deve ser feito.

    ResponderExcluir
  22. Nao esta dando certo.
    1o. o link postado acusa virus!
    Mesmo só mudando a linha url do correio para http://ws.correios.com.br/calculador/CalcPrecoPrazo.asmx/CalcPreco?
    na ora de calcular o frete em meu site continua dando a mansagem: Infelizmente não entregamos em sua localização.
    Por favor selecione outra localização e tente novamente.
    ???
    Alguem pode me ajudar?

    ResponderExcluir
  23. Amigão, peguei seu código e show de bola, mas agora ele não calcula mais para produtos abaixo da medida permitida, sabe o que pode ser?

    ResponderExcluir
    Respostas
    1. Opa, então os correios possui uma tabela de medidas para auxiliar as vendas feitas pela internet.
      Provavelmente o produto que voce está tentando vender é muito pequeno(ou grande) demais para ser entregue pelos correios.
      Peço que verifique a tabela e veja se o seu produto se encaixa com as medidas do correios.
      http://blog.correios.com.br/comercioeletronico/?p=263

      Se for o caso, aumente o tamanho da caixa(costuma ser uma boa idéia) que for entregar o produto

      Abraço

      Excluir
  24. Amigo tem como fazer pra versão 6.0?

    ResponderExcluir
    Respostas
    1. Opa, tenho sim

      segue o link:
      http://www.4shared.com/zip/mXWlCxi-/modulo-correios-isc6.html

      Caso o módulo venha a apresentar problemas, não deixe de comentar !

      Abraço !

      Excluir
  25. Pessoal, pelo amor de DEUS me ajude a resolver este problema.
    Notice: Undefined offset: 1 in /home/lojatot1/public_html/web/modules/shipping/correios/module.correios.php on line 148

    ResponderExcluir
  26. Amigos outra coisa o catalogo da loja em pdf baixa normal mas nao abre depois de baixado poderiam me ajudar tambem
    http://www.recantocladamagia.com.br/

    ResponderExcluir
  27. valor da compra duplicando na forma de envio nao consigo resolver e os modulos de pac e sedex nao aparecem sera o que
    http://www.recantocladamagia.com.br/compras.php?suggest=0

    ResponderExcluir
  28. Como o Vinícius Lima disse, o erro esta no peso do Produto. Se o peso do produto for de 300g, coloque 0.300 que ele irá calcular o frete e a mensagem vai sumir.

    ResponderExcluir
  29. Vinicius, teria a rotina para a versão 9.5?

    ResponderExcluir
  30. Ola amigosusando o controle e variação de produtos na hora de comprar o produto abre uma janelinha dizendo selecione uma ou mais oções para colocar esse produto em sua lista.
    Alguem pode me ajudar ai segue o link
    http://www.recantocladamagia.com.br/produto/Chinelo-Guitar-Hero-%252d-Venda-Excluciva-pelo-chat.html

    ResponderExcluir
  31. gente estou com o mesmo problema do Olavo

    Notice: Undefined offset: 1 in /home/lojatot1/public_html/web/modules/shipping/correios/module.correios.php on line 148

    utilizo a loja 6.1.8

    a linha 148 é essa:

    $prazo = explode('', $pra[1]);


    alguem por favor pode nos ajudar?

    ResponderExcluir
  32. Pessoal, nesse código está faltando uma linha e por isso não consegue calcular o frete. Vejam abaixo

    ."nCdEmpresa=".$this->_id."&"
    ."sDsSenha=".$this->_senha."&"
    ."sCepOrigem=".$sCepOrigem."&"
    ."sCepDestino=".$sCepDestino."&"
    ."nVlPeso=".$this->_peso."&"
    ."nCdFormato=1&" ( ESSA LINHA ESTA FALTANDO NO CÓDIGO DO VINICIUS )
    ."nVlComprimento=".$this->_comprimento."&"
    ."nVlAltura=".$this->_altura."&"
    ."nVlLargura=".$this->_largura."&"
    ."sCdMaoPropria=N&"
    ."nVlValorDeclarado=".$total."&"
    ."sCdAvisoRecebimento=S&" ( OUTRA COISA, COLOQUE "S" AQUI PARA A.R. )
    ."nCdServico=".$this->_deliverytype."&"
    ."nVlDiametro=0&"
    ."StrRetorno=xml";

    ResponderExcluir
  33. Obs: So que no ADMIN as medidas terao que ser ajustadas para as medidas corretas mínimas dos Correios
    Largura = 11
    Altura = 4
    Comprimento = 16

    Se você nao colocar nessa ordem e por exemplo colocar o comprimento menor que 16 mesmo que o resto seja maior nao vai funcionar. É só testar pegar essas medidas e trocar um de lugar com o outro.

    ResponderExcluir
  34. Brother, não consigo baixar, poderia mandar para it.brunoms@gmail.com? obrigado

    ResponderExcluir
  35. ola boa noite, por acaso voce tem o modulo novo dos correios 2017 ?

    ResponderExcluir