Breno G. de Oliveira > WWW-Correios-PrecoPrazo > WWW::Correios::PrecoPrazo

Download:
WWW-Correios-PrecoPrazo-0.31.tar.gz

Dependencies

Annotate this POD

View/Report Bugs
Module Version: 0.31   Source  

NAME ^

WWW::Correios::PrecoPrazo - Serviço de cálculo de preços e prazos de entrega de encomendas (Brazilian Postal shipping cost and delivery time)

SYNOPSIS ^

    use WWW::Correios::PrecoPrazo;

    my $correios = WWW::Correios::PrecoPrazo->new;

    my $res = $correios->query(
        codigo_servico => 41106,        # PAC sem contrato (tabela abaixo)
        cep_origem     => '20021-140',
        cep_destino    => '01310-200',

        # opcionais:
        peso              => 0.1,          # 100 gramas
        formato           => 'caixa',
        altura            => 2,
        largura           => 11,
        comprimento       => 16,
        mao_propria       => 'N',
        aviso_recebimento => 'N',
        valor_declarado   => 300,
    );

    if ($res->{Erro}) {
        warn $res->{MsgErro};
    }
    else {
        say "Entrega em $res->{PrazoEntrega} dias, por $res->{Valor}";
    }

DESCRIPTION ^

This module provides a way to query the Brazilian Postal Office (Correios) via WebService, regarding fees and estimated delivery times. Since the main target for this module is Brazilian developers, the documentation is provided in portuguese only. If you need help with this module please contact the author.

DESCRIÇÃO ^

Os Correios oferecem uma API destinada a qualquer um que deseje calcular, de forma personalizada, o preço e o prazo de entrega de uma encomenda.

Os preços apresentados são os mesmos praticados no balcão da agência, a menos que você possua contrato de SEDEX, e-SEDEX ou PAC. Nesses casos, você pode informar código da empresa e senha e solicitar consultas com contrato.

Este módulo visa ser extremamente leve a fim de não introduzir dependências extras em sua aplicação. Você pode adequá-lo ao seu ambiente e suas necessidades através da injeção de dependências (dependency injection) durante a criação do objeto.

A documentação completa sobre o webservice dos Correios pode ser encontrada em http://www.correios.com.br/webServices/PDF/SCPP_manual_implementacao_calculo_remoto_de_precos_e_prazos.pdf

MÉTODOS ^

new

new( %parametros )

Construtor do objeto. Aceita como parâmetros um hash ou hashref.

Caso exista uma chave user_agent, espera que o seu valor seja um objeto capaz de realizar um get no webservice dos Correios.

Quando não existir uma chave user_agent, cria um objeto LWP::UserAgent passando para o seu construtor as chaves restantes.

query()

query( %parametros )

Realiza a consulta de preço e prazo, consultando o WebService dos Correios.

Este método sempre retorna um hashref. O conteúdo dele depende dos parâmetros de entrada.

Por uma questão de eficiência, não consultamos o webservice dos Correios caso um dos parâmetros obrigatórios (a saber: cep_origem, cep_destino e codigo_servico) não seja informado.

Este módulo não valida os parâmetros quanto à sua estrutura ou conteúdo, delegando esta tarefa ao webservice dos Correios.

O valor retornado é um hash ref com a resposta dos correios transformada em pares de chave/valor. Uma chave extra, 'response', contém o objeto de resposta HTTP completo.

Recebe os seguintes parâmetros:

CONFIGURAÇÃO E VARIÁVEIS DE AMBIENTE ^

WWW::Correios::PrecoPrazo não precisa de qualquer arquivo de configuraçào ou variável de ambiente.

BUGS E LIMITAÇÕES ^

Por favor entre em contato sobre qualquer bug ou pedido de feature em: https://github.com/garu/WWW-Correios-PrecoPrazo/issues.

AGRADECIMENTOS ^

Este módulo não existiria sem o serviço gratuito de preços e prazos dos Correios.

http://www.correios.com.br/webservices/

AUTORES ^

Breno G. de Oliveira <garu@cpan.org> Blabos de Blebe <blabos@cpan.org>

LICENCE AND COPYRIGHT ^

Copyright (c) 2011-2014, Breno G. de Oliveira, Blabos de Blebe. All rights reserved.

This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See perlartistic.

DISCLAIMER OF WARRANTY ^

BECAUSE THIS SOFTWARE IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE SOFTWARE, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE SOFTWARE "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE SOFTWARE IS WITH YOU. SHOULD THE SOFTWARE PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR, OR CORRECTION.

IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE SOFTWARE AS PERMITTED BY THE ABOVE LICENCE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE SOFTWARE (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE SOFTWARE TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

syntax highlighting: