PayPal がホストするページでクレジット カードの支払いを処理するために、安全なトークン方式を使用しています。必要な情報を提供することにより、安全なトークンを生成します
[TRXTYPE=S, AMT=xxx, TENDER=C, ORDERID=xxxxxxxxxxxx, CURRENCY=USD, CREATESECURETOKEN=Y, SECURETOKENID=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx, PARTNER=Paypal, VENDOR=xxxxxx, USER=xxxxxx, PWD=xxxxxx]
次のように成功結果が得られます。
{"RESULT"=>"0", "SECURETOKEN"=>"xxxxxxxxxxxxxxxxxxxxxxxxx", "SECURETOKENID"=>"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", "RESPMSG"=>"Approved"}
その後、これを PayPal に送り返し、そこでユーザーはクレジット カードまたは PayPal での支払いを選択できます。
誰かがクレジットカードで支払う場合、すべて問題ありません.誰かが「PayPal」を使用して支払うことを選択した場合、ユーザーにPayPal資格情報を要求し、請求を受け入れるための別の画面が表示されると提供されます. ユーザーが同意すると、次のエラー メッセージが表示されます。
{"TYPE":"S","RESPMSG":"Original transaction ID not found: xxxxxxxxxxxx","TAX":"0.00","PNREF":"xxxxxxxxxxxx","TENDER":"P","AVSDATA":"XXN","METHOD":"P","SECURETOKEN":"xxxxxxxxxxxxxxxxxxxxxxxxx","AMT":"1.00","SECURETOKENID":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","TRANSTIME":"2014-01-02 06:09:02","ORDERID":"xxxxxxxx36U1","RESULT":"19","DUPLICATE":"2","TRXTYPE":"S","action":"create","controller":"payment_notifications"}
PayPal 関係者から得たサポートによると、「ログを見ると、結果コード 19 でトランザクションが拒否されたようです。これは、このトランザクションに対して入力したトランザクション ID が無効であることを意味します。元のトランザクションを検索したところ、できませんでした。いずれかを見つけてください。つまり、元のトランザクションが有効ではないようです。有効な元のトランザクション ID を指定すると、正常に処理されるはずです。」
しかし、ドキュメントのどこにも、この「トランザクション ID」変数を送信するように提案していません。それがなければ、クレジット カードの支払いを問題なく処理しています。
私の質問:
クレジット カードと PayPal の支払いを受け入れるには、プロセスで何を変更する必要がありますか?
どんな助けでも大歓迎です。