paypal - 链式支付无法完成

标签 paypal paypal-adaptive-payments

我想我只是在这里遗漏了一些明显的东西,但我似乎无法完成链式支付(使用沙盒中的 PHP SDK)。我能够获得成功的响应,当我将用户重定向到 PayPal 时,交易详细信息显示正常,但是当用户尝试完成付款时,他们会遇到可怕的错误:

您的付款无法完成。请返回参与网站并重试。

令人沮丧的是,我已经转储了正在发送的请求数据,并将其与 the example given in the documentation 中的数据进行了比较。并调整我的要求,直到它们实际上完全相同,但仍然没有骰子。我也没有在任何帐户上看到任何表明付款已尝试、待处理或失败的信息。

这是正在发送的内容:

requestEnvelope.errorLanguage=en_US
&clientDetails.ipAddress=127.0.0.1
&clientDetails.applicationId=APP-80W284485P519543T
&actionType=PAY
&cancelUrl=http%3A%2F%2Fdomain.com%2Fpaypal%2Fcancel
&currencyCode=USD
&feesPayer=EACHRECEIVER
&memo=Test+Payment
&receiverList.receiver(0).amount=3.25
&receiverList.receiver(0).email=merchant%40domain.com
&receiverList.receiver(0).primary=1
&receiverList.receiver(1).amount=1.5
&receiverList.receiver(1).email=seller%40domain.com
&senderEmail=buyer%40domain.com
&returnUrl=http%3A%2F%2Fdomain.com%2Fpaypal%2Freturn

响应对我来说很好:

PayPal\Types\AP\PayResponse Object
(
    [responseEnvelope] => PayPal\Types\Common\ResponseEnvelope Object
        (
            [timestamp] => 2013-07-28T23:25:52.676-07:00
            [ack] => Success
            [correlationId] => bf1ba2c8a50d4
            [build] => 6941298
        )

    [payKey] => AP-XXXXXXXXXXXXXXXXC
    [paymentExecStatus] => CREATED
    [payErrorList] => 
    [paymentInfoList] => 
    [sender] => 
    [defaultFundingPlan] => 
    [warningDataList] => 
    [error] => 
)

我还尝试将操作类型设置为 PAY_PRIMARY,因为我指定了主要收件人,而这正是我所追求的理想情况。

更新:鉴于我仍然没有收到关于我通过 PayPal 开立的票据的回复,也没有人对这个问题发表评论,我做了一些进一步的测试。如果我使用 API 资源管理器生成相同的请求,交易将正常完成。但是 完全相同的请求 通过 API 失败了。我已经验证(通过复制和粘贴生成的 header 和请求正文)API Explorer 生成的请求与 SDK 代码之间唯一的区别如下:

  • 浏览器创建的 header 在名称和值之间有一个空格
  • API Explorer 不包含应用程序 ID
  • 我的 API 调用确实在 header 和请求正文中包含应用程序 ID

如果我删除应用程序 ID 引用,SDK API 调用仍然不起作用,这是为了解决此问题而添加的。

我不明白为什么由 SDK(由 PayPal 提供)生成的付款无法完成,但是当浏览器调用它时,确切的调用工作正常。如有任何帮助或建议,我们将不胜感激。

最佳答案

因此,在与 PayPal 的商家技术支持解决这个问题近一个月后(大部分时间根本没有得到任何回应)并等待近两周的升级回应,事实证明问题源于 SDK配置。

尽管在整个 API 文档和 SDK 代码中,应用程序 ID 被引用为 applicationId,显然 SDK 要求将其作为 acct1.AppId 输入到配置文件中.我是在遇到 this wiki page on configuring the SDK 之后才发现的,24 小时前甚至不存在。

一旦我更新了我的配置,我就能够无误地授权付款。

关于paypal - 链式支付无法完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17917525/

相关文章:

javascript - 向客户端发送错误作为 HTTP 请求的回调

asp.net - Paypal 上下文中的 bolt 连接打开空白弹出窗口

php - Paypal API : This transaction cannot be processed due to an invalid merchant configuration

paypal - PayPal Preapproval 是否保证资金可用?

Paypal 预核准付款,不显示价格?

php - Getting L_ERRORCODE0=10001&超时处理请求

android - Paypal 禁用信用卡按钮

python - Paypal API : Get balance of other users?

paypal - 认证失败。 API 凭据不正确

ruby-on-rails - paypal_adaptive gem 不工作?