【毎度ありがとうメール for PayPal】 オンラインマニュアル
 メール送信テスト

メール送信のテスト方法は2つあります。
  1. PayPalのテストサイト(PayPal Sandbox)のテストアカウントを利用する。
  2. PayPalの本番用の2つのアカウントを使う。


PayPal Sandboxのテストアカウントを利用する

PayPal Sandboxの使い方は、
Sandbox ペイパルビジネスガイド - PayPal
PayPal テスト環境 Sandboxの使い方 - Qiita
などをご参照ください(URLが変更になっている場合は、ご自身で検索してください)。
またSandboxの使い方はPayPalへお問い合わせください。

PayPalのテストサイト(PayPal Sandbox)へアカウントの登録

PayPal Sandboxにテスト用のアカウントを登録します。
テスト用アカウントの登録方法は、PayPal テスト環境 Sandboxの使い方 - Qiitaなどをご参照ください。
もしPayPalの仕様が変わっていて、登録方法がおわかりにならない場合は、PayPalにお尋ねください。

テストアカウントは、販売用(売り手用)と購入用(買い手用)に2つ必要になります。 販売用はビジネスかプレミアのいずれか、購入用はパーソナル、ビジネス、プレミアのいずれでもOKです。

テストアカウントで決済を行う

  1. 【毎度ありがとうメール for PayPal】にログインします。
  2. 【毎度ありがとうメール for PayPal】管理画面の【管理者情報など】-【PayPal Sandbox(テスト用)情報】-【PayPal登録アドレス】へテストアカウントの登録メールアドレスを入力して【保存する】ボタンをクリックします。
  3. テストしたい商品の【データ編集】を開き、【モード】で【テスト】を選択して、【保存する】ボタンをクリックします。
  4. PayPal Sandboxの売り手用テストアカウントにログインします。
  5. 本番と同じ方法で商品を登録します。
  6. 本番用アカウントと同じように、購読ボタンを作成します。
  7. テスト用の購読ボタンを配したWebページから購入します。 支払いは購入者用のテストアカウントから行います。
  8. テストが終わって本番の販売を始める時は、【データ編集】を開き、【モード】を【本番】に戻し、決済ボタンを本番用に入れ替えてください。

きちんと動作していれば、設定したメールが届き、購入者データに決済情報が書き込まれます。
メールが送信されなかったり、購入者データが書き込まれない場合は、エラーが起こっていると思われますので、エラーメッセージについてサンキューメールが送信されない場合を参照してください。
PayPalから送信されるメールの確認は、【PayPal Sandbox】の【Sandbox】-【Notifications】で確認できます。

テストが終了し、商品の販売を始めるときは、必ず【本番モード】に切り替えてください。


PayPalの2つの本番用アカウントを使う

ご自身で2つのアカウントを用意してテストします。
PayPalはビジネスorプレミアとパーソナルの組み合わせで2つ登録できるようです(PayPalの規約が変わる場合もあるので、できるかどうかはご自身でお確かめください)。
もし2つのアカウントを用意できなかった場合は、どなたか気心の知れた方のアカウントをお借りして2つのアカウントでテストしてください。
決済はテスト後にキャンセルすることも可能ですが、手数料がかかります。

PayPalの規約に、自分の商品を自分で購入することは禁止とも取れる文言があります。 テスト目的で自分の商品を購入するのも禁止なのかPayPalテクニカルサポートに問い合わせたところ、それは問題ないとのことでした(2020年7月)。 ですがPayPalの言い分が変わらないとも限りませんので、ご不安な方はPayPalに問い合わせてからテストしてください。
  1. PayPalに2つのアカウントを作成していない場合作成します。
  2. 【毎度ありがとうメール for PayPal】にログインし、テストしたい商品の【データ編集】を開きます。
  3. 【モード】で【本番】を選択して、【保存する】ボタンをクリックします。

  4. 作成したセールスページにアクセスします。
  5. 購入ボタンをクリックします。
  6. PayPalへのログイン画面が表示されるので、商品を販売していない方のアカウントへログインして支払いをします。
  7. PayPalの管理画面から、決済をキャンセルします。決済をキャンセルする方法はPayPalにお尋ねください。

きちんと動作していれば、設定したメールが届き、購入者データに決済情報が書き込まれます。
メールが送信されなかったり、購入者データが書き込まれない場合は、エラーが起こっていると思われますのでエラーメッセージについてサンキューメールが送信されない場合を参照してください。


お使いのMTAがqmailの場合

【毎度ありがとうメール for PayPal】では、事実上の世界標準形式に従ってメールを送信しています。
しかし、お使いのサーバーのMTAがqmailの場合、qmailのバグにより世界標準形式が崩れます。 このバグを放置してそのまま送信した場合、正しい形式で送信されないことになります。
大抵のメーラーは作者の善意により、正しくない形式のメールでも、きちんと表示されるように作られています。 しかし、一部のメーラーでは対応していないため、正しく表示されない場合もあります。
この場合、見られる症状は、
  • メールのヘッダが本文に表示される。
  • 件名、送信者名などが途中で切れる、あるいは空欄になる。
などです。
【毎度ありがとうメール for PayPal】では、自動でMTAを判定し、qmailのバグを吸収するようにしてはいますが、全てのサーバーで100%正しい判定ができるとは限りません。
どうしても正しい形式で送信されない場合は、次の設定をしてください。
  1. お使いのサーバーにインストールされているMTAを調べます。
    複数インストールされている場合は、PHPから利用しているMTAを調べます。
    お分かりにならない場合はお使いのサーバーにお問い合わせください。
  2. 【毎度ありがとうメール for PayPal】にログインし、【管理者情報など】-【メールの改行コードを設定します】を開きます。
  3. MTAがqmailの場合は【LF】を、それ以外のMTAの場合は【LFCR】を指定してください。
  4. 【更新する】ボタンをクリックします。

もしこの方法で解決した場合、次のことに気をつけてください。
  • サーバーを変更した場合、あるいはサーバーのMTAが変わった場合。
  • qmailのバージョンアップによりバグが解消された場合。

qmailのバグに関しては、これ以上の対応はできかねます。