Manual de implementao do webservice de clculo de preos e prazos de encomendas
1/18 Manual de Implementacao do Calculo Remoto de Precos e Prazos_versao_1.9.doc
Calculador de preos e prazos de encomendas
O calculador de preos e prazos de encomendas dos Correios destinado aos clientes que possuem contrato de SEDEX, e-SEDEX e PAC, que necessitam calcular, no seu ambiente e de forma personalizada, o preo e o prazo de entrega de uma encomenda. possvel tambm a um cliente que no possui contrato de encomenda com os Correios realizar o clculo, porm neste caso os preos apresentados sero aqueles praticados no balco da agncia. De forma a dar maior flexibilidade ao cliente, os Correios oferecem quatro formas de obter o resultado da consulta: a) Consulta via Webservice: Esta forma de consulta utiliza a tecnologia Web Services coleo de protocolos e padres (XML, SOAP e WSDL) usados para troca de informaes entre aplicaes Internet. Ela indicada para usurios avanados, que dominam essa tecnologia; b) Resultado no formato XML: Nesta forma de consulta os parmetros so passados para o calculador de preos e prazos via post e o resultado retornado no formato XML; c) Resultado na pgina do cliente: Nesta forma de consulta os parmetros so passados para o calculador de preos e prazos via post e o resultado retornado numa pgina HTML especificada pelo requisitante. Ex: <input type=hidden name="Resposta" value="http://www.seusite.com.br/suapagina.xxx"> d) Resultado numa janela pop-up: Nesta forma de consulta os parmetros so passados para o calculador de preos e prazos via post e o resultado ser mostrado dentro de uma janela pop-up do prprio site dos Correios. (necessrio desabilitar o bloqueador de pop-up do browser)
EMPRESA BRASILEIRA DE CORREIOS E TELGRAFOS ECT Manual de implementao do webservice de clculo de preos e prazos de encomendas 2/18 Manual de Implementacao do Calculo Remoto de Precos e Prazos_versao_1.9.doc
1. Consulta via Webservice: A interface do WebService pode ser consultada em: http://ws.correios.com.br/calculador/CalcPrecoPrazo.asmx Os mtodos relativos a este manual so: CalcPrecoPrazo: retorna o preo e o prazo de entrega de uma encomenda. Calcpreco: retorna o preo de envio de uma encomenda. Calcprazo: retorna o prazo de entrega de uma encomenda.
1.1 Parmetros de entrada: mtodo CalcPrecoPrazo
Campo Tipo Descrio Obrigatrio nCdEmpresa String Seu cdigo administrativo junto ECT. O cdigo est disponvel no corpo do contrato firmado com os Correios. No, mas o parmetro tem que ser passado mesmo vazio.
sDsSenha String Senha para acesso ao servio, associada ao seu cdigo administrativo. A senha inicial corresponde aos 8 primeiros dgitos do CNPJ informado no contrato. A qualquer momento, possvel alterar a senha no endereo http://www.corporativo.correios.com.br/encomendas/s ervicosonline/recuperaSenha. No, mas o parmetro tem que ser passado mesmo vazio. .
Para outros servios, consulte o cdigo no seu contrato. Sim. Pode ser mais de um numa consulta separados por vrgula. sCepOrigem String CEP de Origem sem hfen.Exemplo: 05311900
Sim sCepDestino String CEP de Destino sem hfen
Sim nVlPeso String Peso da encomenda, incluindo sua embalagem. O peso deve ser informado em quilogramas. Se o formato for Envelope, o valor mximo permitido ser 1 kg. Sim nCdFormato Int Formato da encomenda (incluindo embalagem). Valores possveis: 1, 2 ou 3 1 Formato caixa/pacote 2 Formato rolo/prisma 3 - Envelope Sim nVlComprimento Decimal Comprimento da encomenda (incluindo embalagem), em centmetros. Sim. EMPRESA BRASILEIRA DE CORREIOS E TELGRAFOS ECT Manual de implementao do webservice de clculo de preos e prazos de encomendas 3/18 Manual de Implementacao do Calculo Remoto de Precos e Prazos_versao_1.9.doc nVlAltura Decimal Altura da encomenda (incluindo embalagem), em centmetros. Se o formato for envelope, informar zero (0). Sim. nVlLargura Decimal Largura da encomenda (incluindo embalagem), em centmetros. Sim. nVlDiametro Decimal Dimetro da encomenda (incluindo embalagem), em centmetros. Sim. sCdMaoPropria String Indica se a encomenda ser entregue com o servio adicional mo prpria. Valores possveis: S ou N (S Sim, N No) Sim. nVlValorDeclarado Decimal Indica se a encomenda ser entregue com o servio adicional valor declarado. Neste campo deve ser apresentado o valor declarado desejado, em Reais. Sim. Se no optar pelo servio informar zero. sCdAvisoRecebimento String Indica se a encomenda ser entregue com o servio adicional aviso de recebimento. Valores possveis: S ou N (S Sim, N No) Sim. Se no optar pelo servio informar N
Retorno dos dados O retorno dos dados um XML informando a situao da consulta e uma lista (array) com os dados de preo e prazo dos servios SEDEX, e-SEDEX e PAC. O e-SEDEX um servio exclusivo para as principais localidades e clientes do segmento de Comrcio Eletrnico, portanto, caso o CEP Origem e Destino estejam fora da rea de abrangncia do e-SEDEX, o mesmo no ser informado e uma mensagem relativa indisponibilidade do servio ser apresentada.
Parmetro Descrio Resultado.Servicos Array com os preos e prazos dos servios solicitados e disponveis. Resultado.Servicos.cServico[x].Codigo Cdigo do Servio de Entrega. Resultado.Servicos.cServico[x].Valor Preo total da encomenda, em Reais, incluindo os preos dos servios opcionais Resultado.Servicos.cServico[x].PrazoEntrega Prazo estimado em dias para entrega do produto. Se o valor retornado for 0 (zero), indica que o prazo no foi retornado corretamente. Resultado.Servicos.cServico[x].ValorMaoPropria Preo do servio adicional Mo Prpria Resultado.Servicos.cServico[x].ValorAvisoRecebimento Preo do servio adicional Aviso de Recebimento Resultado.Servicos.cServico[x].ValorValorDeclarado Preo do servio adicional Valor Declarado Resultado.Servicos.cServico[x].EntregaDomiciliar Informa se a localidade informada possui entrega domiciliria. Se o prazo no for retornado corretamente, o retorno deste parmetro ser vazio. Resultado.Servicos.cServico[x].EntregaSabado Informa se a localidade informada possui entrega domiciliria aos sbados. Se o prazo no for retornado corretamente, o retorno deste parmetro ser vazio. Resultado.Servicos.cServico[x].Erro <Cdigos de Erros retornados pelo calculador> + o cdigo 7 (Servio indisponvel, tente mais tarde) Resultado.Servicos.cServico[x].MsgErro Retorna a descrio do erro gerado.
EMPRESA BRASILEIRA DE CORREIOS E TELGRAFOS ECT Manual de implementao do webservice de clculo de preos e prazos de encomendas 4/18 Manual de Implementacao do Calculo Remoto de Precos e Prazos_versao_1.9.doc
Exemplo do XML de retorno
EMPRESA BRASILEIRA DE CORREIOS E TELGRAFOS ECT Manual de implementao do webservice de clculo de preos e prazos de encomendas 5/18 Manual de Implementacao do Calculo Remoto de Precos e Prazos_versao_1.9.doc
1.2 Parmetros de entrada: mtodo CalcPreco
Campo Tipo Descrio Obrigatrio nCdEmpresa String Seu cdigo administrativo junto ECT. O cdigo est disponvel no corpo do contrato firmado com os Correios. No, mas o parmetro tem que ser passado mesmo vazio.
sDsSenha String Senha para acesso ao servio, associada ao seu cdigo administrativo. A senha inicial corresponde aos 8 primeiros dgitos do CNPJ informado no contrato. A qualquer momento, possvel alterar a senha no endereo http://www.corporativo.correios.com.br/encomendas/s ervicosonline/recuperaSenha. No, mas o parmetro tem que ser passado mesmo vazio. .
Para outros servios, consulte o cdigo no seu contrato. Sim. Pode ser mais de um numa consulta separados por vrgula. sCepOrigem String CEP de Origem sem hfen.Exemplo: 05311900
Sim sCepDestino String CEP de Destino sem hfen
Sim nVlPeso String Peso da encomenda, incluindo sua embalagem. O peso deve ser informado em quilogramas. Se o formato for Envelope, o valor mximo permitido ser 1 kg. Sim nCdFormato Int Formato da encomenda (incluindo embalagem). Valores possveis: 1, 2 ou 3 1 Formato caixa/pacote 2 Formato rolo/prisma 3 - Envelope Sim nVlComprimento Decimal Comprimento da encomenda (incluindo embalagem), em centmetros. Sim. nVlAltura Decimal Altura da encomenda (incluindo embalagem), em centmetros. Se o formato for envelope, informar zero (0). Sim. nVlLargura Decimal Largura da encomenda (incluindo embalagem), em centmetros. Sim. nVlDiametro Decimal Dimetro da encomenda (incluindo embalagem), em centmetros. Sim. sCdMaoPropria String Indica se a encomenda ser entregue com o servio adicional mo prpria. Valores possveis: S ou N (S Sim, N No) Sim. nVlValorDeclarado Decimal Indica se a encomenda ser entregue com o servio adicional valor declarado. Neste campo deve ser apresentado o valor declarado desejado, em Reais. Sim. Se no optar pelo servio informar zero. sCdAvisoRecebimento String Indica se a encomenda ser entregue com o servio adicional aviso de recebimento. Valores possveis: S ou N (S Sim, N No) Sim. Se no optar pelo servio informar N
EMPRESA BRASILEIRA DE CORREIOS E TELGRAFOS ECT Manual de implementao do webservice de clculo de preos e prazos de encomendas 6/18 Manual de Implementacao do Calculo Remoto de Precos e Prazos_versao_1.9.doc
Retorno dos dados O retorno dos dados um XML informando a situao da consulta e uma lista (array) com os dados de preo dos servios SEDEX, e-SEDEX e PAC. O e-SEDEX um servio exclusivo para as principais localidades e clientes do segmento de Comrcio Eletrnico, portanto, caso o CEP Origem e Destino estejam fora da rea de abrangncia do e-SEDEX, o mesmo no ser informado e uma mensagem relativa indisponibilidade do servio ser apresentada.
Parmetro Descrio Resultado.Servicos Array com os preos e prazos dos servios solicitados e disponveis. Resultado.Servicos.cServico[x].Codigo Cdigo do Servio de Entrega. Resultado.Servicos.cServico[x].Valor Preo total da encomenda, em Reais, incluindo os preos dos servios opcionais Resultado.Servicos.cServico[x].ValorMaoPropria Preo do servio adicional Mo Prpria Resultado.Servicos.cServico[x].ValorAvisoRecebimento Preo do servio adicional Aviso de Recebimento Resultado.Servicos.cServico[x].ValorValorDeclarado Preo do servio adicional Valor Declarado Resultado.Servicos.cServico[x].Erro <Cdigos de Erros retornados pelo calculador> + o cdigo 7 (Servio indisponvel, tente mais tarde) Resultado.Servicos.cServico[x].MsgErro Retorna a descrio do erro gerado.
Exemplo do XML de retorno
EMPRESA BRASILEIRA DE CORREIOS E TELGRAFOS ECT Manual de implementao do webservice de clculo de preos e prazos de encomendas 7/18 Manual de Implementacao do Calculo Remoto de Precos e Prazos_versao_1.9.doc
1.3 Parmetros de entrada: mtodo CalcPrazo
Campo Tipo Descrio Obrigatrio sCepOrigem String CEP de Origem sem hfen.Exemplo: 05311900
Para outros servios, consulte o cdigo no seu contrato. Sim. Pode ser mais de um numa consulta separados por vrgula.
Retorno dos dados O retorno dos dados um XML informando a situao da consulta e uma lista (array) com os dados de prazo dos servios SEDEX, e-SEDEX e PAC. O e-SEDEX um servio exclusivo para as principais localidades e clientes do segmento de Comrcio Eletrnico, portanto, caso o CEP Origem e Destino estejam fora da rea de abrangncia do e-SEDEX, o mesmo no ser informado e uma mensagem relativa indisponibilidade do servio ser apresentada.
Parmetro Descrio Resultado.Servicos Array com os preos e prazos dos servios solicitados e disponveis. Resultado.Servicos.cServico[x].Codigo Cdigo do Servio de Entrega. Resultado.Servicos.cServico[x].PrazoEntrega Prazo estimado em dias para entrega do produto. Se o valor retornado for 0 (zero), indica que o prazo no foi retornado corretamente. Resultado.Servicos.cServico[x].EntregaDomiciliar Informa se a localidade informada possui entrega domiciliria. Se o prazo no for retornado corretamente, o retorno deste parmetro ser vazio. Resultado.Servicos.cServico[x].EntregaSabado Informa se a localidade informada possui entrega domiciliria aos sbados. Se o prazo no for retornado corretamente, o retorno deste parmetro ser vazio. Resultado.Servicos.cServico[x].Erro <Cdigos de Erros retornados pelo calculador> + o cdigo 7 (Servio indisponvel, tente mais tarde) Resultado.Servicos.cServico[x].MsgErro Retorna a descrio do erro gerado.
EMPRESA BRASILEIRA DE CORREIOS E TELGRAFOS ECT Manual de implementao do webservice de clculo de preos e prazos de encomendas 8/18 Manual de Implementacao do Calculo Remoto de Precos e Prazos_versao_1.9.doc
Exemplo do XML de retorno
EMPRESA BRASILEIRA DE CORREIOS E TELGRAFOS ECT Manual de implementao do webservice de clculo de preos e prazos de encomendas 9/18 Manual de Implementacao do Calculo Remoto de Precos e Prazos_versao_1.9.doc
2. Consulta com resultado no formato XML, na pgina do cliente e janela pop-up: O calculador de preos e prazos dos servios de encomendas dos Correios tambm pode ser acessado pelo endereo:
Neste caso os resultados podero ser visualizados no formato XML, numa janela pop- up ou numa pgina disponvel no ambiente do requisitante. Neste ltimo caso o retorno ser enviado via post.
2.1 Parmetros de entrada
Campo Tipo Descrio Obrigatrio nCdEmpresa String Seu cdigo administrativo junto ECT. O cdigo est disponvel no corpo do contrato firmado com os Correios. No, mas o parmetro tem que ser passado mesmo vazio.
sDsSenha String Senha para acesso ao servio, associada ao seu cdigo administrativo. A senha inicial corresponde aos 8 primeiros dgitos do CNPJ informado no contrato. A qualquer momento, possvel alterar a senha no endereo http://www.corporativo.correios.com.br/encomendas/s ervicosonline/recuperaSenha. No, mas o parmetro tem que ser passado mesmo vazio.
Para outros servios, consulte o cdigo no seu contrato. Sim. Pode ser mais de um numa consulta separados por vrgula. sCepOrigem String CEP de Origem sem hfen.Exemplo: 05311900
Sim sCepDestino String CEP de Destino Sem hfem
Sim nVlPeso String Peso da encomenda, incluindo sua embalagem. O peso deve ser informado em quilogramas. Se o formato for Envelope, o valor mximo permitido ser 1 kg. Sim nCdFormato Int Formato da encomenda (incluindo embalagem). Valores possveis: 1, 2 ou 3 1 Formato caixa/pacote 2 Formato rolo/prisma 3 - Envelope Sim nVlComprimento Decimal Comprimento da encomenda (incluindo embalagem), em centmetros. Sim. nVlAltura Decimal Altura da encomenda (incluindo embalagem), em centmetros. Se o formato for envelope, informar zero (0). Sim. nVlLargura Decimal Largura da encomenda (incluindo embalagem), em centmetros. Sim. EMPRESA BRASILEIRA DE CORREIOS E TELGRAFOS ECT Manual de implementao do webservice de clculo de preos e prazos de encomendas 10/18 Manual de Implementacao do Calculo Remoto de Precos e Prazos_versao_1.9.doc nVlDiametro Decimal Dimetro da encomenda (incluindo embalagem), em centmetros. Sim. sCdMaoPropria String Indica se a encomenda ser entregue com o servio adicional mo prpria. Valores possveis: S ou N (S Sim, N No) Sim. nVlValorDeclarado Decimal Indica se a encomenda ser entregue com o servio adicional valor declarado. Neste campo deve ser apresentado o valor declarado desejado, em Reais. Sim. Se no optar pelo servio informar zero. sCdAvisoRecebimento String Indica se a encomenda ser entregue com o servio adicional aviso de recebimento. Valores possveis: S ou N (S Sim, N No) Sim. Se no optar pelo servio informar N StrRetorno String Indica a forma de retorno da consulta. XML Resultado em XML Popup Resultado em uma janela popup <URL> Resultado via post em uma pgina do requisitante Sim. nIndicaCalculo String Tipo de informao que ser retornada. Valores possveis: 1, 2 ou 3 1 - S preo 2 - S prazo 3 - Preo e Prazo No
Retorno dos dados S preo Codigo_X
Cdigo do Servio de Entrega. Valor_X Preo total da encomenda, em Reais, incluindo os preos dos servios opcionais. ValorMaoPropria_X Preo do servio adicional Mo Prpria. ValorAvisoRecebimento_X Preo do servio adicional Aviso de Recebimento. ValorValorDeclarado_X Preo do servio adicional Valor Declarado. Erro_X Os mesmos do Web Services. MsgErro_X Retorna a descrio do erro gerado.
S prazo Codigo_X
Cdigo do Servio de Entrega. PrazoEntrega_X Prazo estimado em dias para entrega do produto. Se o valor retornado for 0 (zero), indica que o prazo no foi retornado corretamente. EntregaDomiciliar_X Informa se a localidade informada possui entrega domiciliria. Se o prazo no for retornado corretamente, o retorno deste parmetro ser vazio. EntregaSabado_X Informa se a localidade informada possui entrega domiciliria aos sbados. Se o prazo no for retornado corretamente, o retorno deste parmetro ser vazio. Erro_X Os mesmos do Web Services. MsgErro_X Retorna a descrio do erro gerado.
EMPRESA BRASILEIRA DE CORREIOS E TELGRAFOS ECT Manual de implementao do webservice de clculo de preos e prazos de encomendas 11/18 Manual de Implementacao do Calculo Remoto de Precos e Prazos_versao_1.9.doc
Preo e prazo Codigo_X
Cdigo do Servio de Entrega. Valor_X Preo total da encomenda, em Reais, incluindo os preos dos servios opcionais. ValorMaoPropria_X Preo do servio adicional Mo Prpria. ValorAvisoRecebimento_X Preo do servio adicional Aviso de Recebimento. ValorValorDeclarado_X Preo do servio adicional Valor Declarado. PrazoEntrega_X Prazo estimado em dias para entrega do produto. Se o valor retornado for 0 (zero), indica que o prazo no foi retornado corretamente. EntregaDomiciliar_X Informa se a localidade informada possui entrega domiciliria. Se o prazo no for retornado corretamente, o retorno deste parmetro ser vazio. EntregaSabado_X Informa se a localidade informada possui entrega domiciliria aos sbados. Se o prazo no for retornado corretamente, o retorno deste parmetro ser vazio. Erro_X Os mesmos do Web Services. MsgErro_X Retorna a descrio do erro gerado.
Obs: O X um ndice que varia de 1 at n (nmero de servios enviado no parmetro nCdServico). Por exemplo: se forem enviados dois cdigos de servio (40010,40044), o retorno conter os campos Cdigo_1 (com o valor 40010) e Codigo_2 (com o valor 40044).
Exemplo de consulta com retorno no formato XML para preo e prazo: http://ws.correios.com.br/calculador/CalcPrecoPrazo.aspx?nCdEmpresa=09146920&sDsSenha=123456&sC epOrigem=70002900&sCepDestino=71939360&nVlPeso=1&nCdFormato=1&nVlComprimento=30&nVlAltura =30&nVlLargura=30&sCdMaoPropria=n&nVlValorDeclarado=0&sCdAvisoRecebimento=n&nCdServico=4001 0&nVlDiametro=0&StrRetorno=xml&nIndicaCalculo=3
Exemplo de retorno no formato XML
EMPRESA BRASILEIRA DE CORREIOS E TELGRAFOS ECT Manual de implementao do webservice de clculo de preos e prazos de encomendas 12/18 Manual de Implementacao do Calculo Remoto de Precos e Prazos_versao_1.9.doc
Exemplo de consulta com retorno no formato popup http://ws.correios.com.br/calculador/CalcPrecoPrazo.aspx?nCdEmpresa=09146920&sDsSenha=123456&sC epOrigem=70002900&sCepDestino=71939360&nVlPeso=1&nCdFormato=1&nVlComprimento=30&nVlAltura =30&nVlLargura=30&sCdMaoPropria=n&nVlValorDeclarado=0&sCdAvisoRecebimento=n&nCdServico=4001 0&nVlDiametro=0&StrRetorno=popup&nIndicaCalculo=3
Exemplo de retorno no formato popup
EMPRESA BRASILEIRA DE CORREIOS E TELGRAFOS ECT Manual de implementao do webservice de clculo de preos e prazos de encomendas 13/18 Manual de Implementacao do Calculo Remoto de Precos e Prazos_versao_1.9.doc
Exemplo de consulta com retorno na pgina do requisitante http://ws.correios.com.br/calculador/CalcPrecoPrazo.aspx?nCdEmpresa=&sDsSenha=&sCepOrigem=700029 00&sCepDestino=71939360&nVlPeso=1&nCdFormato=1&nVlComprimento=20&nVlAltura=5&nVlLargura=15 &sCdMaoPropria=n&nVlValorDeclarado=0&sCdAvisoRecebimento=n&nCdServico=40010&nVlDiametro=0&S trRetorno=http://ws.correios.com.br/calculador/popuptarifa.aspx&nIndicaCalculo=3
Exemplo de retorno na pgina do requisitante
EMPRESA BRASILEIRA DE CORREIOS E TELGRAFOS ECT Manual de implementao do webservice de clculo de preos e prazos de encomendas 14/18 Manual de Implementacao do Calculo Remoto de Precos e Prazos_versao_1.9.doc
3. Cdigos e mensagens de erro:
Cdigo de erro Mensagem de erro 0 Processamento com sucesso -1 Cdigo de servio invlido -2 CEP de origem invlido -3 CEP de destino invlido -4 Peso excedido -5 O Valor Declarado no deve exceder R$ 10.000,00 -6 Servio indisponvel para o trecho informado -7 O Valor Declarado obrigatrio para este servio -8 Este servio no aceita Mo Prpria -9 Este servio no aceita Aviso de Recebimento -10 Precificao indisponvel para o trecho informado -11 Para definio do preo devero ser informados, tambm, o comprimento, a largura e altura do objeto em centmetros (cm). -12 Comprimento invlido. -13 Largura invlida. -14 Altura invlida. -15 O comprimento no pode ser maior que 105 cm. -16 A largura no pode ser maior que 105 cm. -17 A altura no pode ser maior que 105 cm. -18 A altura no pode ser inferior a 2 cm. -20 A largura no pode ser inferior a 11 cm. -22 O comprimento no pode ser inferior a 16 cm. -23 A soma resultante do comprimento + largura + altura no deve superar a 200 cm. -24 Comprimento invlido. -25 Dimetro invlido -26 Informe o comprimento. -27 Informe o dimetro. -28 O comprimento no pode ser maior que 105 cm. -29 O dimetro no pode ser maior que 91 cm. -30 O comprimento no pode ser inferior a 18 cm. -31 O dimetro no pode ser inferior a 5 cm. -32 A soma resultante do comprimento + o dobro do dimetro no deve superar a 200 cm. -33 Sistema temporariamente fora do ar. Favor tentar mais tarde. -34 Cdigo Administrativo ou Senha invlidos. -35 Senha incorreta. -36 Cliente no possui contrato vigente com os Correios. EMPRESA BRASILEIRA DE CORREIOS E TELGRAFOS ECT Manual de implementao do webservice de clculo de preos e prazos de encomendas 15/18 Manual de Implementacao do Calculo Remoto de Precos e Prazos_versao_1.9.doc -37 Cliente no possui servio ativo em seu contrato. -38 Servio indisponvel para este cdigo administrativo. -39 Peso excedido para o formato envelope -40 Para definicao do preco deverao ser informados, tambem, o comprimento e a largura e altura do objeto em centimetros (cm). -41 O comprimento nao pode ser maior que 60 cm. -42 O comprimento nao pode ser inferior a 16 cm. -43 A soma resultante do comprimento + largura nao deve superar a 120 cm. -44 A largura nao pode ser inferior a 11 cm. -45 A largura nao pode ser maior que 60 cm. -888 Erro ao calcular a tarifa 006 Localidade de origem no abrange o servio informado 007 Localidade de destino no abrange o servio informado 008 Servio indisponvel para o trecho informado 009 CEP inicial pertencente a rea de Risco. 010 CEP final pertencente a rea de Risco. A entrega ser realizada, temporariamente, na agncia mais prxima do endereo do destinatrio. 011 CEP inicial e final pertencentes a rea de Risco 7 Servio indisponvel, tente mais tarde 99 Outros erros diversos do .Net
EMPRESA BRASILEIRA DE CORREIOS E TELGRAFOS ECT Manual de implementao do webservice de clculo de preos e prazos de encomendas 16/18 Manual de Implementacao do Calculo Remoto de Precos e Prazos_versao_1.9.doc
4. Exemplo de aplicao cliente para consulta de preos e prazos via webservice:
Passos para Utilizao:
Para testar copie os cdigos fonte de exemplo para um servidor web no wwwroot com os nomes frete.asp e frete2.asp respectivamente.
Frete2.asp Requisio dos Dados <%@LANGUAGE=VBScript%> <% option explicit 'On Error Resume Next dim oXmlHttp, oXmlDom dim sReturn, sPacoteSoap dim nCodigoRet, sDescricaoRet set oXmlHttp = server.CreateObject("Microsoft.XMLHTTP") const sSoapServer = "http://ws.correios.com.br/calculador/CalcPrecoPrazo.asmx"
'Tratamento de campos obrigatrios dim peso, comprimento, altura, largura, diametro, valordeclarado if request.form("peso") = "" then peso = "0" else peso = request.form("peso") end if
if request.form("comprimento") = "" then comprimento = "0" else comprimento = request.form("comprimento") end if
if request.form("altura") = "" then altura = "0" else altura = request.form("altura") end if
if request.form("largura") = "" then largura = "0" else largura = request.form("largura") end if
if request.form("diametro") = "" then diametro = "0" else diametro = request.form("diametro") end if
if request.form("valordeclarado") = "" then valordeclarado = "0" else valordeclarado = request.form("valordeclarado") end if
EMPRESA BRASILEIRA DE CORREIOS E TELGRAFOS ECT Manual de implementao do webservice de clculo de preos e prazos de encomendas 18/18 Manual de Implementacao do Calculo Remoto de Precos e Prazos_versao_1.9.doc sPacoteSoap = GerarPacoteSoap(request.form("codigo"),request.form("senha"),request.form("servicos"),requ est.form("cepori"),request.form("cepdes"),peso,request.form("formato"),comprimento, altura, largura, diametro, request.form("maopropria"), valordeclarado, request.form("avisorecebimento")) oXmlHttp.open "POST", sSoapServer, false oXmlHttp.setRequestHeader "SOAPAction", "http://tempuri.org/CalcPrecoPrazo" oXmlHttp.setRequestHeader "Content-Type", "text/xml; charset=utf-8" oXmlHttp.send(sPacoteSoap) sReturn = oXmlHttp.responseText 'parse xml Set oXmlDom = Server.CreateObject("Microsoft.XMLDOM") oXmlDom.loadXML sReturn set oXmlDom = oXmlDom.selectSingleNode("soap:Envelope/soap:Body/CalcPrecoPrazoResponse/CalcPrecoPrazoRes ult") 'Se o retorno foi OK ento listar os fretes disponveis dim oNodes, oNode 'Seleciona os fretes no XML Set oNodes = oXmlDom.selectNodes("Servicos/cServico") 'Mostra todos os fretes disponveis for each oNode in oNodes Response.Write "<div><span style=width:150px;>Cdigo:</span><span>" & oNode.selectSingleNode("Codigo").Text & "</span><br>" Response.Write "<span style=width:150px;>Valor:</span><span>" & oNode.selectSingleNode("Valor").Text & "</span><br>" Response.Write "<span style=width:150px;>Prazo: </span><span>" & oNode.selectSingleNode("PrazoEntrega").Text & "</span></div>" Response.Write "<span style=width:150px;>Valor Mo Prpria: </span><span>" & oNode.selectSingleNode("ValorMaoPropria").Text & "</span></div>" Response.Write "<span style=width:150px;>Valor Aviso de Recebimento: </span><span>" & oNode.selectSingleNode("ValorAvisoRecebimento").Text & "</span></div>" Response.Write "<span style=width:150px;>Valor Valor Declarado: </span><span>" & oNode.selectSingleNode("ValorValorDeclarado").Text & "</span></div>" Response.Write "<span style=width:150px;>Entrega Domiciliar: </span><span>" & oNode.selectSingleNode("EntregaDomiciliar").Text & "</span></div>" Response.Write "<span style=width:150px;>Entrega Sbado: </span><span>" & oNode.selectSingleNode("EntregaSabado").Text & "</span></div>" next Set oXmlDom = Nothing function GerarPacoteSoap(nCdEmpresa, sDsSenha, nCdServico, sCepOrigem, sCepDestino, nVlPeso, nCdFormato, nVlComprimento, nVlAltura, nVlLargura, nVlDiametro, sCdMaoPropria, nVlValorDeclarado, sCdAvisoRecebimento) dim sSoap sSoap = "<?xml version=""1.0"" encoding=""utf-8""?>" sSoap = sSoap & "<soap:Envelope xmlns:xsi=""http://www.w3.org/2001/XMLSchema- instance"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema"" xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"">" sSoap = sSoap & "<soap:Body>" sSoap = sSoap & "<CalcPrecoPrazo xmlns=""http://tempuri.org/"">" sSoap = sSoap & "<nCdEmpresa>" & nCdEmpresa & "</nCdEmpresa>" sSoap = sSoap & "<sDsSenha>" & sDsSenha & "</sDsSenha>" sSoap = sSoap & "<nCdServico>" & nCdServico & "</nCdServico>" sSoap = sSoap & "<sCepOrigem>" & sCepOrigem & "</sCepOrigem>" sSoap = sSoap & "<sCepDestino>" & sCepDestino & "</sCepDestino>" sSoap = sSoap & "<nVlPeso>" & nVlPeso & "</nVlPeso>" sSoap = sSoap & "<nCdFormato>" & nCdFormato & "</nCdFormato>" sSoap = sSoap & "<nVlComprimento>" & nVlComprimento & "</nVlComprimento>" sSoap = sSoap & "<nVlAltura>" & nVlAltura & "</nVlAltura>" sSoap = sSoap & "<nVlLargura>" & nVlLargura & "</nVlLargura>" sSoap = sSoap & "<nVlDiametro>" & nVlDiametro & "</nVlDiametro>" sSoap = sSoap & "<sCdMaoPropria>" & sCdMaoPropria & "</sCdMaoPropria>" sSoap = sSoap & "<nVlValorDeclarado>" & nVlValorDeclarado & "</nVlValorDeclarado>" sSoap = sSoap & "<sCdAvisoRecebimento>" & sCdAvisoRecebimento & "</sCdAvisoRecebimento>" sSoap = sSoap & "</CalcPrecoPrazo>" sSoap = sSoap & "</soap:Body>" sSoap = sSoap & "</soap:Envelope>" GerarPacoteSoap = sSoap end function %> <input type="button" name="btn" value="Voltar" onclick="history.go(-1);" ID="Button1">
Em caso de dvidas ou informaes ligue para nossa Central de Atendimento ao Cliente Telefone 3003-0888