Paypal IPN总是在沙箱上返回"payment_status:Pending"?

mar*_*arc 58 php paypal-sandbox paypal-ipn

我正在尝试在我的网站上实施PayPal.

我使用这个类:http://www.micahcarrick.com/php-paypal-ipn-integration-class.html

现在我正在使用PayPal沙箱进行测试.

这是问题所在:

  1. 用户付款 - 好的
  2. 用户成功返回我的网站 - 好的
  3. 几秒钟后,PayPal使用IPN呼叫我的网站 - 好的
  4. 我的班级成功验证了传入的IPN数据.
  5. PayPal返回"payment_status:待定"

我不知道为什么PayPal IPN回拨支付状态为"待定"?

有谁知道我做错了什么?

小智 48

当您登录测试业务帐户时,请手动导航至:

https://www.sandbox.paypal.com/ca/cgi-bin/?cmd=_profile-pref&source=acct_setup&fli=true

您通常可以通过"我的业务设置"到达那里,但目前它会重定向到PayPal直播(尽管在沙箱中).

进入该页面后,将"以我未持有的货币发送给我的阻止付款"更改为"否,接受并将其转换为......"

此外,请不要忘记使用PayPal Sandbox前端和API的"测试电子邮件"部分确认您的企业帐户.


h2o*_*ooo 16

我的问题是我的沙盒商家帐户是作为英国用户(和英镑作为货币).当我试图通过丹麦克朗(DKK)的订单时,它会告诉我在商家视图中购买的是"无人认领".一旦DKK中的一个订单被接受,并且我选择以DKK创建新货币,IPN就会向我发送所有"payment_status = completed"消息.


Jad*_*eye 10

处理完这个问题后,PayPal会改变UI,

以下是PayPal Merchant技术支持的确切说明:

感谢您与Merchant技术支持联系.

请尝试按照以下说明关闭沙盒帐户的付款审核功能:

  • 转到PayPal开发者网站
  • 登录您的开发者帐户
  • 单击应用程序
  • 单击沙盒帐户
  • 单击要关闭"付款审核"选项的电子邮件地址,然后在展开后单击"配置文件"
  • 单击设置
  • 并选择关闭以进行付款审核.
  • 单击关闭

!确保您在PayPal SandBox商户帐户上执行此操作!

这就是它的样子:

在此输入图像描述


mou*_*med 9

您可以通过以下说明解决它.

  1. 登录您的Developer Central.

  2. 单击左侧的"测试帐户"选项卡.您应该已经创建了这些测试帐户以便在Sandbox上进行测试.

  3. 找到"付款审核"列.

  4. 找到您正在使用的沙盒帐户,然后单击"付款审核"列中的"已启用".

  5. 这应该更改为"已禁用",现在您的余额和信用卡资金将立即完成.

  • 我的问题来源在以下答案中描述:当卖家和订单表格具有不同的货币时,它不起作用.一个愚蠢的PayPal错误 (2认同)

Man*_*pka 7

两个可能的原因:

1.卖家账户可以选择接受或拒绝付款

在这种情况下,您需要以卖家身份登录并接受付款,您将获得另一个IPN,其中payment_status =已完成

脚步:

  1. 登录到开发人员中心
  2. 按左侧的"测试帐户"
  3. 选择卖家帐户,然后按底部的"输入沙箱测试站点"
  4. 您应该看到卖家信息中心,其中包含接受或拒绝任何付款的选项(您可能需要使用卖家测试帐户凭据在此步骤重新登录)

2.启用付款审核

解:

  1. 登录您的Developer Central.
  2. 单击左侧的"测试帐户"选项卡.您应该已经创建了这些测试帐户以便在Sandbox上进行测试.
  3. 找到"付款审核"列.
  4. 找到您正在使用的沙盒帐户,然后单击"付款审核"列中的"已启用".

这应该更改为"已禁用",现在您的余额和信用卡资金将立即完成.


Kai*_*ack 6

  1. 我没有改变 Allow payments sent to me in a currency I do not hold,以Yes所有用户帐户在沙箱中,但它仍然没有工作.

  2. 我还尝试以paypal形式创建相同的货币,并在此处创建沙盒用户帐户.将新货币设为主要货币.将货币转换为新货币.仍然没有成功.

  3. 然后我注意到Wes Hanney的答案的最后一句:"使用PayPal Sandbox前端确认您的企业帐户".尝试这个也不起作用.

  4. MGPalmer在他的回答中建议创建一个德国商家帐户.也没用.


太麻烦了!

一个小时后,我接近将PC扔出窗外,我才意识到我忘记了一件事.将paypal表单中的真实收件人电子邮件地址更改为沙盒商家电子邮件地址.这终于为我解决了.


PS:也许是一个愚蠢的初学者的错误?但对于遇到同样情况的其他人可能会有所帮助.


Emi*_*oni 5

我遇到了同样的问题,这里的建议都没有奏效。然后我意识到问题是我试图从沙箱帐户向真实帐户付款。因此,例如,如果您注册的企业帐户是:email@example.com则所有沙箱付款都应按付款方式进行,email-facilitator@example.com否则它们将以PENDING模式结束。