インバウンドウェブフック
外部プラットフォームからイベントを受信し、自動的に顧客にシードを授与します。インバウンドウェブフックを使用すると、クイズアプリ、フォーム、レビュープラットフォーム、Zapier、Makeなど、あらゆるサードパーティツールと接続できます。
📥 インバウンドウェブフック
外部プラットフォームからイベントを受け取り、お客様に自動的にシードを付与します。インバウンドウェブフックを使用すると、「Typeform」、「Zapier」、「My Quiz App」などの外部ツールをLoyaltyTreeのロイヤルティプログラムに接続できます。

仕組み
インバウンドウェブフックシステムは、ソースとコードのモデルを使用しています:
- ソースを作成する — ソースは外部プラットフォームやツールを表します(例:「Typeform」、「Zapier」、「My Quiz App」)。各ソースには、ユニークなウェブフックURLとセキュリティのための秘密鍵が割り当てられます。
- ソースにコードを追加する — 各コードはシードを付与する特定のアクションを定義します(例:「quiz_completed」、「form_submitted」、「birthday_claimed」)。各コードが付与するシードの数を設定しますが、オプションの制限も設定できます。
- POSTリクエストを送信する — 外部プラットフォームがコードと顧客情報を含むPOSTリクエストをウェブフックURLに送信します。LoyaltyTreeは顧客を見つけるか作成し、自動的にシードを付与します。
外部プラットフォーム → ウェブフックURLにPOST → LoyaltyTreeが検証し、シードを付与 → 顧客残高が更新される
始め方
ステップ1: ウェブフックソースを作成する
ストア → [あなたのストア] → 統合 → インバウンドウェブフックに移動します。+ ソースを追加をクリックし、外部プラットフォームを説明する名前を付けます(例:「Typeform Quiz」や「Zapier Automation」)。
ソースが作成されると、次の情報が受け取れます:
- ウェブフックURL — 外部プラットフォームがリクエストを送信するエンドポイント
- ウェブフックシークレット — リクエストを署名するための秘密鍵(セキュリティのために推奨)

ステップ2: コードを追加する
各コードは報酬を与える特定のアクションを表します。ソースで+ コードを追加をクリックして作成します。
| フィールド | 必須 | 説明 |
|---|---|---|
| コード | はい | ウェブフックペイロードで送信される正確な値(例:quiz_completed)。これは外部プラットフォームが送信するものと一致する必要があります。 |
| 表示名 | はい | 管理ダッシュボードおよび取引履歴に表示される人間に優しい名前(例:「クイズ完了」)。 |
| 説明 | いいえ | このコードが使用されるタイミングについてのチームへのオプションのメモ。 |
| シード数 | はい | このコードがトリガーされるたびに付与されるシードの数。デフォルトは1です。 |
| 最大シード/顧客 | いいえ | 1人の顧客がこのコードから得られるシードの最大合計。このフィールドが空の場合は制限なしです。この制限に達した顧客に対するさらにウェブフック呼び出しは成功を返しますが、シードは0です。 |
| クールダウン(時間) | いいえ | 同じコードで同じ顧客に対する付与の間の最小時間。顧客がシードを獲得できる頻度を制限することで悪用を防ぎます。クールダウンを空にすると無制限です。 |
| 有効 | — | このコードを削除せずに有効または無効にするためのトグル。無効化されたコードは403エラーを返します。 |
ステップ3: 外部プラットフォームを設定する
アクションが発生するたびに、外部プラットフォーム(Zapier、Typeform、カスタムアプリなど)を設定して、ウェブフックURLにPOSTリクエストを送信します。正確なペイロード形式については、以下のリクエスト形式セクションを参照してください。
コードと制限についての説明
コードとその制限は連携してシードの付与方法を正確にコントロールします:
シード数
各コードには固定のシード数があります。ウェブフックがそのコードでトリガーされるたびに、顧客はその数のシードを正確に受け取ります。たとえば、「quiz_completed」を5シードに設定した場合、条件を満たすウェブフックの呼び出しは毎回5シードを付与します。
顧客あたりの最大シード
これは各コードに対する顧客あたりの生涯上限を設定します。これはこの特定のコードから顧客が得られるシードの合計であり、トリガーする回数ではありません。
quiz_completedを作成し、シード数 = 5および最大シード/顧客 = 15を設定します。
- 1回目のクイズ完了 → +5シード(合計: 5) ✅
- 2回目のクイズ完了 → +5シード(合計: 10) ✅
- 3回目のクイズ完了 → +5シード(合計: 15) ✅
- 4回目のクイズ完了 → +0シード(制限に達しました) — 成功を返しますが、シードは付与されません
クールダウン(時間)
同じコードで同じ顧客に対するシード付与の間の最小待機時間を設定します。クールダウンタイマーは最後の成功した付与から始まります。
daily_visitを作成し、シード数 = 2およびクールダウン = 24時間を設定します。
- 月曜日午前10時 → +2シード ✅
- 月曜日午後3時 → +0シード(クールダウン中、19時間後に再試行)
- 火曜日午前11時 → +2シード ✅
リクエスト形式
以下のJSONボディを含むPOSTリクエストをウェブフックURLに送信します:
{
"code": "your_code_here",
"customer": {
"email": "customer@example.com",
"shopify_customer_id": "12345",
"first_name": "Jane",
"last_name": "Smith"
},
"metadata": {
"quiz_score": 95,
"source_page": "spring-quiz"
}
}
| フィールド | 必須 | 説明 |
|---|---|---|
code |
はい | 設定したコードの1つと一致するコード値(例:quiz_completed) |
customer.email |
はい* | 顧客のメールアドレス。顧客を見つけるか作成するために使用します。新しい顧客の場合は必須です。 |
customer.shopify_customer_id |
いいえ* | 顧客のShopify ID。既存の顧客を特定するためにメールの代わりに使用できます。 |
customer.first_name |
いいえ | 顧客の名前。新しい顧客を作成する際に使用します。 |
customer.last_name |
いい
Still need help?Our support team is available to assist you with any questions or technical issues. Contact SupportSuggest an editDid you find an error or missing information? Help us improve our documentation. Edit on GitHub |