スポンサーリンク

【WordPress】Stripe決済後のサンクスメールを自動化|Thanks Mail for Stripeを導入して運用してみた

【WordPress】Stripe決済後のサンクスメールを自動化|Thanks Mail for Stripeを導入して運用してみた ITライフハック
この記事は約8分で読めます。
スポンサーリンク
当ページはプロモーションが含まれています
【プラグイン開発元・公式ドキュメント(一次ソース)】
仕様の最新版・フィルターフック・開発者サポートは公式ページが一次情報です。
👉 Rapls Works:Thanks Mail for Stripe 公式解説ページ

WordPressでStripe Payment Linkを使ってデジタル商品を売っていると、「決済後にサンクスメールを自動で送りたい」という場面が出てきます。

ZapierやMakeで組むこともできますが、月額コストがかかったり、フローが止まってメールが届いていなかった……なんて事故も。

この記事では、WordPressサーバー内だけで完結するサンクスメール送信プラグイン
Thanks Mail for Stripeを、実際に導入・運用した視点でまとめます。

👉 WordPress.org公式ページでプラグインをダウンロード


スポンサーリンク

この記事でわかること

  • Thanks Mail for Stripeが”何を解決するプラグインか”
  • Stripe側のWebhook設定の手順(ここが一番つまずく)
  • 送信元メールアドレスの落とし穴(SPF認証の話)
  • Xserverなど国内サーバーで起きる403エラーの対処法

スポンサーリンク

Thanks Mail for Stripeは何が便利?(ざっくり結論)

Stripe Payment Linkの決済完了後に、自分のブランド名でサンクスメールを自動送信してくれるのが最大の価値です。

  • 外部サービス不要(Zapier/Makeの月額コストがゼロに)
  • 日本語・英語のテンプレート切り替え(Payment Link単位で言語判定)
  • 二重送信防止つき(Stripeのwebhookリトライに対応済み)

逆に、フィルターフックによる高度なカスタマイズなど開発者向けの詳細は、公式ページにまとまっています。この記事では、運用者視点の「ここを押さえれば動く」ポイントに寄せます。


Zapier / Make / このプラグイン——何が違う?

サンクスメールの送信手段はいくつかありますが、運用コストと信頼性が違います。

サンクスメール送信方法の比較表(Zapier / Make / Thanks Mail for Stripe)

個人的には、「月数件〜数十件の販売規模で、ランニングコストを抑えたい」ならこのプラグインがちょうどいいと感じました。


仕組み:Stripe → WordPress → メール送信

動作はとてもシンプルです。

  1. お客さんがStripe Payment Linkで決済する
  2. StripeがwebhookイベントをあなたのWordPressに送信する
  3. プラグインが署名を検証し、正規のリクエストか確認する
  4. Payment Link IDで言語を判定し、テンプレートに沿ってメールを送信する
  5. 送信済みSession IDを記録し、二重送信を防止する

動作フロー図(お客さん→Stripe→WordPress→メール送信)

外部サービスを経由しないので、「気づいたらフローが止まっていた」という事故が起きません。


インストール(最短手順)

方法1:管理画面から(推奨)

  1. WordPress管理画面 →「プラグイン」→「新規追加」
  2. 検索で「Thanks Mail for Stripe
  3. 「今すぐインストール」→「有効化」

方法2:手動インストール

  1. WordPress.orgのプラグインページからZIPを取得
  2. 解凍して thanks-mail-for-stripe フォルダを /wp-content/plugins/ へアップロード
  3. 管理画面の「プラグイン」で有効化

セットアップ:Stripe側の設定が”山場”

プラグイン自体のインストールは簡単ですが、Stripe側のWebhook登録がいちばんの山場です。ここを乗り越えれば、あとは管理画面で項目を埋めるだけ。

Step 1:StripeダッシュボードでWebhookを登録

全体の流れはこんな感じです。

Webhook登録の6ステップ概要図

  1. Stripeダッシュボードにログイン
  2. Developers → Webhooks → Add endpoint
  3. Endpoint URLにプラグイン設定画面に表示されるURLを貼り付け:
    https://あなたのドメイン/wp-json/thanks-mail/v1/webhook
  4. イベントは checkout.session.completedcheckout.session.async_payment_succeeded を選択
  5. 保存後に表示されるSigning secret(whsec_...をコピー

Stripeダッシュボードの画面はこのようになっています。

Stripeダッシュボードの Developers → Webhooks 画面のスクリーンショット

Add endpointでURLの入力とイベントの選択を行います。

Add endpoint でURL入力+イベント選択している画面のスクリーンショット

保存後に表示されるSigning secretを必ずコピーしてください。

Signing secret(whsec_...)が表示されている画面のスクリーンショット

Step 2:プラグインの設定画面を埋める

WordPress管理画面 Thanks Mail for Stripe の設定画面全体のスクリーンショット

設定項目 設定する値 補足
Webhook署名シークレット whsec_...をペースト Step 1でコピーしたもの
Payment Link ID(日本語用) plink_... StripeのPayment Link詳細URLから確認
Payment Link ID(英語用) plink_... 英語版を用意している場合のみ
ブランド名 サービス名やショップ名 メール内の{brand}に表示される
送信元メールアドレス info@yoursite.com ⚠ 必ず自分のドメインのアドレス
送信者名 Fromに表示される名前
返信先メールアドレス Reply-Toに設定するアドレス Gmail等でもOK

日本語用と英語用でそれぞれPayment Linkを作成し、そのIDを登録しておくと、どちらのリンクから購入されたかを判定して適切な言語のテンプレートでメールを送信します。

Step 3:テストメールで動作確認

設定画面にテストメール送信ボタンがあります。まずはここで送信が通るか確認してから、Stripeのテストモードで実際の決済フローを試しましょう。

テストメール送信ボタンと送信成功の表示画面

実際にテストメールが届くか、受信箱も確認します。

テストメールが実際に届いた受信箱のスクリーンショット


よくある詰まりどころ(運用者向け)

トラブルが起きたとき、以下のフローチャートで原因を切り分けできます。

トラブルシューティング・フローチャート

🔴 送信元にGmailを使うと届かない

これがいちばん多いハマりポイントです。

WordPressサーバーから yourname@gmail.com を名乗ってメールを送ると、受信側サーバーが「このサーバーはGmailの送信元として許可されていない」と判断して弾きます(SPF認証の失敗)。

NG(Gmail)vs OK(自ドメイン)の比較図

対策:送信元(From)は必ず自分のドメインのメールアドレスを使う。

info@yoursite.comshop@yoursite.com など、WordPressを動かしているドメインのアドレスにしてください。返信先(Reply-To)にGmailを設定するのは問題ありません。

🔴 Xserverで403エラーになる

Xserver(エックスサーバー)を使っている場合、StripeのWebhookがすべて403で弾かれることがあります。

原因:Xserverの「WordPressセキュリティ設定」にある「REST APIアクセス制限」がONになっていると、海外IPからのREST APIアクセスがブロックされます。Stripeのサーバーは海外にあるため、当然ブロック対象に。

対策:サーバーパネル → WordPressセキュリティ設定 → 「REST APIアクセス制限」をOFFにする。

Xserverサーバーパネルの REST APIアクセス制限 設定画面

Wordfenceなどのセキュリティプラグインを使っている場合は、WebhookのURL(/wp-json/thanks-mail/v1/webhook)をホワイトリストに追加してください。

🔴 Webhookは200なのにメールが届かない

Stripeのダッシュボードで200 OKが返っているのにメールが届かない場合、3つの原因が考えられます。

StripeダッシュボードのWebhookログ画面(200 OK + sent: true の表示)

  • 送信元がフリーメール → 上記のSPF認証の問題。自ドメインのアドレスに変更
  • 二重送信防止が作動 → 「最近の送信履歴」に同じSession IDがあれば正常動作
  • サーバーのメール送信自体の問題 → WP Mail SMTPなどのSMTPプラグインの導入を検討

🔴 テスト環境から本番環境への切り替え忘れ

Stripeのテストモードと本番モードでは、Webhook署名シークレット(whsec_...)とPayment Link ID(plink_...)がすべて別物です。

本番環境に移行する際は、StripeダッシュボードのWebhook設定もLive用で別途登録し、プラグインの値もLive用に更新してください。ここを忘れると「テストでは動いたのに本番で動かない」になります。


メールテンプレートのカスタマイズ

件名と本文は管理画面から自由に編集できます。以下のプレースホルダーが使えます。

  • {brand}:設定で指定したブランド名
  • {email}:顧客のメールアドレス
  • {session_id}:Checkout Session ID(照合用)

ダウンロードリンクを含めたり、クーポンコードを添えたり、自由にカスタマイズできます。フィルターフックによるさらに細かい制御(CC追加、言語判定のカスタマイズなど)は公式ドキュメントを参照してください。


送信履歴で「届いた?」が確認できる

管理画面の「最近の送信履歴」で、いつ・誰に・どの商品のメールを送ったかが確認できます。

プラグイン管理画面の最近の送信履歴一覧のスクリーンショット

お客さんから「メールが届いていない」と問い合わせがあったとき、ここを見れば送信の有無をすぐに確認できます。プラグインをアンインストールすると、このデータも自動的に削除されるので、個人情報が残り続ける心配もありません。


まとめ

Thanks Mail for Stripeは、Stripe Payment Linkで商品を販売している人にとって「あったら地味にうれしい」プラグインです。

  • ZapierやMakeの月額コストをなくしたい人
  • 自分のブランド名でサンクスメールを送りたい人
  • 日本語と英語でテンプレートを分けたい人
  • 外部サービスの障害に振り回されたくない人

セットアップのハードルは「Stripe側のWebhook登録」と「送信元メールアドレスの設定」の2点。ここさえクリアすれば、あとは放っておいても動き続けます。

📥 ダウンロード・一次情報

タイトルとURLをコピーしました