Paypal Silent Post 在测试帐户上失败

Posted

技术标签:

【中文标题】Paypal Silent Post 在测试帐户上失败【英文标题】:Paypal Silent Post failing on test account 【发布时间】:2015-01-28 13:34:04 【问题描述】:

我正在使用我创建的仅测试 payflow 帐户的 payflow api 进行一些开发。 (交易过程模式=测试)

我的程序使用托管结帐页面的安全令牌。 已启用 SilentPost。

使用测试信用卡#4111111111111111。

但是在我提交付款后,页面被重定向到“静默发送失败时返回URL”中指定的URL(我认为这是交易失败)。

我使用贝宝管理器搜索交易(PNREF# 返回到我的代码)。有 2 笔交易。

第一笔交易 -> 结果代码 = 0,响应消息 = 已批准,交易类型 = 销售

第二笔交易 -> Reuslt 代码 = 0,响应消息 = 已批准,交易类型 = 无效

那么为什么交易实际上失败了?如果是这样,为什么? (或者我怎样才能找出原因)

【问题讨论】:

【参考方案1】:

您是否在托管结帐页面设置中选中了“当我的服务器无法接收静默帖子发送的数据时使交易无效”复选框?如果是,则表明静默帖子无法成功发送到静默帖子 URL。如果在收到静默后消息时出现错误,则交易将作废,即使交易最初已获得批准。您需要检查位于静默帖子 URL 中的静默帖子接收器/处理器,以查看其是否正常工作。参考:https://developer.paypal.com/docs/classic/payflow/integration-guide/#silent-posts

顺便说一句,您可以取消选中“无效交易”复选框,即使静默发布失败也允许交易通过

【讨论】:

在我的测试代码中,我得到了 2 个用于静默帖子的 URL。 (1) /sale/pay_confirm 用于静默帖子 (2) /sale/pay_error 用于静默帖子失败。两个 URL 目前都在做同样的事情——打印一些日志并显示一个简单的页面。两个 URL 都可以接受任意数量的参数。两个 URL 都可以访问(用浏览器测试)。我什至尝试在 paypal 管理器中交换 URL,其中 /sale/pay_confirm 被指定为静默发布失败,并被调用为无效交易。所以我很确定 /sale/pay_confirm 正在工作并且可以访问。知道为什么沉默的帖子会失败吗? 我得到了同样的错误标记;你找到解决办法了吗? 你好马克,我也有同样的问题

以上是关于Paypal Silent Post 在测试帐户上失败的主要内容,如果未能解决你的问题,请参考以下文章

如何在 PayPal 沙盒网站上测试“没有 PayPal 帐户的结帐”?

无法通过使用 paypal 沙箱创建的个人测试 paypal 帐户测试付款(在 paypal.com 公共站点上似乎也无法识别电子邮件)

无法使用 Paypal 测试帐户付款

Paypal Developer Beta:测试交易未在 Sandbox Business 帐户中列出

Paypal 沙盒订阅按钮 - 测试没有 Paypal 帐户的买家?

Paypal IPN,缺少 POST 数据