ロイヤルティ履歴をCRM にミラーリングします
すべてのスタンプ、クーポン、誕生日、および非アクティブのトリガーは、CRM の顧客レコードに記録されます。 7Stamp にログインしなくても、販売、通話、チケットの横に完全なロイヤルティ タイムラインが表示されます。
開発者統合
7Stamp からのすべてのロイヤルティ イベントをリアルタイムで独自のシステムにプッシュします。ポーリングやスケジュールされた API 通話はありません。イベントは、発生後数秒以内に HTTPS POST リクエストとして到着します。
Webhook を使用して、CRM、ERP、またはカスタム バックエンドをロイヤルティ側で起こっていること (誰が参加したのか、誰がスタンプを取得したのか、誰がバウチャーを引き換えたのか、誰が誕生日プレゼントをトリガーしたのか、誰が非アクティブになったのか) と同期させます。その後、システムがそのデータをどう扱うかを決定します。
Webhook は、統合スタックのアウトバウンド側です。これらは、顧客と報酬のアクティビティを、販売、サービス、分析、メッセージングですでに信頼しているシステムに反映します。
すべてのスタンプ、クーポン、誕生日、および非アクティブのトリガーは、CRM の顧客レコードに記録されます。 7Stamp にログインしなくても、販売、通話、チケットの横に完全なロイヤルティ タイムラインが表示されます。
顧客がクーポンを引き換えたら、既存の SMS ゲートウェイから感謝のメッセージ SMS を送信します。顧客がゴールしたら、Slack でお祝いを投稿します。誰かが非アクティブになった場合は、ケースをアカウント マネージャーにルーティングします。
BI ツール、ウェアハウス、または調整パイプラインにイベントをストリーミングします。バウチャー引き換え額と POS 領収書を照合し、独自の指標でロイヤルティ ROI を計算します。
エンドポイントは HTTPS を受け入れる必要がありますPOST、リクエストの形式を検証し、イベントを永続化またはキューに入れてから、成功した 2xx レスポンスを返します。安全にキューに入れることができる場合は、確認応答の前に低速の CRM またはメッセージング コールを行わないでください。
関連するすべてのイベントには、カードの作成またはスキャン時に使用した External ID およびオプションの External Source が含まれます。このペアを使用すると、名前やメールアドレスから推測することなく、自分の CRM、POS、または注文記録を更新できます。
副作用を引き起こす前に、耐久性のある処理キーまたはイベント フィンガープリントを保存します。受信者が同じ配信を再度見た場合、重複したメモ、伝票、またはメッセージを追加しないでください。エンドポイント URL をシークレットとして扱います。
json {
"entity": "card_event",
"action": "created",
"entity_id": 707,
"event_id": "8f05e58decec48e09d328f0edebbacf6",
"profile_id": 2,
"profile_name": "Your Business",
"profile_lang": "en",
"data": {
"event_type": "SCAN",
"scanned_at": "2026-10-01T09:19:24.179424",
"user_card_id": 10,
"card_template_id": 14,
"card_template_name": "Collect your stamps!",
"stamps_added": 3,
"stamps_before": 1,
"stamps_after": 4,
"amount": null,
"external_order_id": "ORDER-1001",
"workplace": { "id": 4, "name": "Bar Counter" },
"device_type": null,
"external_id": "odoo_contact_8821",
"external_source": "odoo",
"issued_vouchers": [
{
"id": 174,
"unique_code": "100425813507",
"stamp_number": 4,
"issued_at": "2026-10-01T09:19:24.191836",
"expires_at": "2027-01-01T23:59:59",
"status": "ACTIVE",
"voucher_template_id": 58,
"voucher_description": "Free coffee",
"voucher_image_url": "https://..."
}
],
"achieved_goals": [],
"user": {
"id": 2,
"name": "Anna",
"full_name": "Anna Smith",
"email": "anna@example.com",
"telegram_chat_id": null,
"telegram_username": null,
"whatsapp_phone": null,
"birth_date": null
}
}
} バックエンドに HTTPS エンドポイント、CRM 統合レイヤー、Make Webhook、または Zapier を作成しますCatch Hook。 Make URL をコピーする前に、必ず宛先を制御してください。
7Stamp Admin で、Stamp Cards → API & Integrations → Webhooks を開きます。
エンドポイントの URL を追加します。Webhook はプロファイルのすべてのカードイベントを受信するため、受信側で data.event_type によってフィルタリングしてください。
プロファイル設定を保存し、使い捨てテスト スキャンまたはカード アクションをトリガーしてイベントを生成します。
受信したペイロードを検査します。 External ID と External Source を予期されるレコードと照合し、受信者が成功した応答を返すことを確認します。
CRM、バウチャー、またはメッセージングの副作用は、リプレイセーフな処理と障害の監視が行われた後にのみ有効にしてください。
Make では、Webhooks → Custom webhook を使用して受信 URL を生成し、7Stamp プロファイルに貼り付けます。 Zapier では、同じ目的で Webhooks by Zapier → Catch Hook を使用します。現在の API は自動 Webhook 登録エンドポイントを公開しないため、7Stamp プロファイルはサブスクリプションを所有します。
現在のペイロードスキーマについては、公開 OpenAPI リファレンスの Webhooks セクションを参照してください。本文はエンベロープ形式です。profile_id と profile_name は 7Stamp プロファイルを示し、event_id はイベントを識別し、カードイベント自体は data に入っています(Make または Zapier の URL の場合、キーは card_event です)。各配信は 1 つのヘッダー X-Webhook-Signature: t=…,s=… で署名されます。Webhook シークレットを使って、t に生のリクエスト本文を加えたものに対して HMAC-SHA256 を計算し、hex エンコードして s と比較してください。シークレットは 7Stamp Admin の Webhook ページにあります。X-Webhook-Event-Id を使って重複した配信を破棄してください。再試行は新しい t で再署名されます。Basic Auth でエンドポイントを保護することもできます。HTTPS を必須とし、受信側の URL を公開ログに残さないでください。
いいえ。7Stamp の Webhook は、プロファイルのすべてのカードイベントを受信します。受信側で data.event_type によってフィルタリングしてください。Make と Zapier ではイベントが card_event の下に届くため、card_event.event_type でフィルタリングしてください。
Make で受信 Webhook を作成するか、Zapier で Catch Hook を作成し、生成された URL をコピーして、7Stamp プロファイルの Webhook 設定に貼り付けて、テスト イベントを送信します。
data.external_id と、存在する場合は data.external_source を使用してください。これらは、独自の ID を付けて API 経由で発行したカードのすべての Webhook で返されます。お客様が自分でカードを取得した場合は External ID がないため、data.user.email で照合してください。Apple の「Hide My Email」のアドレスはリレーアドレスであり、CRM にあるアドレスではありません。
X-Webhook-Signature ヘッダーを t と s に分割し、7Stamp Admin の Webhook シークレットを使って、t に生のリクエスト本文を加えたものに対して HMAC-SHA256 を計算し、hex エンコードして s と比較してください。t は送信されたとおりに、本文は JSON を解析する前に受信した生のバイト列として扱います。X-Webhook-Event-Id がすでに処理済みの配信は破棄してください。再試行は新しい t で再署名されます。
次のステップ
受信機を作成し、その HTTPS URL をプロファイルに貼り付け、使い捨てスキャンを実行し、ダウンストリーム自動化を有効にする前に一致する External ID を検証します。