【问题标题】:Paypal Payments REST API - REQUIRED_SCOPE_MISSINGPaypal 付款 REST API - REQUIRED_SCOPE_MISSING
【发布时间】:2017-07-13 10:42:21
【问题描述】:

在用户批准后 Execute() 授权付款时失败。

范围 : "openid 个人资料邮箱电话https://uri.paypal.com/services/expresscheckout"

consent_uri : "https://www.sandbox.paypal.com/webapps/auth/protocol/openidconnect/v1/authorize?client_id=my_client_id&response_type=code&scope=openid%20profile%20email%20address%20phone%20https://uri.paypal.com/services/expresscheckout&redirect_uri=https://www.my_site.com/src/paypal.php"

[http_code] => 403
[url] => https://api.sandbox.paypal.com/v1/payments/payment/PAY-55313193UK1537019LCXIDBA/execute
[header] => Array
    (
        [0] => Content-Type:application/json
        [1] => Authorization:Bearer user_access_token_from_identity_api
        [2] => PayPal-Partner-Attribution-Id:pp_attr_id
    )

[post_data] => {"payer_id":"3BTU9WTCHAU2Q"}
[response] => {"name":"REQUIRED_SCOPE_MISSING","message":"Access token is missing required scope.","information_link":"https://developer.paypal.com/webapps/developer/docs/api/#REQUIRED_SCOPE_MISSING","debug_id":"e40c3f6b601a"}

)

我只使用一个沙盒 client_id,并且我启用了接受付款和使用无缝结帐权限。

https://developer.paypal.com/docs/integration/direct/identity/seamless-checkout/

非常感谢任何见解。

【问题讨论】:

    标签: php rest api paypal


    【解决方案1】:

    您是否在 developer.paypal.com 上的“APP CAPABILITIES”->>“高级选项”下的您的应用配置中选中了“订阅”标记?

    【讨论】:

    • 我愿意,我会在我的回答中说明什么错误。感谢您的评论。
    【解决方案2】:

    TLDR;我允许用户登录与结帐分开,并使用该身份 API 令牌签署结帐请求。实际上,Identity 令牌仅对用户登录我的网站有用,此时应请求和使用 Restful API 的新 Bearer 令牌。


    答案:来自 Github 上的 pp-randy:

    您的剩余付款所需的 access_token 应该使用此 API 调用。

    我从您那里看到的唯一令牌来自识别端点 /v1/identity/openidconnect/tokenservice,这对于 REST 付款不正确。


    Randy 是对的——我使用身份 API 登录用户时返回的令牌对 API 请求进行签名。

    实际上,Identity API 返回的用户访问令牌只有一个目的,即对“/v1/identity/openidconnect/userinfo/”的请求进行签名,该请求获取用于登录的 unique_id。

    当我本应使用从该端点提供的令牌时,我正在使用 Identity API 返回的相同令牌对支付 API 的请求进行签名:

    "/v1/identity/openidconnect/tokenservice"

    Paypal 响应时间: 我在 Github Paypal SDK 上的票在 4 - 5 天内得到答复 我在商户服务队列中的票在大约 4 天内得到答复

    可在此处找到完整的疑难解答: https://github.com/paypal/PayPal-PHP-SDK/issues/785#issuecomment-282749095

    Paypal SDK 的 Randy 竭尽全力回答了我的问题,尽管我不使用 SDK。谢谢兰迪!

    【讨论】:

      猜你喜欢
      • 2013-08-29
      • 2017-05-13
      • 2016-05-20
      • 2015-04-24
      • 2014-01-05
      • 2016-12-17
      • 2013-05-29
      • 2020-07-11
      • 2013-08-25
      相关资源
      最近更新 更多