WooshPay ウェブフック #
WooshPayは、アカウントでイベントが発生したときにアプリケーションに通知するためにWebhookを使用します。Webhookは、顧客の銀行が支払いを確認したとき、顧客が請求に異議を唱えたとき、または定期購読の支払いを収集するときのような非同期イベントに特に便利です。API経由でWebhookエンドポイントを設定し、イベントの通知を受けることができます。
Webhookの作成と受信の手順 #
このセクションの手順を使用して、アプリでイベント通知の受信を開始できます:
- 監視したいイベントと イベント ペイロードを解析する。
- ローカルサーバー上にHTTPエンドポイント(URL)としてWebhookエンドポイントを作成します。
- WooshPayからのリクエストを処理し、各イベントオブジェクトをパースして、以下を返す。
2xx
応答ステータスコード。 - ウェブフックのエンドポイントを、一般にアクセス可能なHTTPS URLになるように配置します。
- 一般にアクセス可能なHTTPS URLをWebhookオブジェクトに登録します。
ウェブフック・エンドポイントの作成方法 #
ウェブフック・エンドポイントの作成は、ウェブサイトの他のページの作成と変わりません。サーバー上のHTTPまたはHTTPSエンドポイントにURLを指定します。まだローカルマシンでエンドポイントを開発している場合は、HTTPでもかまいません。一般に公開された後は、HTTPSでなければなりません。
ステップ1.監視するイベントを特定する #
API リファレンスガイドを使用して、Webhook エンドポイントが解析する必要がある Wooshpay イベントとそのイベントオブジェクトを特定します。
ステップ2: ウェブフックを作成する #
ローカルマシンに、POSTメソッドで認証されていないWebhookリクエストを受け付けるHTTPエンドポイントを設定します。
リクエスト
{
"url":"https://apitest.wooshpay.com/v1/receives"、
"description":"私は説明です"、
"enabled_events":[
"payment_intent.created"、
"payment_intent.payment_failed"、
"payment_intent.requires_action"、
"payment_intent.succeeded"、
"payment_intent.canceled"、
"charge.refund.updated"
],
"api_version":"1.0.1"
}
応答
{
"id":"we_1600745739909070848",
"object":"webhook_endpoint"、
"created":1670482499000,
"description":"私は説明": "メタデータ": NULL
「メタデータ": null、
"secret": "c2tfdGVzdF9kR1Z6ZERwMFpYTjBNVEl6TkRVMjo="、
"status":「有効"、
"url":"https://apitest.wooshpay.com/v1/receives"、
"livemode": false、
api_version": "1.0.1"1.0.1",
"enabled_events":[
"payment_intent.created"、
"payment_intent.payment_failed"、
"payment_intent.requires_action"、
"payment_intent.succeeded"、
"payment_intent.canceled"、
"charge.refund.updated"
]
}
ステップ3:WooshPayからのリクエストを処理する #
エンドポイントは、受け取りたいイベント通知のタイプのイベントオブジェクトを読み取るように設定する必要があります。WooshPayは、JSONペイロードを持つPOSTリクエストの一部として、Webhookエンドポイントにイベントを送信します。
2xx応答を返す
エンドポイントは、タイムアウトを引き起こす可能性のある複雑なロジックの前に、成功したステータスコード(2xx)を素早く返す必要があります。
配信の試行と再試行 #
配信の試行、イベントログ、および Webhook イベントが承認されなかった場合の再試行ロジックを表示する方法を理解します。
リトライ・ロジック
ライブモードとテストモードでは、WooshPayは指数関数的なバックオフで最大3日間、Webhookの配信を試みます。
保留中のWebhookロジック
ライブモードとテストモードでは、エンドポイントが2xx HTTPステータスコードで応答しなかった場合、WooshPayは電子メールでWebhookが失敗したことを通知しようとします。メールでは、配信できなかった URL だけでなく、いつ Webhook の配信を停止するか、また弊社に連絡するための最良の方法もお知らせします。