Como negar o pagamento via PayPal IPN?
-
26-09-2019 - |
Pergunta
Preciso criar botões dinâmicos de 'Pagar agora' em meu site, e o PayPal diz que a maneira de fazer isso é por meio de um FORMULÁRIO HTML com variáveis predefinidas para preço, moeda e item da compra.Eu uso o PayPal IPN para me notificar quando um pagamento for concluído.
Porém, o que impede alguém de modificar os parâmetros de consulta do botão Pagar agora para alterar o preço?Algumas pessoas me disseram para redirecionar o botão por meio de um arquivo PHP que direciona você para uma página de pagamento do PayPal com os parâmetros definidos, mas o preço pode ser facilmente manipulado na barra de endereços do navegador da Web.A minha pergunta é: como posso recusar um pagamento se as informações que recebo do serviço IPN do PayPal são inválidas (se o preço não corresponder aos nossos registos)?
Estou bastante confuso e não consegui encontrar nenhuma documentação sobre o que estou procurando.Esperançosamente, vocês podem ajudar.
Obrigado!
Solução
Acho que você deseja ativar pagamentos de sites criptografados.Eu não fiz isso antes, mas você pode ler mais aqui: https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/e_howto_html_encryptedwebpayments
Outras dicas
No seu listner IPN, verifique todas as variáveis que você enviou para o paypal.Na resposta do PayPal, todas as variáveis relacionadas à transação serão enviadas de volta para você (ou seja, valor, e-mail do destinatário, status do pagamento, etc.).
Então, o que você pode fazer é verificar todos os valores dessas variáveis com os valores esperados e realizar a tarefa apropriada.
Veja isso para mais detalhes .