2016-05-06 12 views
0
質問はこのように書き

にウェブフックの認証を解除:ストライプのRailsアプリ

私のRailsアプリを通じてストライプを持つユーザーが接続されている、そのようなユーザーは、APIキーを介して接続されています。

ストライプには、deauthorize APIキーのオプションがあります。私は一度ユーザーのAPIをキーdeauthorizes私のアプリで通知したいと思います。私はそれが可能であるか、可能でなければならないことを知っています。

アプリでwebhooksを管理する必要があることはわかっていますが、ユーザーのdeauthorizesのAPIキーと、アプリに送信するデータがあるときにストライプが呼び出すアプリのURLを設定する場所が不思議です。

答えて

3

Webhooksは、イベントのサーバーに通知するためにStripeによって使用されます。あなたが設定することができウェブフックエンドポイントの2つのタイプがあります。

  • 「アカウント」のエンドポイントは、自分のアカウントに発生したイベント

  • 「接続」のエンドポイントがあるアカウントで発生したイベントを受け取る受け取ります一言で言えばストライプ接続

を経由してあなたに接続され、あなたのストライプwebhook settingsに独自のサーバー(「エンドポイント」)へのURLを設定します。イベントが発生するたびに、StripeはそのURLにevent objectを送信します。

接続エンドポイントの場合、オブジェクトにはイベントを発行したアカウントのIDを持つ​​属性もあります。

認証解除を通知するには、Connectエンドポイントを設定してaccount.application.deauthorizedイベントを捕捉する必要があります。受け取るデータは次のようになります:

{ 
    "created": 1326853478, 
    "livemode": false, 
    "id": "evt_00000000000000", 
    "type": "account.application.deauthorized", 
    "object": "event", 
    "request": null, 
    "pending_webhooks": 1, 
    "api_version": "2016-03-07", 
    "data": { 
    "object": { 
     "id": "ca_00000000000000", 
     "object": "application", 
     "name": "Your Application" 
    } 
    }, 
    "user_id": "acct_00000000000000" 
} 
+0

詳細な説明をいただきありがとうございます。個々のユーザーが自分のアカウントにウェブフックを設定したくないのです。ユーザーがアプリhttps://dashboard.stripe.com/account/applicationsに接続されているAPIキーの認証を解除すると、アプリに通知されます。私はそのようなイベントをキャッチするように私はどのようなURLを私のアプリケーションで作成する必要がありますか? – Aleks

+0

これがConnectエンドポイントの目的です。自分のアカウント(プラットフォーム)でエンドポイントを1回設定すると、接続されているすべてのアカウントからイベントが送信されます。接続されたアカウント自体は、エンドポイントを設定する必要はありません。 – Ywain

+0

私はそれを得ました。接続されたエンドポイントはストライプ上の私の「アプリ」に位置しています。 [OK]をクリックすると、URLに関する質問に回答します。私は答えとして設定しますが、ちょっとした疑問ですが、ストライプはwebhookに 'user_id'を送りますが、実際のIDをユーザのテーブルに保存したことは覚えていません。ストーリーの 'user_id'を使用して、その場合に私のアプリで認証解除されたユーザーを特定するにはどうすればよいですか? – Aleks

関連する問題