node-correios v3.0.2
Correios Node.js
Módulo de Node.js que utilizar a API SOAP dos Correios para calcular frete de envio e buscar endereço pelo CEP. API dos Correios
Como instalar
npm install node-correios --saveComo utilizar o calculo de frete
let Correios = require('node-correios');
let correios = new Correios();
correios.calcPreco(args)
.then(result => {
console.log(result);
})
.catch(error => {
console.log(error);
});Respostas
Com sucesso:
[{
Codigo: 40010,
Valor: '23,30',
ValorMaoPropria: '0,00',
ValorAvisoRecebimento: '0,00',
ValorValorDeclarado: '0,00',
Erro: '0',
MsgErro: {}
}]Com erro:
[{
Codigo: 40215,
Valor: '0',
ValorMaoPropria: '0',
ValorAvisoRecebimento: '0',
ValorValorDeclarado: '0',
Erro: '008',
MsgErro: 'Serviço indisponível para o trecho informado.',
ValorSemAdicionais: '0'
}]Para consultar mais de um serviço na mesma requisição, basta passar vários códigos de serviço, separados por vírgula,
para o parâmetro nCdServico (ver descrição dos parâmetros abaixo). Neste caso, o array da resposta conterá um objeto
por cada código informado, sendo que alguns podem apresentar erro e outros podem ter tido sucesso.
let args = {
nCdServico: '40010,41106,40215',
// demais parâmetros ...
}
correios.calcPreco(args)
.then(result => {
console.log(result);
})
.catch(error => {
console.log(error)
});[{
Codigo: 40010,
Valor: '24,10',
ValorMaoPropria: '0,00',
ValorAvisoRecebimento: '0,00',
ValorValorDeclarado: '0,00',
Erro: {},
MsgErro: {},
ValorSemAdicionais: '24,10'
},{
Codigo: 41106,
Valor: '16,80',
ValorMaoPropria: '0,00',
ValorAvisoRecebimento: '0,00',
ValorValorDeclarado: '0,00',
Erro: {},
MsgErro: {},
ValorSemAdicionais: '16,80'
},{
Codigo: 40215,
Valor: '0',
ValorMaoPropria: '0',
ValorAvisoRecebimento: '0',
ValorValorDeclarado: '0',
Erro: '008',
MsgErro: 'Serviço indisponível para o trecho informado.',
ValorSemAdicionais: '0'
}]Métodos
Os métodos implementados são: calcPreco e calcPrecoPrazo
correios.calcPreco(args);
correios.calcPrecoPrazo(args);
Para executar o comando tem que enviar os campos obrigatórios. Para mais detalhes e informações veja o PDF da API dos correios
Obrigatórios
nCdServico- StringCódigo do serviço: - 04014 = SEDEX à vista - 04065 = SEDEX à vista pagamento na entrega - 04510 = PAC à vista - 04707 = PAC à vista pagamento na entrega - 40169 = SEDEX12 ( à vista e a faturar) - 40215 = SEDEX 10 (à vista e a faturar) - 40290 = SEDEX Hoje VarejosCepOrigem- StringCEP de Origem sem hífen. Exemplo: **05311900**sCepDestino- StringCEP de Destino sem hífennVlPeso- StringPeso da encomenda, incluindo sua embalagem. O peso deve ser informado em quilogramas. Se o formato for Envelope, o valor máximo permitido será 1 kgnCdFormato- InteiroFormato da encomenda (incluindo embalagem) - 1 = Formato caixa/pacote - 2 = Formato rolo/prisma - 3 = EnvelopenVlComprimento- DecimalComprimento da encomenda (incluindo embalagem), em centímetrosnVlAltura- DecimalAltura da encomenda (incluindo embalagem), em centímetros. Se o formato for envelope, informar zero (0)nVlLargura- DecimalLargura da encomenda (incluindo embalagem), em centímetrosnVlDiametro- DecimalDiâmetro da encomenda (incluindo embalagem), em centímetros
Não obrigatórios
nCdEmpresa- StringSeu código administrativo junto à ECT. O código está disponível no corpo do contrato firmado com os CorreiossDsSenha- StringSenha para acesso ao serviço, associada ao seu código administrativo. A senha inicial corresponde aos 8 primeiros dígitos do CNPJ informado no contratosCdMaoPropria- StringIndica se a encomenda será entregue com o serviço adicional mão própria - S = sim - N = não **PADRÃO**
nVlValorDeclarado- DecimalIndica se a encomenda será entregue com o serviço adicional valor declarado. Neste campo deve ser apresentado o valor declarado desejado, em ReaissCdAvisoRecebimento- StringIndica se a encomenda será entregue com o serviço adicional mão própria - S = sim - N = não **PADRÃO**
Como utilizar a buscar por CEP
let Correios = require('node-correios');
let correios = new Correios();
correios.consultaCEP({ cep: '00000000' })
.then(result => {
console.log(result);
})
.catch(error => {
console.log(error;)
});Resposta
{
bairro: 'Ipanema',
cep: '22421030',
localidade: 'Rio de Janeiro',
logradouro: 'Rua Redentor',
uf: 'RJ'
}Testes unitários
Para rodas os testes unitários:
$ npm testAutor
| Vitor Leal |
Licença
Veja LICENSE.txt
6 years ago
6 years ago
6 years ago
7 years ago
10 years ago
10 years ago
10 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
