pagseguro / pagseguro-modulo-prestashop

Módulo de Checkout Transparente para integração com PrestaShop 1.6, 1.7 e 8.0 - Oficial PagBank
Open Software License 3.0
50 stars 92 forks source link

Forma de pagamento temporariamente indisponível. #58

Closed xworx closed 5 years ago

xworx commented 5 years ago

Prezados,

Ao tentar processar o pagamento tenho o erro: Forma de pagamento temporariamente indisponível. Por favor, tente novamente ou escolha outra forma de pagamento. Habilitei boleto e cartão de crédito e em ambos o mesmo erro. Estou usando a versão 1.7.5.2 com o tema original e limpa, sem outros módulos. Verifiquei as orientações da documentação e também dos outros posts e está tudo aparentemente correto, verifiquei token, tabelas, CCC, etc.

O que pode ser?

Obrigado Captura de Tela 2019-09-29 às 19 47 25 Captura de Tela 2019-09-29 às 19 45 58 x

prestabr commented 5 years ago

Bom Dia xworx,

Obrigado pelos detalhes e por confirmar o funcionamento no Front.

Este problema costuma ocorrer quando o cliente (comprador) tem a conta com algum tipo de bloqueio lá no PagSeguro (cpf ou e-mail de cadastro). Neste caso é preciso orientar o cliente a criar outra conta na loja virtual (com outros dados de cadastro) ou solicitar que ele entre em contato com o PagSeguro para ele verificar as pendências na conta dele.

Nos seus testes, se você estiver tentando comprar com a mesma conta da integração (cpf ou e-mail de cadastro) não vai dar certo. O titular da conta não pode fazer pagamentos para ele mesmo via checkout transparente.

Verifique estes detalhes e tente fazer novos testes, ficamos à disposição.

Atenciosamente, Equipe PrestaBR

xworx commented 5 years ago

Boa tarde PrestaBR,

Agradeço a atenção e a rapidez na resposta.

Acredito que o problema era o campo UF que não estava passando ("shippingAddressState": null,) minha loja estava configurada com o formato de formulário de endereço padrão sem o estado (State:iso_code). Corrigido isso funcionou com o mesmo cadastro e-mail/cpf que antes apresentava o erro.

Obrigado!

prestabr commented 5 years ago

Olá xworx,

Ótimo, muito obrigado pelo feedback! Boas Vendas! :)

Atenciosamente, Equipe PrestaBR

johnnyvaz commented 5 years ago

Por favor, onde que habilita para o cadastro de Estado ser obrigatório no registro de novos clientes?

prestabr commented 5 years ago

Boa Tarde johnnyvaz1,

Na PrestaShop 1.6: Localização > Países

Screenshot at 2019-10-22 12-38-43

Screenshot at 2019-10-22 12-39-16 Marca a opção "contém estados" como sim.

Na PrestaShop 1.7: Internacional > Localizações (Tab Países)

Screenshot at 2019-10-22 12-42-03

Screenshot at 2019-10-22 12-42-32 Marca a opção "contém estados" como sim.

Atenciosamente, Equipe PrestaBR

luizricardofrancisco commented 4 years ago

olá o meu não da certo, já coloquei estado ja mudei de pessoa para tentar comprar e nada, não sei mais onde arrumar, pois o pagseguro fala que testou e esta tudo correto... mais eu nem ninguém consigui comprar!!

wesleifelix commented 4 years ago

Estou com um erro estranho 3 compras foram aprovadas dentro do pagseguro porém o módulo não criou as vendas dentro do presta, e olhando os log o pagseguro devolve a notificação e fica no log como erro ao atualizar banco de dados, pq a venda não existe no presta.

prestabr commented 4 years ago

Boa Tarde wesleifelix,

Obrigado por utilizar o módulo oficial da PagSeguro em sua loja! :)

Confere essa dica de como verificar os logs e localizar a resposta correta da API: #75 (comment) (Leia com calma...)

Se você está recebendo a resposta OK, e o pedido não está sendo criado, talvez exista alguma lentidão na hospedagem ou o produto esteja com algum problema de cadastro/configuração.

Confere também se o seu módulo está atualizado, se os arquivos foram sobreescritos corretamente e se as permissões das pastas e arquivos estão corretas e aplicadas de forma recursiva (755 pastas e 644 diretórios).

Atenciosamente, Equipe PrestaBR

wesleifelix commented 4 years ago

Obrigado por entrar em contato, não tem problemas com o servidor é uma questão estranha, foram 150 pedidos hoje e em 2 deles ele fez todas as requisições com o PagSeguro inclusive os Logs foram salvos, porém o módulo não transformou o carrinho em pedido, ficou como carrinho. A questão é não seria prudente transformar o carrinho em pedido antes de enviar para o PagSeguro ao invés de fazer o contrário.

prestabr commented 4 years ago

Olá luizricardofrancisco,

olá o meu não da certo, já coloquei estado ja mudei de pessoa para tentar comprar e nada, não sei mais onde arrumar, pois o pagseguro fala que testou e esta tudo correto... mais eu nem ninguém consigui comprar!!

Conseguiu resolver? O módulo está funcional em sua loja?

Como verificar se a sua integração está funcional:

PS 1.6: https://github.com/pagseguro/prestashop/tree/master/1.6.x/checkout-transparente/pagseguropro#6---debug-para-solu%C3%A7oes-de-problemas

PS 1.7: https://github.com/pagseguro/prestashop/tree/master/1.7.x/checkout-transparente/pagseguropro#6---debug-para-solu%C3%A7oes-de-problemas

Acessando a área de Logs do módulo:

PS 1.6: https://github.com/pagseguro/prestashop/tree/master/1.6.x/checkout-transparente/pagseguropro#7---registro-de-transa%C3%A7%C3%B5es--gerenciamento-de-logs

PS 1.7: https://github.com/pagseguro/prestashop/tree/master/1.7.x/checkout-transparente/pagseguropro#7---registro-de-transa%C3%A7%C3%B5es--gerenciamento-de-logs

Ao acessar, confere como verificar os logs e localizar a resposta da API: #75 (comment) (Leia com calma...)

Atenciosamente, Equipe PrestaBR

prestabr commented 4 years ago

Olá wesleifelix,

Obrigado por entrar em contato, não tem problemas com o servidor é uma questão estranha, foram 150 pedidos hoje e em 2 deles ele fez todas as requisições com o PagSeguro inclusive os Logs foram salvos, porém o módulo não transformou o carrinho em pedido, ficou como carrinho. A questão é não seria prudente transformar o carrinho em pedido antes de enviar para o PagSeguro ao invés de fazer o contrário.

O carrinho de compras só é transformado em pedido após a confirmação do processamento do lado da API, este é o padrão de funcionamento do módulo de checkout transparente.

Este problema é bastante incomum, aparentemente indica algo do lado da loja virtual ou hospedagem. Talvez possa ser até um travamento ou breve indisponibilidade temporária na API.

Nestes casos, sugerimos que você localize o carrinho do cliente na loja virtual e crie o pedido manualmente, tab "Clientes > Carrinhos de Compras". Dessa forma o cliente não precisa tentar comprar de novo e a loja consegue manter o controle do pedido normalmente.

Atenciosamente, Equipe PrestaBR

wesleifelix commented 4 years ago

OK, após essa resposta, prefiro alterar, o módulo para criar o pedido, mesmo perdendo o carrinho depois, pois com volumes alto de pedido, pode virar um grande problema. Ter 2 pedidos hoje que com este e problema e um 1 na sexta. Quando um cliente entra em contato é fácil solucionar mas ficar analisando todas as aprovações fica inviável.

prestabr commented 4 years ago

Olá wesleifelix,

Não recomendamos alterar o core do módulo, a menos que você saiba exatamente o que esteja fazendo. Ter 2 pedidos aleatórios, que parece ser a primeira vez que ocorre, em meio à 150/dia, parece ser uma contingência e modificar o módulo por conta disso não parece ser uma boa ideia.

Lembrando que o módulo é open-source e você tem total autonomia para adaptar e customizar como quiser.

Só complementando...:

O carrinho de compras só é transformado em pedido após a confirmação do processamento do lado da API, este é o padrão de funcionamento do módulo de checkout transparente.

Funciona dessa forma para que o cliente que paga via cartão de crédito possa tentar processar o pedido novamente caso o cartão não passe (saldo, dados incorretos, etc), sem perder o carrinho de compras, isso se chama processo de re-tentativa.

Desejamos Boas Vendas! :)

Atenciosamente, Equipe PrestaBR

xworx commented 4 years ago

Olá Pessoal,

Eu utilizo o módulo do Mercado Pago e quando ativo o PagSeguro, na etapa final, no topo da loja aparece a seguinte mensagem:

Notice: Undefined property: Address::$numend in /home/hostex/public_html/minhaloja.com.br/modules/pagseguropro/pagseguropro.php on line 282

Notice: Undefined property: Address::$compl in /home/hostex/public_html/minhaloja.com.br/modules/pagseguropro/pagseguropro.php on line 283

Se eu desativo o módulo do Mercado Pago essa mensagem não aparece, mas preciso usar os dois juntos.

Obrigado

prestabr commented 4 years ago

Boa Noite xworx,

Já vimos algumas lojas utilizando as duas integrações simultâneamente. Mas é muito difícil apontar a origem do problema em sua loja porque é preciso levar em consideração enventuais customizações de layout, core, override, além de módulos de terceiro.

De qualquer forma, recomendamos que você opte por apenas uma das integrações. Optando pelo PagSeguro você tem a certeza de contar com updates regulares, melhorias e aprimoramentos constantes, além de suporte técnico especializado, rápido e ágil de alto nível técnico.

Se você tiver um fluxo de venda de 50-100k ou mais por mês você pode negociar as taxas com o PagSeguro!

Desejamos Boas Vendas! :)

Atenciosamente, Equipe PrestaBR

xworx commented 4 years ago

Boa tarde,

O tema é padrão nessa loja, versão 1.6

Utilizava nessa loja somente o PagSeguro, no entanto ultimamente vários clientes não tiveram suas transações aprovadas, direcionadas para o Mercado Pago todos foram aprovados. Fiz um teste com meu cartão através do módulo e não foi aprovada, em seguida fiz a mesma transação digitada no app do PagSeguro e foi aprovada.

Por garantia deixaria as duas opções mas como aparece esse aviso no topo da loja vamos desativar o PagSeguro e utilizar somente o Mercado Pago.

Agradeço a atenção

prestabr commented 4 years ago

Boa Tarde xworx,

Boa tarde,

O tema é padrão nessa loja, versão 1.6

Utilizava nessa loja somente o PagSeguro, no entanto ultimamente vários clientes não tiveram suas transações aprovadas, direcionadas para o Mercado Pago todos foram aprovados. Fiz um teste com meu cartão através do módulo e não foi aprovada, em seguida fiz a mesma transação digitada no app do PagSeguro e foi aprovada.

Por garantia deixaria as duas opções mas como aparece esse aviso no topo da loja vamos desativar o PagSeguro e utilizar somente o Mercado Pago.

Agradeço a atenção

A questão do tema ser padrão ou não mencionamos apenas como referência, para que você consiga verificar se a sua integração está funcional na tela de checkout, livre de conflitos de JavaScript.

Verificando se está funcional:

PS 1.6: https://github.com/pagseguro/prestashop/tree/master/1.6.x/checkout-transparente/pagseguropro#6---debug-para-solu%C3%A7oes-de-problemas

PS 1.7: https://github.com/pagseguro/prestashop/tree/master/1.7.x/checkout-transparente/pagseguropro#6---debug-para-solu%C3%A7oes-de-problemas

Estando funcional significa que o módulo está pronto para processar os pedidos na tela de checkout. Caso ocorra alguma dificuldade com a mensagem "Forma de pagamento temporáriamente indisponível", é só conferir a área de Logs do módulo para identificar o porque a transação não foi processada.

Na maioria dos casos é porque tem algum dado ausente no cadastro do cliente, que não foi tratado anteriormente na tela de cadastro da loja. Você pode conferir os campos obrigatórios no cadastro do cliente acessando "Clientes > Endereços > Definir os campos obrigatórios para esta seção".

O ideal é ter estas informações como obrigatórias: cpf, endereço, numeral do endereço, bairro, cidade, estado, telefone ou celular. Lembrando que os pagamentos via cartão de crédito exigem o CPF vinculado, independete se é PF ou PJ.

Confere como verificar os logs e localizar a resposta da API, identificando o porque a transação não foi processada: https://github.com/pagseguro/prestashop/issues/75#issuecomment-567057058 (Leia com calma, leitura simples e rápida)

Estes detalhes devem resolver o seu problema de integração, permitindo tabalhar somente com a PagSeguro. Caso tenha alguma dificuldade é só postar os detalhes pra gente analisar pra você.

Só complementando...: Mantenha o módulo sempre atualizado na versão mais recente. Sempre que atualizar é importante lembrar de limpar o cache da loja.

Atenciosamente, Equipe PrestaBR