1

こんにちは私は少し困惑しています。サンドボックス資格情報を使用してペイパル API 呼び出しを行っています。戻り ACK は次のとおりです: 成功。支払人またはビジネス サンドボックス アカウントにアクセスしても、トランザクションは処理されていません。私はデバッグして、すべてのフィールドにデータを入力しているように見えます。さらに、いくつかのフィールドが欠落していると、エラーがスローされたと思います。これが私が使用しているコードです。

.....

APIProfile apiProfile = ProfileFactory.createSignatureAPIProfile();
                    apiProfile.setAPIUsername(paypalAccount.getApiLogin());
                    apiProfile.setAPIPassword(paypalAccount.getApiPassword());
                    apiProfile.setSignature(paypalAccount.getApiSignature());
                    apiProfile.setEnvironment(paypalAccount.getApiEnvironment());

                    // caller
                    NVPCallerServices callerServices = new NVPCallerServices();
                    callerServices.setAPIProfile(apiProfile);

                    // encoder
                    NVPEncoder encoder = new NVPEncoder();
                    encoder.add(METHOD, METHOD_VALUE);
                    encoder.add(RETURNURL, paypalAccount.getReturnUrl());
                    encoder.add(CANCELURL, paypalAccount.getCancelUrl());
                    encoder.add(CURRENCYCODE, CURRENCYCODE_VALUE);
                    encoder.add(PAYMENTACTION, PAYMENTACTION_VALUE);
                    encoder.add(AMT, payment.getPaymentOrder().getPrice().toString());
                    encoder.add(L_NAME0, L_NAME0_VALUE);
                    encoder.add(L_AMT0, payment.getPaymentOrder().getPrice().toString());

                    // call
                    String NVPRequest = encoder.encode();
                    String NVPResponse = callerServices.call(NVPRequest);
                    NVPDecoder decoder = new NVPDecoder();
                    decoder.decode(NVPResponse);

                    String ack = decoder.get(ACK);
                    payment.setPaymentTransaction(decoder.get(TOKEN));

……

どんな助けでも素晴らしいでしょう!

4

1 に答える 1

0

エクスプレス チェックアウトを使用している場合は、次の 3 つの呼び出しを行う必要があります。

  • SetExpressCheckout (トークンでの応答)
  • GetExpressCheckout
  • DoExpressCheckout

「DoExpressCheckout」が通過すると、サンドボックスのバイヤー アカウントとマーチャント アカウントに記録されたトランザクションを確認できるはずです。

ご覧ください: https://www.x.com/devzone/excerpts/chapter-2-express-checkout

于 2013-03-25T14:41:32.617 に答える