correios_gem
A correios_gem permite você integrar a sua aplicação Ruby on Rails com as todas APIs dos Correios de maneira simples e rápida.
Através desta biblioteca, é realizada a integração com as quatro APIs dos Carreios, sendo elas:
- Sigep: Utilizada para buscar CEPs, solicitar entregas e verificar seu contrato com os correios.
- Logística Reversa: Utilizada para devoluções de encomendas através de seu contrato com os correios.
- Precificador: Utilizada para calcular preços (frete) e prazos de entregas através de seu contrato com os correios.
- SRO: Utilizada para rastrear entregas.
Esqueça requisições SOAP e códigos confusos criados pelos Correios. A correios_gem simplifica toda a comunicação com as APIs dos Correios através de ojetos Ruby e nomenclatura legível para seres humanos.
⚠️ Atenção: A correios_gem é uma biblioteca independente que não possui vínculo com os Correios. Para problemas com os Correios, consulte o gerente de seu contrato.
Utilização
Instalação
gem install correios_gem
Autenticação
Para se autenticar nas APIs dos Correios, o código abaixo deve ser inserido no(s) environments
de sua aplicação com as credenciais de seu contrato com os Correios.
# Credenciais de ambiente de testes dos Correios.
# Substitua pelas suas credenciais para utilizar o ambiente de produção dos Correios.
Correios.authenticate do |auth|
auth.sigep_user = 'sigep'
auth.sigep_password = 'n5f9t8'
auth.administrative_code = '17000190'
auth.contract = '9992157880'
auth.card = '0067599079'
auth.cnpj = '34028316000103'
auth.reverse_logistics_user = 'empresacws'
auth.reverse_logistics_password = '123456'
auth.sro_user = 'ECT'
auth.sro_password = 'SRO'
end
⚠️ Atenção: Não é obrigatório informar todas as credenciais para utilizar a correios_gem. Os métodos que você fará uso podem solicitar apenas parte das credenciais ou nenhuma delas. Verifique na documentação abaixo.
Métodos
Cada link direciona para a página com a descrição do método, credenciais necessárias para utilização, entrada e saída.
- Sigep
- Logística Reversa
-
Precificador
- Calcular Prazo de Entrega
- Calcular Prazo de Entrega com Data
- Calcular Prazo de Entrega com Restrições
- Calcular Preço (frete)
- Calcular Preço (frete) com Data
- Calcular Preço (frete) FAC
- Calcular Preço (frete) e Prazo de Entrega
- Calcular Preço (frete) e Prazo de Entrega com Data
- Calcular Preço (frete) e Prazo de Entrega com Restrições
- Listar Serviços
- Listar Serviços STAR
- SRO
Debug
Todos os métodos aceitam o parâmetro :show_request
, que, caso seu valor seja true
, exibirá no console da aplicação o corpo da requisição (em XML) enviada aos Correios. Utilize caso acredite que algum parâmetro não está sendo passado aos Correios. Ex:
Correios::Sigep.cancel_shipping({
show_request: true,
label_number: 'DL746686536BR',
request_id: '101001'
})
Console:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://cliente.bean.master.sigep.bsb.correios.com.br/">
<soap:Body>
<ns1:bloquearObjeto>
<numeroEtiqueta>DL746686536BR</numeroEtiqueta>
<idPlp>101001</idPlp>
<tipoBloqueio>FRAUDE_BLOQUEIO</tipoBloqueio>
<acao>DEVOLVIDO_AO_REMETENTE</acao>
<usuario>sigep</usuario>
<senha>n5f9t8</senha>
</ns1:bloquearObjeto>
</soap:Body>
</soap:Envelope>