# Webhook

> 向き: Recustomer → マーチャント（通知）

返品の作成・更新や配送ステータスの更新を、Recustomer からマーチャントが用意した受け口へ通知します。

受け口は、管理画面の Webhook の設定で、イベントとコールバック URL を組にして登録します。Recustomer は、登録したイベントだけを通知します。

## 署名の確かめ方
Recustomer は通知ごとに本文の署名を作り、X-Recustomer-Signature-256 ヘッダーで送ります。受け口では、通知を処理する前に署名を確かめてください。

1. 管理画面の Webhook の設定で、登録した Webhook の「シークレットを表示」から署名シークレットを確かめます
2. 受け取った本文を、JSON として読み込む前のバイト列のまま、署名シークレットを鍵にした HMAC-SHA256 にかけます。結果を 16 進の小文字にして、先頭に `sha256=` を付けます
3. 2 の値と X-Recustomer-Signature-256 ヘッダーの値を、時間が一定になる比較で比べます。一致しなければ、通知を処理しないでください

シークレットを再発行すると、それ以降の通知は新しいシークレットで署名されます。

各 Webhook のページの「受け口の実装例」に、この手順のコードがあります。
