使用phpprobid软件在拍卖网站上工作,并达到整合贝宝付款的买家支付卖家的项目。表单类似于下面的代码,我可以看到资金正在从买方转移到卖方,但notify_url回调并未运行。不能在localhost上访问notify_url (用于将项目标记为已支付和其他数据库操作)。notify_url是在两个个人账户之间调用的吗?所有的文档都只讨论个人对企业的交易;这是否意味着允许用户通过paypal销售商品和接受付款,因为他们需要一个企业账户?
这个过程在沙箱中工作,所以我知道notify_url的脚本中没有错误,但在那里您需要一个模拟的业务帐户,所以这不是问题。我已经在notify脚本中添加了一些mail()调用,所以我可以看到它实际上并没有运行。传输起作用了,return url出现在so之后,也起作用了。
<form action="https://www.paypal.com/cgi-bin/webscr/" method="post" id="form_paypal">
<input name="submit" type="submit">
<input type="hidden" name="cmd" value="_xclick">
<input type="hidden" name="bn" value="wa_dw_2.0.4">
<input type="hidden" name="business" value="Business Name">
<input type="hidden" name="receiver_email" value="paypal@SELLERSBUSINESS.com">
<input type="hidden" name="amount" value="SOME_AMOUNT">
<input type="hidden" name="currency_code" value="A_VALID_CURR_CODE">
<input type="hidden" name="return" value="OURSITE/RETURN_URL">
<input type="hidden" name="cancel_return" value="OURSITE/FAILED_URL">
<input type="hidden" name="item_name" value="DESCRIPTION_OF_ITEM">
<input type="hidden" name="custom" value="VALUE_TO_BE_SPLIT_FOR_SPECIFIC_DATA">
<input type="hidden" name="notify_url" value="OURSITE/CALLBACK_SCRIPT_URL">
</form>tl;dr...如果贝宝交易是在两个个人账户之间进行的,notify_url会被调用吗?
发布于 2013-01-21 08:40:11
IPN可用于任何类型的帐户。你绝对确定它实际上没有得到POSTed,但是你的脚本有一个问题,所以你看不到结果?
您需要通过检查PayPal IPN历史记录和web服务器日志来确认这一点。
如果PayPal IPN历史记录没有显示任何内容,那么您就知道IPN根本不会被发送。如果它显示200OK,您就知道它正在被发送,并且您的服务器将返回一个成功的响应,脚本完成了该响应,没有出现错误。如果您看到的是200OK之外的任何内容,您就知道您的脚本发生了错误。您可以检查您的web服务器日志以找到确切的错误。
您还可以构建一个简单的测试表单,其中包含与您期望从PayPal获得的内容相匹配的隐藏变量。将此表单的操作设置为您的IPN侦听器,并直接发布它。这样你就可以在屏幕上看到结果,这可以帮助你解决问题。
请记住,当以这种方式测试数据时,数据不是来自PayPal,因此,验证将失败。出于测试目的,您可以相应地调整代码以处理此问题。
https://stackoverflow.com/questions/14427029
复制相似问题