以前,我们的购物车完全位于PayPal上,我们对每个“添加到购物车”按钮使用了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历史记录以查看结果?您是否检查过Web服务器日志?
请参阅how to test PayPal IPN上的这篇文章。如果执行这些步骤,它将有助于您解决问题。