2016-12-08 5 views
0

私はこの文書に従っており、以下のコードで行っています。サーバ統合のないpaypalエクスプレスチェックアウト

paypal.Button.render({ 

     env: 'sandbox', // Optional: specify 'sandbox' environment 

     client: { 
      sandbox: 'xxxxxxxxx', 
      production: 'xxxxxxxxx' 
     }, 

     payment: function() { 

      var env = this.props.env; 
      var client = this.props.client; 

      return paypal.rest.payment.create(env, client, { 
       transactions: [ 
        { 
         amount: { total: ($scope.qty * 19) + '.00' , currency: 'USD' }, 
         item_list: { 
         items: [{ 
          "name": "bag", 
          "quantity": $scope.qty, 
          "price": "19.00", 
          "currency": "USD" 
         }] 
        } 
        } 
       ] 
      }); 
     }, 

     commit: true, // Optional: show a 'Pay Now' button in the checkout flow 

     onAuthorize: function(data, actions) { 

      // Optional: display a confirmation page here 

      return actions.payment.execute().then(function() { 
       // Show a success page to the buyer 
       console.log(data); 
       //save data to db 

      }); 
     } 

    }, '#paypal-button'); 

これはすべてですか?私は次にpaypalで何をすべきですか? 1actions.payment.execute()が失敗していない場合、私は私のサーバに何かを投稿するつもりです。しかし、それだけであれば、paypalのnode.js sdkは何のためになるのでしょうか?今、混乱しています。私はテストアカウントを使って支払いしようとしましたが、残高は差し引かれませんでした。

+0

'actions.payment.execute()'トランザクションを確定し、お金を送信する必要があります。アカウントに表示されませんか?表示されるまでに時間がかかることがあります。あるいは、コンソールのエラーが表示されますか? – bluepnume

+0

@bluepnumeコンソールにエラーはありません。それが十分であれば、paypal for node.js npmは何ですか?アクセストークンとは何ですか? –

+0

私は同じ問題があります。あなたはそれを解決しました。私はコンソールでもエラーが表示されない – Learning

答えて

0

これはあなたが探しているものではないかもしれませんが、

トランザクションから情報を読み取るには、actions.payment.get()を呼び出す必要があります。

return actions.payment.execute().then(function() { 
       actions.payment.get().then(function(data) { 
       if(data.state === 'approved'){ 
        console.log(data); 
        console.log(data.id); 
        // Update orderstatus in backend  
       }else{ 
        console.log(data); 
       } 
       }); 
      }); 
関連する問題