PayPal 的 IPN 不会因购物车上传而触发
PayPal's IPN does not fire for cart upload
以前,我们的购物车完全位于 PayPal 上,我们对每个 "Add to cart" 按钮使用 add
方法,每次购买后我们的 IPN 脚本都会正确触发。现在我们添加了另一个支付选项,所以我们在我们的网站上实现了购物车。这是将购物车内容传递给 PayPal 的表单:
<form action="https://www.paypal.com/cgi-bin/webscr" method="POST" id="pp_cart_form">
<input type="hidden" name="business" value="email@domain.com" />
<input type="hidden" name="cmd" value="_cart" />
<input type="hidden" name="upload" value="1" />
<input type="hidden" name="return" value="Return URL here - works fine" />
<input type="hidden" name="no_shipping" value="1" />
<input type="hidden" name="no_note" value="1" />
<input type="hidden" name="rm" value="2" />
<input type="hidden" name="custom" value="upload_cart" />
<input type="hidden" name="invoice" value="Invoice ID" />
<input type="hidden" name="notify_url" value="IPN URL - never gets fired" />
<input type="hidden" name="item_name_1" value=""Item 1"" />
<input type="hidden" name="item_number_1" value="443" />
<input type="hidden" name="amount_1" value="1" />
<input type="hidden" name="item_name_2" value=""Item 1"" />
<input type="hidden" name="item_number_2" value="444" />
<input type="hidden" name="amount_2" value="1" />
</form>
正在通过 Javascript 提交表单。
此更改后,IPN 处理程序在购买后永远不会被触发,我们必须手动添加订单。
可能是什么问题? notify_url
变量 100% 正确。
你做了什么来确认它没有被触发?您是否检查了 PayPal IPN 历史记录以查看结果?您检查过网络服务器日志了吗?
看看 how to test PayPal IPN 上的这篇文章。如果您按照这些步骤操作,它应该可以帮助您解决问题。
以前,我们的购物车完全位于 PayPal 上,我们对每个 "Add to cart" 按钮使用 add
方法,每次购买后我们的 IPN 脚本都会正确触发。现在我们添加了另一个支付选项,所以我们在我们的网站上实现了购物车。这是将购物车内容传递给 PayPal 的表单:
<form action="https://www.paypal.com/cgi-bin/webscr" method="POST" id="pp_cart_form">
<input type="hidden" name="business" value="email@domain.com" />
<input type="hidden" name="cmd" value="_cart" />
<input type="hidden" name="upload" value="1" />
<input type="hidden" name="return" value="Return URL here - works fine" />
<input type="hidden" name="no_shipping" value="1" />
<input type="hidden" name="no_note" value="1" />
<input type="hidden" name="rm" value="2" />
<input type="hidden" name="custom" value="upload_cart" />
<input type="hidden" name="invoice" value="Invoice ID" />
<input type="hidden" name="notify_url" value="IPN URL - never gets fired" />
<input type="hidden" name="item_name_1" value=""Item 1"" />
<input type="hidden" name="item_number_1" value="443" />
<input type="hidden" name="amount_1" value="1" />
<input type="hidden" name="item_name_2" value=""Item 1"" />
<input type="hidden" name="item_number_2" value="444" />
<input type="hidden" name="amount_2" value="1" />
</form>
正在通过 Javascript 提交表单。
此更改后,IPN 处理程序在购买后永远不会被触发,我们必须手动添加订单。
可能是什么问题? notify_url
变量 100% 正确。
你做了什么来确认它没有被触发?您是否检查了 PayPal IPN 历史记录以查看结果?您检查过网络服务器日志了吗?
看看 how to test PayPal IPN 上的这篇文章。如果您按照这些步骤操作,它应该可以帮助您解决问题。