Problemas no Módulo PagSeguro Magento 1.7

Problemas no Módulo PagSeguro Magento 1.7

Todo  o texto escrito aqui é para o Magento versão 1.7.0.2, deixo bem claro a versão pois alguns caminhos no Magento podem variar. Muitas dicas sobre o Magento não deixam claro este ponto e por isso você acaba enfrentando sérios problemas na sua loja.

instalacao-pagseguro

Este pequeno artigo é sobre o módulo de pagamentos PagSeguro e todos os problemas envolvidos com o mesmo. Apesar de o Magento ser a plataforma que mais utiliza o PagSeguro o mesmo não disponibiliza em seu site um módulo específico para esta plataforma de comércio eletrônico. Como resultado, será necessário utilizar algum módulo de terceiros. O que poderá ocasionar alguma dor de cabeça.

O primeiro módulo que utilizei para realizar a integração com o PagSeguro foi a solução gratuita da iPagare / Checkout Pagseguro. Depois de instalado (a moda antiga) o módulo simplesmente não funcionou! O site do módulo, tutorial e tudo mais realmente foram bem feitos mas na prática este módulo não é tão bom como é divulgado. E pelo que eu pude notar nos arquivos do módulo que baixei, parece que tem um caminhão de outras coisas além do módulo gratuito, por isso é bom ficar esperto com esta solução.

Então, resolvi utilizar algum módulo do PagSeguro através do Magento Connect que realmente é uma boa prática, pois toda a gerência do módulo inclusive instalação e desinstalação podem ser feitos através do admin. O módulo que escolhi foi o PagSeguro by Os Studios simplesmente porque oferece suporte ao Magento 1.7. O módulo foi instalado sem maiores problemas através do Magento Connect. No entanto ao retornar para o admin principal do Magento a surpresa nada agradável o painel ficou bloqueado com a seguinte mensagem de erro!!

Fatal error: Class 'OsStudios_PagSeguro_Helper_Data' not found in /home/xxxxxxxxxxx/yyyyy/app/Mage.php on line 546

Este tipo de problema no Magento sempre dá um susto inicial, mas o negócio é manter a calma. Bom, procurando pelo erro no Google, somente em um lugar encontrei uma "possível solução" que... foi no site do próprio desenvolvedor! Em outros lugares simplesmente não encontrei! Isso é algo ruim. Como deu para reparar coloquei "possível solução" entre aspas, pois na realidade não há uma solução clara fornecida pelo programador, somente um comentário sobre o erro que colo abaixo:

ErroFatal error: Class ‘OsStudios_PagSeguro_Helper_Data’ not found in /home/luciorod/public_html/app/Mage.php on line 546; Possível causa: Para ambos os erros, muito provavelmente esta loja possui mais de um módulo para PagSeguro instalado, ou seja, pode ser o módulo do Bruno Assarisse ou o do próprio PagSeguro. O problema aqui é que ambos os módulos utilizam como seu identificador a palavra ‘pagseguro’ e, claro, confunde o Magento no momento em que vai procurar certo arquivo. Para você entender melhor o Magento procurou um arquivo que deveria estar em App/Code/Community/OsStudios/PagSeguro/Helper/Data.php, porém o módulo que ele está levando em consideração quando o helper é chamado com o nickname ‘pagseguro’ (Mage::helper(‘pagseguro’)) pode não ser o desenvolvido por mim, com o namespace ‘OsStudios’. Isso com certeza causará um erro.

Os comentários no site do desenvolvedor de problemas similares no módulo simplesmente não foram respondidos!! Seguindo a dica acima da "possível solução" o resultado é o mesmo, o erro continuou aparecendo! Mesmo eu indo no FTP deletando absolutamente tudo do módulo anterior do PagSeguro, limpando cache, etc o módulo continuou não funcionando e com a mesma mensagem de erro!

Bom, na situação acima desativar o módulo pelo admin é impossível! O jeito foi realizar o procedimento manualmente. O primeiro passo, acessar o FTP e ir na pasta /www/app/etc/modules e procurar e baixar o arquivo OsStudios_PagSeguro.xml o mesmo deve ser editado e na diretiva "active" o "true" deve ser trocado para "false". Feito isso o arquivo deve ser enviado novamente para FTP. O segundo passo é limpar manualmente o cache no seguinte caminho /www/var/cache, simplesmente selecione tudo e apague. Feito os dois passos acima o admin da sua loja estará em funcionamento novamente! O que de fato já é algo bom!! Agora o próximo passo é a instalação de um módulo descente do PagSeguro no Magento.

Resolvi utilizar o modulo mais baixado do pagseguro que é o Bruno Assarisse - PagSeguro. depois de tudo instalado funcionou praticamente de primeira, somente apresentou um erro ao tentar acessar as formas de pagamento:

Fatal error: Call to a member function toOptionArray() on a non-object in

Este erro para solucionar foi simples, eu precisei ir em compilação  para executar o compilador do magento novamente e depois limpar o cache, pronto! Feito isso o erro reportado acima some, e todas as configurações do PagSeguro podem ser acessadas!

  • Alex

    Como você conseguiu instalar o módulo do Bruno Assarisse – PagSeguro no magento 1.7.0.2 se ele só roda até 1.4? Eu tentei instalar e não consegui, o magento connect não deixou.

    Outra questão: Quando você instalaou o outro módulo PagSeguro by Os Studios e viu o erro, por que não deu um voltar no seu navegador até chegar no magento connect e fazer o uninstall por lá? Você não precisava fazer todo aquele malabarísmo citado em seu texto, inclusive este é um dos motivos pelo qual o magento connect roda como um sistema a parte.

    Ainda estou tentando descobrir um módulo realmente bom de pagseguro que não apresente bug em algum momento.

    Neste momento, estou tentando usar o módulo disponibilizado pelo próprio pagseguro e está dando erro na finalização da compra.

    Magento é complicado……mesmo sendo bom.

  • mediabrazilhost

    Eu desativei umas opções do magento connect para evitar de checar a versão se é beta alpha etc.

    Com relação ao módulo do PagSeguro by Os Studios ele trancou tudo até o magento connect, tentei acessar por um link direito e não consegui a melhor opção foi desativar manualmente.

    Amigo um módulo bom que apresente 100% de funcionamento do tipo plug-and-play acho pouco provável que você consiga, simplesmente pelo fato de que até se você mudar seu tema pode impactar no funcionamento do módulo.

    Não sei qual o problema que você está tendo com o módulo do pagseguro na finalização da compra. No entanto, se for o problema de não aparecer o botão eu tenho um artigo aqui explicando como resolver isso, pois eu tive o mesmo problema.

    O magento é complicado por isso veja o tamanho de sua loja. Caso a loja for pequena sugiro utilizar soluções mais simples como por exemplo o plugin da loja virtual construído em cima da plataforma wordpress.

  • Diego

    Carlos, eu instalo o modulo mas ele não aparece no meu painel. Acho que o problema que vc falou em seu comentário pode ser o mesmo que eu tenho. Onde posso ler sobre esse problema?
    Obrigado!

  • mediabrazilhost

    Depois da instalação do módulo, você rodou o “processo de compilação” novamente? Caso você tiver o processo de compilação ativado um novo módulo aparecerá no painel somente depois de rodar a compilação. Também sugiro limpar todos os cache e por último deslogar e logar novamente no backend do magento.

  • skullptor

    cara, graças a você, após 3 dias inteiros me matando com esse módulo do OS Studios e o oficial do Pagseguro, resolvi o problema.
    Eu não tinha tentado o do Bruno por estar muito desatualizado e por incrível que pareça, é o único bem feito até agora.
    abraço

  • Gustavo Fernandez

    Amigo..
    Eu Instalei o modulo do Bruno via FTP, e aparentemente tudo funcionando, porem quando eu finalizo uma compra que ele direciona para loja/pagseguro/pay/redirect ele cai na minha pagina de erro 404 como se tivesse essa pagina .. ai ele nao vai para o pagseguro =(
    Pode me ajudar quanto a isso?

  • everton

    Olá Gustavo, estou com o mesmo problema na versão 1.7.0.2. voce conseguiu resolver?

  • Cristiano

    Muito obrigado cara… realmente já havia visto no site do desenvolvedor a “explicação” dele para não funcionar. Ele só se esqueceu de dizer como faz para voltar a funcionar pois para isso ocorrer tem-se que deletar na mão o seu OSmódulo… lamentável, mas na realidade vim aqui para deixar meus agradecimentos e parabenizá-lo por ter tidoo trabalho de relatar para a gente como se resolve o problema. Queria acrescentar que a mensagem recebida por mim foi diferente e mesmo assim o procedimento descrito aqui resolveu da mesma forma, segue a mensagem que recebia:
    “Fatal error: Class ‘PagSeguro_Pagseguro_Helper_Data’ not found in /home/recriarejoias/www/app/Mage.php on line 546”

    Mair uma vez, obrigado.
    Cristiano

  • Ruy Acquaviva

    Muito obrigado pela dica. Ajudou-me muito. Encontrei o mesmo erro ao instalar o módulo toogas_featured_popup_free_version versão 1.6 no magento versão 1.7. Muito obrigado mesmo.

  • Pablo

    eu tambem! Obrigado!

  • Erro de análise : erro de sintaxe, inesperado T_STRING, esperando T_CONSTANT_ENCAPSED_STRING ou ‘(‘ em /home/pajeuvia/public_html/loja/app/code/local/PagSeguro/PagSeguro/Helper/Data.php na linha 20, O QUE FAZER AMIGOS

  • Família Mazalli

    Nossa muuuito obrigada! Vc me ajudou muito! Essa dica serve para quando o erro ocorre sem aparecer nenhuma mensagem e a tela fica branca, simplesmente não abre a tela de opçoes de pagamento. Valeu mesmo!!

  • Marcos Martins

    Estou tentando utilizar o módulo do próprio PagSeguro, configurei tudo mas ao clicar em Finalizar Compra nada acontece, nossa que dificuldade para conseguir um módulo decente.