PayPal Payflow API を使用して、定期支払いサービスのあるライブ Payments Pro アカウントを使用して支払いトランザクションを処理する Web サイトをセットアップしました。最初に安全なトークンを要求し、次にトランザクションをコミットすることで機能します。Hosted Pages(レイアウトc)とTransparent Redirectの両方を使用して、これを機能させています。payflowpro.paypal.com URL を使用する Payflow_dotNet dll を使用しています。
今、セキュアトークンを使用して定期支払いを設定できないと言われました(そして発見されました)ので、2つのステップでこれを行っています
- 認可トランザクションを作成する
- トランザクションを定期支払いプロファイルに変換する
したがって、ステップ1が機能しています。しかし、ステップ 2 には問題があります。サンプルコード:
PayflowNETAPI PayflowNETAPI = new PayflowNETAPI();
string secureTokenID = PayflowUtility.RequestId;
string response = PayflowNETAPI.SubmitTransaction(nvpstring, secureTokenID);
nvpstring の場所
PARTNER[6]=PayPal&VENDOR[13]=myvendor&USER[6]=Robert&PWD[8]=mypassword&
TRXTYPE=R&ACTION=A&TENDER=C&INVNUM=243&PROFILEREFERENCE=243&PROFILENAME[38]=Mark Groseth--243--Science Center Fund&
START=09182014&TERM=0&PAYPERIOD=MONT&AMT[4]=1.07&ORIGID=ESJPC2894AFC
ここで、ORIGID は、承認トランザクションの作成時に返された PNREF です。これにより、RPREF と RP0000000005 のような ProfileID が得られます。それで、それはどこに行きましたか?なぜうまくいかなかったのですか?