PHP と PayPal を使用したオンライン支払い

WBOY
リリース: 2023-05-11 15:50:02
オリジナル
2083 人が閲覧しました

インターネットの急速な発展に伴い、製品やサービスをオンラインで販売することを選択する企業が増えており、企業にとってオンライン支払いが大きなニーズとなっています。 PayPal は、世界をリードするオンライン決済プラットフォームとして、多くの企業にとって最初の選択肢となっています。

この記事では、PHP と PayPal を使用してオンライン決済を実装する方法を紹介します。次のステップに分けて説明します:

  1. PayPal アカウントとアプリケーションの作成
  2. PayPal SDK の統合
  3. 支払いトークンの取得
  4. 支払いの処理
  5. 支払い確認の処理
  6. PayPal アカウントとアプリケーションの作成

PayPal を使用して支払いを行うには、PayPal アカウントとアプリケーションを作成する必要があります。 PayPal デベロッパー センターを通じてアプリケーションを作成する手順は次のとおりです:

1.1. PayPal デベロッパー センターにログインします
まず、PayPal デベロッパー センター (https://開発者.paypal.com/)。

1.2. アプリケーションの作成
デベロッパー センターに入ったら、[マイ アプリケーションと認証情報] ページで新しいアプリケーションを作成する必要があります。 [アプリの作成] ボタンをクリックし、アプリ名を入力し、アカウントの種類 (テストまたは運用) を選択します。

1.3. クライアント ID とシークレットの取得
作成が成功すると、アプリケーションの詳細ページでクライアント ID とシークレットを見つけることができます。これら 2 つの値は、将来 PayPal と通信するときに使用する必要があるものです。安全な場所に保管してください。

  1. PayPal SDK の統合

PHP アプリケーションで PayPal を使用するには、PayPal が公式に提供する PHP SDK を使用できます。これを Composer を通じてアプリケーションに統合できます。

Composer に PayPal SDK を追加する手順は次のとおりです:

2.1. Composer.json ファイルを作成します
PHP アプリケーション ディレクトリに、Composer.json ファイルを作成する必要があります。 Composer は、アプリケーションに追加するパッケージを認識しているということです。次のコンテンツを Composer.json に追加します:

{

"require": {
    "paypal/rest-api-sdk-php": "*"
}
ログイン後にコピー

}

2.2. Composer の実行
ターミナルを開き、アプリケーション ディレクトリに入り、次のコマンドを実行します。 command:

composer install

これにより、PayPal SDK を含む、Composer.json ファイルで指定したすべてのパッケージがインストールされます。

  1. 支払いトークンの取得

オンライン支払いを処理する前に、支払いトークンを取得する必要があります。このトークンは、PayPal に支払いリクエストを送信するために使用されます。

支払いトークンを取得する手順は次のとおりです:

3.1. SDK パラメータの設定
PHP アプリケーションでは、クライアント ID やクライアント ID などの PayPal SDK の基本パラメータを設定する必要があります。秘密やその他の情報。具体的な内容は次のとおりです:

use PayPalRestApiContext;
use PayPalAuthOAuthTokenCredential;

$clientId = 'Your Client ID';
$clientSecret = 'Your Secret';

$apiContext = new ApiContext(

new OAuthTokenCredential(
    $clientId,
    $clientSecret
)
ログイン後にコピー

);

3.2. 支払いリクエストの作成
次に、支払いリクエストを作成する必要があります。リクエストには支払い総額や通貨の種類などの情報を含めてください。

以下は支払いリクエストのコードです:

use PayPalApiPayer;
use PayPalApiAmount;
use PayPalApiTransaction;
use PayPalApiRedirectUrls;
use PayPalApiPayment;

$payer = new Payer();
$payer->setPaymentMethod('paypal');

$amount = new Amount();
$amount-> setTotal(' 10.00')

->setCurrency('USD');
ログイン後にコピー

$transaction = new Transaction();
$transaction->setAmount($amount)

->setDescription('付款描述');
ログイン後にコピー

$redirectUrls = new RedirectUrls();
$ redirectUrls->setReturnUrl('http://www.yourwebsite.com/success')

->setCancelUrl('http://www.yourwebsite.com/cancel');
ログイン後にコピー

$payment = new Payment();
$payment->setIntent('sale ')

->setPayer($payer)
->setRedirectUrls($redirectUrls)
->setTransactions(array($transaction));
ログイン後にコピー

3.3. 支払いトークンを取得する
最後に、支払いリクエストと API コンテキストを使用して、PayPal にリクエストを送信し、支払いトークンを取得する必要があります。

以下は支払いトークンを取得するコードです:

try {

$payment->create($apiContext);
$approvalUrl = $payment->getApprovalLink();
ログイン後にコピー

} catch (Exception $ex) {

echo $ex->getMessage();
ログイン後にコピー

}

  1. 支払いの処理

支払いトークンを取得したら、それを使用して支払いを処理できます。つまり、支払いリンクをユーザーにリダイレクトして、PayPal で注文の支払いができるようにします。

支払いを処理する手順は次のとおりです:

4.1. ユーザーを PayPal にリダイレクトする
取得した支払いリンクにユーザーを直接リダイレクトして、支払いプロセスを開始できます。

ユーザーをリダイレクトするコードは次のとおりです:

header("Location: $approvalUrl");

4.2. ユーザーが支払いを完了する
Whenユーザーが支払いを完了すると、PayPal は指定した戻り URL にユーザーをリダイレクトします。

  1. 支払い確認の処理

ユーザーが支払いを完了すると、注文ステータスと在庫を更新できるように、PayPal はアプリケーションに支払い確認を送信します。

支払い確認を処理する手順は次のとおりです:

5.1. 支払い確認の処理
支払い ID を取得し、PayPal にリクエストを送信することで支払いを確認できます。支払い ID は、ユーザーが支払いを行うときに PayPal によって生成されます。

以下は支払い確認を処理するコードです:

use PayPalApiPayment;

$paymentId = $_GET['paymentId'];
$payment = Payment: :get ($paymentId, $apiContext);

5.2. 注文ステータスと在庫の更新
支払いを確認したら、注文ステータスと商品在庫を更新できます。ここでは、商品の数を減らすなどのことができます。

すべてがうまくいけば、PHP と PayPal を使用したオンライン支払いが正常に実装されたことになります。これはプロセスの一部にすぎませんが、PHP と PayPal SDK を使用して支払いトークンを取得し、支払いを処理し、支払い確認を処理する方法を説明しました。製品やサービスがオンラインで販売されている場合、オンライン支払いプラットフォームとして PayPal を使用することは非常に良い選択となります。

以上がPHP と PayPal を使用したオンライン支払いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート