ここ数日、私は PayPal SDK for PHP (REST API を使用) を使用した支払い統合の実現に取り組んできました。ただし、いくつかの問題が発生しています。
支払人が支払いを承認するために PayPal サイトにリダイレクトされ、リターン URL にリダイレクトされると、承認された支払いの実行時に PayPal は HTTP 400 ステータス コードを返します。支払いを実行するためのコードは次のとおりです。$paymentId は支払いの作成後に返される ID であり、$payerId は承認とともに送信される PayerID であることに注意してください。
$payment = Payment::get($paymentId);
$paymentExecution = new PaymentExecution();
$paymentExecution->setPayer_id($payerId);
$payment->execute($paymentExecution);
支払いが無効であると表示されます。
{"name":"PAYMENT_STATE_INVALID","message":"現在の支払い状況のため、このリクエストは無効です","information_link":" https://developer.paypal.com/docs/api/#PAYMENT_STATE_INVALID " ,"debug_id":"223647e6e42fb"}
どこで問題が発生するかを調べているときに (API に含まれているサンプルでも同じエラーが発生することに注意してください)、ログ ファイルに次の行を見つけました。
PPHttpConnection: 認証局が無効であるか、見つかりません - バンドルされた CA 証明書ファイルを使用して再試行しています
SDK に含まれている証明書を SDK が見つけられることを確認しました。だから私の推測では、それは無効な証明書です。私は今、何をすべきか迷っています。この問題を解決する方法を知っている人はいますか?