6

Adaptive Payments APIを使用して、API メソッドPayと次のパラメーターを使用して支払いキーを取得しました。

actionType:                      CREATE
receiverList.receiver(0).email:  ...
receiverList.receiver(0).amount: 5
currencyCode:                    EUR
cancelUrl:                       ...
returnUrl:                       ...
requestEnvelope.errorLanguage:   en_US

次に、次の URL で組み込みの支払いフローを開始しました: https://www.sandbox.paypal.com/webapps/adaptivepayment/flow/pay?expType=light&payKey= ...

ライトボックスが再び閉じられた後、PaymentDetails支払いキーでメソッドを呼び出すと、(他の値の中でも) 次の値が得られます。

paymentInfoList.paymentInfo(0).transactionStatus: COMPLETED
status:                                           COMPLETED
actionType:                                       CREATE

ExecutePayそのため、メソッドをまだ呼び出していませんが、支払いは既に実行されているようです。

ドキュメントの状態 (トピック「PayRequest フィールド」の下):

actionType xs:string

(必須) Pay リクエストが受信者に支払うかどうか、または Pay リクエストが支払いリクエストを作成するように設定されているが、ExecutePaymentが呼び出されるまで支払いを実行しないかどうか。

許容値は次のとおりです。
[...]
CREATE– このオプションを使用して、支払い指示を設定しSetPaymentOptions、後で支払いを実行しExecutePaymentます。

私は何を取りこぼしたか?

4

2 に答える 2

3

(この質問が出されてから 3 年経っていることはわかっていますが、別のユーザーがこの質問を参照しているので、とにかく回答します。)

つまり、送信者を PayPal ウェブサイトに送信し、支払いが承認された場合、設定actionTypeに関係なく、支払いはすぐに完了します。

設定の目的はactionType=CREATE、支払いが完了する前に、paykey に対して追加の API 呼び出しを行うための少しの時間を与えることです。これは主に、暗黙的な支払いを行う場合に役立ちます。たとえば、送信者と API 呼び出し元が同じ当事者である場合 (および を設定した場合sender.useCredentials=true、メール アドレスを にsenderEmail設定した場合、または安全なマーチャント アカウント ID を に設定した場合sender.accountId)、または、送信者が以前に承認した事前承認を使用している支払い。これらの種類の支払いは通常すぐに完了するため ( を設定した場合actionType=PAY)、 を設定actionType=CREATEすると、支払いが完了する前に、支払いに対して他の API 呼び出し (SetPaymentOptions など) を行うための少しの時間が与えられます。

ただし、明示的な支払い (送信者が支払いを承認するために PayPal の Web サイトにアクセスする必要がある場合) を行っている場合は、ユーザーを PayPal に送信する前に、これらの追加の呼び出しを行うだけです。

于 2015-04-06T14:39:21.897 に答える
3

最終的には、Preapproval API を使用して Pay を呼び出すだけになりました。私が受け取った電子メールへの返信では、次のように言われました。

"PayPal does not allow you to hold any amount of money in somebody else's PayPal account     and that is why we have Preapproval API."

Create が ExecutePayment の呼び出しを必要とせずに料金を請求するように見える理由はまだわかりませんが、私のワークフロー (これがあなたにとって価値があることを願っています) では、Preapproval API が最適です。

于 2012-03-03T23:16:45.597 に答える