如何 deauthorize/disconnect Stripe Connect 帐户 Rails

How to deauthorize/disconnect Stripe Connect accounts in Rails

我一直在寻找一个关于如何在我的 Rails 应用程序中取消授权/断开 Stripe Connect 帐户的好例子。也许对于那些精通外部 POST 请求的人来说,这是微不足道的,但我是新手,这对于手动制作 POST 请求的新手来说似乎很难。 :)

我正在使用 omniauth-stripe-connect gem,它非常适合使用 Stripe connect 连接帐户。它似乎没有用于断开帐户的内置功能。

Stripe's own documentation 说只需对他们取消授权 URL 执行 POST。但是他们的示例是一个 cURL 命令,您不能在 Rails 中本地使用它。或者更确切地说,不建议这样做。

curl https://connect.stripe.com/oauth/deauthorize \
   -u {YOUR_SECRET_KEY}: \
   -d client_id=ca_5ry8QONyVRqZAJcezVxwUWlGcJAR7cW1 \
   -d stripe_user_id=acct_llriadrqho6HXC

在 Rails 中执行 POST 的最佳方法是什么?

我发现这个问题的评论和接受的答案非常有帮助:Stripe Connect - retrieving access token

这是我最后做的事情:

安装 HTTParty gem 然后使用以下代码:

HTTParty.post("https://connect.stripe.com/oauth/deauthorize",
    :basic_auth => { :username => ENV['STRIPE_SECRET_KEY'] },
    :query => {
        client_id: ENV['STRIPE_CONNECT_CLIENT_ID'],
        stripe_user_id: @user.stripe_user_id })

我已使用 Figaro gem 将我的 Stripe 密钥加载到环境中。

我希望这可以节省其他人数小时的搜索和修改时间!

您也可以使用 Stripe gem

取消帐户授权
account = Stripe::Account.retrieve(@user.stripe_user_id)
account.deauthorize(ENV['STRIPE_CONNECT_CLIENT_ID'])

在 php codeigniter

第 1 步在控制器中粘贴打击代码

       require_once APPPATH . "third_party/stripe/init.php";
      
       
        \Stripe\Stripe::setApiKey(secret_key);


        \Stripe\OAuth::deauthorize([
            'client_id' => 'ca_ab`enter code here`,
            'stripe_user_id' => "acct_5FFGKJ*****",
        ]);