付款后显示贝宝交易明细

时间:2018-08-03 11:56:47

标签: javascript ajax paypal-sandbox

在我的网站上使用Paypal成功付款后,浏览器仅显示警报:

// Execute the payment
  onAuthorize: function (data, actions) {
    return actions.payment.execute()
      .then(function () {
        // Show a confirmation message to the buyer

        window.alert('Compra realizada con éxito. Recibirá más detalles por email!');

      });
  }

我现在正在使用沙盒选项,但是我会知道如何为用户提供有关交易的更多详细信息。

我看到函数中有一个“数据”参数,是否有交易明细?如果是,我如何阅读它们以便以后向用户显示?

2 个答案:

答案 0 :(得分:1)

运算结果被传递到回调函数,并可以通过以下方式访问:

.then( function(result) {
        console.log(result); // Logs all the stuff that gets back from Paypal
});

根据the doc

// Execute the payment:
    // 1. Add an onAuthorize callback
    onAuthorize: function(data, actions) {
      // 2. Make a request to your server
      return actions.request.post('/my-api/execute-payment/', {
        paymentID: data.paymentID,
        payerID:   data.payerID
      })
        .then(function(res) {
          // 3. Show the buyer a confirmation message.
        });
    }

答案 1 :(得分:0)

成功响应将返回对交易的确认,其中包含批准状态和交易ID,或者您可以看到here

    // Wait for the payment to be authorized by the customer

 onAuthorize: function(data, actions) {

    // Get the payment details

    return actions.payment.get().then(function(data) {

        // Display the payment details and a confirmation button

        var shipping = data.payer.payer_info.shipping_address;

           // Execute the payment

            return actions.payment.execute().then(function() {

                // Show a thank-you note
   window.alert('Compra realizada con éxito. Recibirá más detalles por email!');
            });
        });
    });
}