私は自分のアプリケーションにPayPal支払いを実装しています。 私はLaravel Frameworkとmerchant-sdk-phpパッケージを使ってNVP/SOAP APIを処理しています。私はREST APIを使いたいと思っていますが、NVP/SOAP APIでのみ可能であることが分かっている限り、定期的な期間ではなくさまざまな量の参照トランザクションを作成する必要があります。PayPalさらに標準以外の参照取引との請求契約
ショートカットでの支払フロー:
1.支払人は、 "SetExpressCheckout"メソッドを使用して請求契約を作成するための "接続"ボタンをクリックします。金額は0に設定され、請求のための請求契約フィールドが追加されます。顧客はPayPalにリダイレクトされ、自分のアカウントにログインし、口座引き落としに同意し、最終的に私のリターンURLにリダイレクトされます。
2.応答が来たら、returnアクションが発生します(これはreturnurlフィールドに渡されます)。次にpaypal resposneからのトークンを使用して、私はCreateBillingAgreementメソッドを使ってデータベースに格納されている "BillingAgreementID"を取得します。
3. "BillingAgreementID"を使用して "DoReferenceTransaction"リクエストを行います。ログインのプロンプトは表示されず、すべてがシーンの背後で起こっています。最後に、私はトランザクション後に応答を取得します。
私は知りたいと思うと思う:
1.請求先を作成するときに消費者が使用した電子メールアドレスを取得する方法はありますか?私はPayPalアカウント(上記の電子メールに関連する)が口座引き落としに設定されていることをアプリケーションに表示したいのですか?
2.私は、 "BillingAgreementID"と "DoReferenceTransaction"の両方の後にdatabseで何らかのアクションを行いたいと思います。 「DoReferenceTransaction」フィールドの「PaymentStatus」フィールドに「Completed」と設定されていれば、その取引は完全に完了しています。つまり、デジタル商品を共有することはできません。
すべての貢献に感謝します!