### [PayPal決済完了後のユーザーアカウント承認](https://wpforms.com/developers/how-to-approve-a-user-after-a-paypal-payment/)

**公開日:** 2021年9月23日
**作成者:** David Ozokoye

**概要:** このチュートリアルでは、PayPalから支払いステータスが「完了」と返された際にアクションを実行する方法について説明します。

**内容:**

PayPalでの支払いが完了した後、ユーザーを承認したいとお考えですか？カスタムPHPスニペットを使用すれば、支払いステータスに基づいてユーザーを自動的に承認するように登録フォームを変更できます。

「ユーザー登録」アドオンを使用すると、自動承認または手動承認のいずれかでユーザーにサイトへの登録を許可することができます。しかし、会員制サイトを作成しており、PayPalでの支払いが正常に処理されるまでユーザーを承認したくない場合は、そのための小さなコードスニペットが必要になります。

このガイドでは、WordPressでこの機能を実現するためのカスタムスニペットをご紹介します。

---

## フォームの作成

まず、ユーザー登録フォームを作成する必要があります。作成方法についてサポートが必要な場合は、[こちらのドキュメントをご参照ください](https://wpforms.com/docs/how-to-install-and-use-user-registration-addon-with-wpforms/)。

フォームを作成したら、フォームビルダーから **設定 » ユーザー登録** に移動します。 そこで、**ユーザーアクティベーションを有効にする**オプションをオンに切り替えます。

![ユーザーアクティベーションを有効にするオプション](https://wpforms.com/wp-content/uploads/2024/11/enable-user-activation.png)次に、**ユーザーアクティベーション方法**オプションを**手動承認**に設定する必要があります。

![ユーザーアクティベーション方法を「手動承認」に設定](https://wpforms.com/wp-content/uploads/2024/11/user-activation-method.png)## PayPalによる会費の徴収を有効にする

次に、フォームに**支払い**フィールドを追加し、会員資格を有効化するために受け取る金額を指定する必要があります。

フィールドを追加したら、フォームビルダーの**[支払](Payments) » PayPal Standard**に移動し、**[PayPal Standard 支払を有効にする](PayPal Standard payments)**オプションをオンにします。

![PayPal Standard 支払を有効にする](https://wpforms.com/wp-content/uploads/2024/11/enable-paypal-standard-payments.png)その後、PayPalの支払い設定を行うための追加設定画面が表示されます。PayPal支払いの設定についてさらにサポートが必要な場合は、[こちらのドキュメント](https://wpforms.com/docs/install-use-paypal-addon-wpforms/ "WPFormsでのPayPalアドオンのインストールと使用方法")をご覧ください。

## PayPal IPNの設定

このチュートリアルの目的として、PayPalのインスタント・ペイメント・ノーティフィケーション（IPN）を有効にします。これにより、PayPalが支払いのステータスを返した際に、サイトへメッセージが送信され、スニペットがトリガーされるようになります。

**インスタント・ペイメント・ノーティフィケーション（IPN）**の詳細については、[PayPalのIPNに関するドキュメント](https://developer.paypal.com/docs/api-basics/notifications/ipn/IPNIntro/ "IPNのご紹介")をご覧ください。

## 支払い完了後のユーザー承認

それでは、これらをすべて統合するためのスニペットを追加しましょう。サイトへのスニペット追加についてサポートが必要な場合は、[こちらのチュートリアル](https://wpforms.com/developers/how-to-add-custom-php-or-javascript-for-wpforms/ "WPFormsにカスタムPHPまたはJavaScriptを追加する方法")をご覧ください。

上記のスニペットは、フォームID **5**でのみ実行されます。すべてのユーザー登録フォームでこのスニペットを実行したい場合は、スニペット内の該当するブロックを削除するか、コメントアウトしてください。

他に知っておく必要があるIDは、メールフィールドのIDだけです。このチュートリアルでは、メールフォームフィールドのIDは **3** です。

![メールフォームのフィールドIDに合わせてスニペットを更新してください](https://wpforms.com/wp-content/uploads/2021/09/wpforms-add-email-field.jpg)**注：** フィールドIDやフォームIDの探し方についてサポートが必要な場合は、[こちらのチュートリアルをご覧ください](https://wpforms.com/developers/how-to-locate-form-id-and-field-id/)。

ユーザーがフォームを送信した際、支払いステータスが**完了**以外の場合、ユーザーは**未承認**のままとなります。

![このスニペットは、PayPalの支払いが完了としてマークされた後にのみユーザーを承認します](https://wpforms.com/wp-content/uploads/2021/09/wpforms-unapproved-user.jpg)以上です！これで、WPFormsを使用して支払いステータスに基づいてWordPressでユーザーロールを割り当てる方法を学びました。

次に、Form Lockerの設定からPayPalの失敗した支払いを除外したいですか？[Form Lockerの設定でPayPalの失敗した支払いを除外する方法](https://wpforms.com/developers/how-to-exclude-failed-payments-from-paypal-inside-form-locker-settings/ "How to Exclude Failed Payments From PayPal Inside Form Locker Settings")に関するチュートリアルをぜひご覧ください。

## 参照アクション

[wpforms\_paypal\_standard\_process\_complete](https://wpforms.com/developers/wpforms_paypal_standard_process_complete/ "wpforms_paypal_standard_process_complete アクションの使用")

**カテゴリ:** アドオン

**タグ:** PayPal, PHP

---

