2015-09-15 30 views
3

我正在构建一个应用程序,用户可以通过Paypal权限SDK(https://github.com/paypal/permissions-sdk-ruby)连接自己的Paypal帐户。我能够成功获得用户的许可,并且能够存储从Paypal权限SDK返回的令牌。现在,我正在使用以下Gem for Express Checkout(https://github.com/nov/paypal-express)。但是代表用户的Paypal Express Checkout文档并不清楚我们应该如何使用令牌来调用Express Checkout。Rails与贝宝权限和PayPal快速结账

我有以下代码

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

凡@credential存储在从贝宝权限SDK拥有令牌的数据库我的对象。

现在越来越之后,我可以使用@api对象来获取贝宝用户名,密码和签名现在

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

,我的问题是,这些钱不会直接到用户的支付宝账户,但它会进入我们的帐户(我们创建了一个帐户,以便我们可以在Paypal的Classic API部分创建一个应用程序)。

有没有人可以帮助我?或者指向正确的方向?

回答

2

当代表其他帐户调用API时,需要添加参数“subject”以指示您正在调用API的帐户。 “主题”的值可以是帐户主电子邮件地址或付款人ID。然后这笔钱将被转移到作为主题价值的账户中。

+0

您好,感谢您的回复。我仍然有点失落..我试图阅读贝宝文档,我只看到NVP api中的主题领域。这是我应该使用,而不是快速结帐API? – fatbotdesigns

+0

你是对的,主题字段只在nvp和soap基本文档中提及,因为它是经典api的基本用法。这是您需要代表另一个帐户调用任何传统API(包括快速结帐api)时与您的API凭据一起使用的字段。 – yihui

+0

谢谢!你的指导对我非常有帮助。 – fatbotdesigns

0

Yihui给出了正确答案。但我想在这里解释/张贴我做什么来解决我的问题(使用Yihui的指导)。

您需要从Paypal的第三方权限SDK中获取付款人ID。因此,您需要询问以下“ACCESS_BASIC_PERSONAL_DATA”,“EXPRESS_CHECKOUT”和“REFUND”。

然后,您将需要使用PayPal的NVP(名称值对)SDK代表另一方/商家执行快速结账。

欲了解更多信息,我们跟着贝宝 的下面的文章https://developer.paypal.com/docs/classic/express-checkout/ht_ec-singleItemPayment-curl-etc/