我为我的网站使用了 PayPal IPN。我的网站是多货币和多语言的。我已将 PayPal IPN 与沙箱集成用于测试目的,以及当我使用美元货币付款时我所面临的情况,IPN 响应已验证且状态也为 payment_status=Completed。 8个 验证 0
但是当我使用欧元货币登录并使用 IPN 付款时,响应无效但状态为 payment_status=Completed。
7 无效的 0
我不明白这里的问题是什么,你能帮帮我吗?
如果有人知道这个解决方案并回复我,那真的很有帮助。谢谢!!!
最佳答案
我想这个问题是因为在您的监听器代码中的某处您期望 $valid_currency 以“USD”形式返回,要解决此问题,请创建一个包含您接受付款的所有有效货币的数组,然后检查mc_currency 在通过 IPN 传递时位于该数组中。
$valid_currency = array("USD", "GBP", "EUR");
if(!in_array($_POST['mc_currency'], $valid_currency) {
//Not a valid currency according to your list
} else {
//Is a valid currency according to your list
}
关于paypal - 已验证的 PayPal IPN 响应仅以美元货币表示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13138289/