php - paypal - notify_url 在两个个人账户之间转账

标签 php paypal paypal-ipn

使用 phpprobid 在拍卖网站上工作软件并达到集成 Paypal 付款的地步,供买家向卖家付款。表格就像下面的代码,我可以看到钱从买家转移到卖家,但 notify_url 回调没有运行。 notify_url(用于将项目标记为已付费和其他数据库操作)是可访问的,而不是在 localhost 上。 notify_url 是在两个个人帐户之间调用的吗?所有文档仅谈论个人对企业的交易;这是否意味着允许用户销售商品并通过 paypal 接受付款他们需要一个企业帐户?

此过程在沙盒中运行,因此我知道 notify_url 处的脚本没有错误,但您需要一个模拟的企业帐户,所以这不是问题。我已经向通知脚本添加了一些 mail() 调用,所以我可以看到它实际上并没有运行。传输工作正常,return url 出现在后面,所以也可以工作。

  <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...如果 paypal 交易是在两个个人账户之间进行的,notify_url 是否被调用?

最佳答案

IPN 可用于任何类型的帐户。您是否绝对确定它实际上没有被发布,但是您的脚本有问题所以您看不到结果?

您需要通过检查您的 PayPal IPN 历史记录和网络服务器日志来确认这一点。

如果 PayPal IPN 历史记录没有显示任何内容,那么您就知道根本没有发送 IPN。如果它显示 200 OK,您就知道它已被发送,并且您的服务器正在返回一个成功的响应,表明脚本已完成且没有错误。如果您看到 200 OK 以外的任何内容,您就知道您的脚本发生了错误。您可以检查您的网络服务器日志以找到确切的错误。

您还可以为自己构建一个简单的测试表单,其中包含与您希望从 PayPal 获得的内容相匹配的隐藏变量。将此表单的操作设置为您的 IPN 监听器并直接 POST。这样您就可以在屏幕上看到结果,这有助于解决您的问题。

请记住,以这种方式进行测试时,数据并非来自 PayPal,因此验证将失败。出于测试目的,您可以调整代码以相应地处理此问题。

关于php - paypal - notify_url 在两个个人账户之间转账,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14427029/

相关文章:

Paypal IPN 货币和响应

php - 使用自定义类名访问静态变量

php - 照片在不同浏览器中旋转 90 度

php - PayPal Express Checkout 始终显示用户 "This transaction has expired."页面,但没有 API 错误

php - Paypal PHP Rest API用于信用卡支付,如何处理错误以显示给用户

PHP/CodeIgniter PayPal IPN 无效验证

javascript - 当用户单击一个选项时,用勾号或 html 中的任何内容标记它

php - 我可以在 PHP/MySQL 数据库中存储单个变量(不在表中)吗

ios - Paypal 集成 swift iOS

php - 循环支付 IPN 请求 rp_invoice_id 字段