サブスクリプションまたは1回払いだったのであれば、私は私の支払いフローでPayPalを統合した、これは何が起こるかであることを知っていることはありません:支払作品が、ユーザーはそれがペイパルのページ
- ユーザーに来ますページ。支払いボタンをクリックします
- ユーザーは最初に
SetExpressCheckout
を呼び出して、Paypalにリダイレクトされるページにリダイレクトされます。 (彼は一度に77ドル、その後毎月1年間同じ金額を請求されるので、最初の金額は設定せず、代わりに直接差し引く) - 戻ったら、彼は確認をクリックしますボタンをクリックし、
DoExpressCheckout
を使用して1回の支払いを差し引くと、請求プロファイルが作成されます。
すべて正常です。私は毎月支払いを受ける。ユーザーは開始時に2回課金されません。
問題:ユーザーがペイパルにリダイレクトされたとき、彼は私が設定したITEM NAMEとDESCRIPTIONを見ています。私。 PayPalからの説明では、支払いが簡単な購読ボタンを使用する場合のように、取引が1回であるかサブスクリプションであるかはわかりません。 Paypalには金額だけが記載されていますが、取引の種類は記載されていません。
NVPEncoder encoder = new NVPEncoder();
encoder.add("METHOD","SetExpressCheckout");
encoder.add("RETURNURL",returnURL);
encoder.add("CANCELURL",cancelURL);
encoder.add("CURRENCYCODE","USD");
encoder.add("AMT",amt);
encoder.add("BILLINGPERIOD", "Month");
encoder.add("BILLINGFREQUENCY", "1");
encoder.add("PROFILESTARTDATE",dateFormatGmt.format(new Date()));
encoder.add("L_BILLINGTYPE0", "RecurringPayments");
encoder.add("L_BILLINGAGREEMENTDESCRIPTION0",package_name);
encoder.add("L_NAME0",package_name);
encoder.add("L_AMT0",amt);
encoder.add("L_QTY0","1");
String strNVPRequest = encoder.encode();
String ppresponse = (String) caller.call(strNVPRequest);
NVPDecoder resultValues = new NVPDecoder();
resultValues.decode(ppresponse);
String strAck = resultValues.get("ACK");
if (strAck !=null && !(strAck.equals("Success") ||
strAck.equals("SuccessWithWarning"))) {
response.sendRedirect("APIError.jsp");
} else {
response.sendRedirect(redirectUrl);
}
あなたが持っているかの例を提供する必要がありますあなたのフォームを実装しました。私はあなたがすべてのドキュメントを読んだこと、そしてあなたが正しいcmd値を渡していることを確認します。 https://www.paypal.com/eBay/cgi-bin/webscr?cmd=p/pdn/tech-overview-subscriptions-outside –
コードを追加しました。 私はここでウェブサイト決済プロを使用しています。私はPaypalにPOSTデータを送信してフォームを実装しようとしませんでした。しかし今、私はそれを考えるようになりました。それはシームレスに機能し、メンバーシップウェブサイト上で実装する前に知っておくべきことがありますか? –