以前,我们的购物车完全位于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="&quot;Item 1&quot;" />
    <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="&quot;Item 1&quot;" />
    <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上的这篇文章。如果执行这些步骤,它将有助于您解决问题。

10-07 12:14
查看更多