Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Paypal 如何明确拒绝IPN请求_Paypal_Paypal Ipn - Fatal编程技术网

Paypal 如何明确拒绝IPN请求

Paypal 如何明确拒绝IPN请求,paypal,paypal-ipn,Paypal,Paypal Ipn,在中,它说的是“检查电子邮件地址以确保这不是欺骗”。但我不知道在这种情况下该怎么办,也不知道该如何告诉贝宝我想拒绝交易。我寄回的是400而不是200吗?或者以其他方式更改POST数据 还是我只是忽略了这个信息?(问题是PayPal将继续重新尝试,这对我们来说是浪费带宽,但也意味着用户需要更长的时间才能听到支付失败的消息。) 背景:我意识到将其发送回PayPal并获得验证的消息可以处理大多数安全问题。但是在我的例子中,custom字段中有一些唯一的ID信息。如果没有,或者没有根据DB进行验证,我想

在中,它说的是“检查电子邮件地址以确保这不是欺骗”。但我不知道在这种情况下该怎么办,也不知道该如何告诉贝宝我想拒绝交易。我寄回的是400而不是200吗?或者以其他方式更改POST数据

还是我只是忽略了这个信息?(问题是PayPal将继续重新尝试,这对我们来说是浪费带宽,但也意味着用户需要更长的时间才能听到支付失败的消息。)


背景:我意识到将其发送回PayPal并获得
验证的
消息可以处理大多数安全问题。但是在我的例子中,
custom
字段中有一些唯一的ID信息。如果没有,或者没有根据DB进行验证,我想拒绝付款。我希望我的客户看到它失败了,所以他们知道去使用一个新的表单。另一种选择是接受付款,然后必须涉及一个手动过程,试图确定付款来源,然后可能进行手动退款。(这样做的其他原因可能是,在他们看到网站上的产品并单击“购买”的瞬间,库存已经售罄。)

简单地发回
200
代码,让Paypal知道你收到了IPN,否则Paypal将尝试重复发送IPN响应。

IPN是即时付款通知。付款后,贝宝会通知您付款结果。检查连接是否已验证,然后检查付款是否已完成,并在数据库中标记结果


如果你告诉PayPal购物车中的ipn地址,PayPal会向你发送通知。你不能对paypal说:“是的,请给我发送一个通知”,当收到通知时说“你为什么发送这个?”如果你把ipn放在购物车表单中,你可以提供一个ipn url,代码是200,而不是404。或者删除购物车表单中的ipn值

付款没有失败。PayPal通知您付款成功:而不是询问您是否愿意接受付款。你不能在这个阶段拒绝它。

我同意EJP。IPN只是通知您付款已经发生。拒绝IPN只会导致PayPal重新发送它。如果你想对流程进行更多控制(并使IPN变得无关紧要),那么就切换到Payments Pro,在那里你可以控制付款的方式和时间。这是一个很好的问题,也是一个可取的功能。这不是问题,如果某个黑客在客户端更改了购物车的价格,然后以0的价格向paypal发送一个错误的付款请求,然后进行了一次非法销售,他无法通知paypal这个IPN出了问题。