BLOGIT基礎
システム通知メールが届かない時の設計|再送と確認画面
送信処理が成功しても、相手の受信箱へ届いたとは限りません。重要な承認や期限をメールだけに依存させず、システム内でも確認できるようにします。

先に結論受付・送信・配送失敗を分け、宛先と再送を安全に管理します。
通知の目的と緊急度を分ける
申請受付、承認依頼、差し戻し、期限、障害など種類を分けます。すべてを即時メールにすると重要通知が埋もれます。
メールを見なくても、ログイン後の未処理一覧で同じ内容を確認できるようにします。安全に関わる緊急連絡は別経路も決めます。
宛先と本文を最小限にする
退職者、共有アドレス、CCの範囲を定期確認します。役割変更後も以前の案件通知が続かないよう、権限と通知購読を連動させます。
本文へ顧客名、金額、添付を載せ過ぎず、認証後の画面へ誘導します。リンクは対象権限を再確認し、転送されても内容を開けないようにします。
送信状態と配送失敗を区別する
キュー受付、送信サーバー受領、配送失敗、相手拒否を別状態で記録します。『送信済み』だけで届いたと断定しません。
バウンス、アドレス誤り、送信制限を集計し、管理者が修正できる一覧を作ります。メールアドレスや本文をログへ無期限保存しません。
再送と二重通知を安全にする
通信失敗時は自動再送回数と間隔を決め、同じ通知を短時間に大量送信しません。手動再送は対象と宛先を確認してから実行します。
再送しても業務データを再登録しないよう、通知と処理本体を分けます。低速回線、宛先不正、メール停止をテストし、利用者へ次の行動を表示します。
相談前にそろえるもの
- 通知種類・緊急度
- 宛先・購読権限
- 本文の情報量
- 送信・配送状態
- 有限再送・二重通知防止
全部そろっていなくても構いません。分かる範囲を確認し、業務ルールや金額に関わる部分は担当者と一緒に決めます。