具有 Paypal 权限和 Paypal Express Checkout 的 Rails

Posted

技术标签:

【中文标题】具有 Paypal 权限和 Paypal Express Checkout 的 Rails【英文标题】:Rails with Paypal Permissions and Paypal Express Checkout 【发布时间】:2015-12-11 05:16:39 【问题描述】:

我正在构建一个应用程序,用户可以在其中通过 Paypal Permissions SDK (https://github.com/paypal/permissions-sdk-ruby) 连接他们自己的 Paypal 帐户。我能够成功地获得用户的许可,并且能够存储从 Paypal Permissions SDK 返回的令牌。现在,我正在使用以下 gem 进行 Express Checkout (https://github.com/nov/paypal-express)。但是代表用户的 Paypal Express Checkout 文档并不清楚我们应该如何使用令牌来调用 Express Checkout。

我有以下代码

@api = PayPal::SDK::Permissions::API.new(
  token: @credential.paypal_access_token,
  token_secret: @credential.paypal_secret_token
)

@credential 是我存储在数据库中的对象,该对象具有来自 Paypal Permissions SDK 的令牌。

现在获取后,我可以使用@api 对象获取Paypal 用户名、密码和签名

request = Paypal::Express::Request.new(
  :username   => @api.config.username,
  :password   => @api.config.password,
  :signature  => @api.config.signature
)

现在,我的问题是钱没有直接转到用户的 paypal 帐户,而是转到了我们的帐户(我们创建了一个帐户,以便我们可以在 Paypal 的 Classic API 部分中创建一个应用程序)。

有人可以帮助我吗?或指出正确的方向?

【问题讨论】:

【参考方案1】:

在为其他账户调用API时,需要添加参数“subject”来表示你调用API的账户。 “主题”的值可以是帐户主电子邮件地址或付款人 ID。然后这笔钱将进入主题价值的账户。

【讨论】:

您好,感谢您的回复。我还是有点迷茫。我正在尝试阅读贝宝文档,但我只看到 NVP api 中的主题字段。这是我应该使用的而不是 express checkout api 吗? 你是对的,主题字段只在nvp和soap基础文档中提到,因为它是经典api的基础用法。这是您在代表另一个帐户调用任何经典 API(包括快速结帐 API)时需要与您的 API 凭据一起使用的字段。 谢谢!您的指导对我帮助很大。 供参考 - NVP 和 subject 字段可以在这里找到 developer.paypal.com/docs/classic/api/NVPAPIOverview【参考方案2】:

易辉给出了正确的答案。但我想在这里解释/发布我为解决问题所做的工作(使用 Yihui 的指导)。

您需要从 Paypal 的 3rd Party Permissions SDK 获取付款人 ID。因此,您需要询问以下“ACCESS_BASIC_PERSONAL_DATA”、“EXPRESS_CHECKOUT”和“REFUND”。

然后您将需要使用 paypal 的 NVP(Name Value Pair)SDK 代表另一方/商家执行 Express Checkout。

更多信息,我们关注了Paypal的以下文章 https://developer.paypal.com/docs/classic/express-checkout/ht_ec-singleItemPayment-curl-etc/

【讨论】:

以上是关于具有 Paypal 权限和 Paypal Express Checkout 的 Rails的主要内容,如果未能解决你的问题,请参考以下文章

Paypal 快速结帐错误 10007:权限被拒绝

Paypal API 订阅 curl 沙箱目录产品 权限不足授权失败

验证电子邮件是不是链接到有效的 PayPal 帐户

PayPal 交易搜索 API:PERMISSION_DENIED,请求的操作没有权限

为使用 PayPal、IPN 付款的用户启用游戏访问权限

无法将PayPal沙盒帐户链接到第三方权限