【问题标题】:PayPal Express Checkout.js - send custom parametersPayPal Express Checkout.js - 发送自定义参数
【发布时间】:2017-12-08 23:42:38
【问题描述】:

如何将自定义参数发送到新的 Paypal Express 结帐。我需要发送booking_id 并在成功全额付款后得到同样的结果。

我已经通过paypal官方document,但找不到我们如何发送?

请看下面是我的文件代码:

<!DOCTYPE html>
<head>
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <script src="https://www.paypalobjects.com/api/checkout.js"></script>
</head>
<body>
    <div id="paypal-button-container"></div>
    <script>
        paypal.Button.render({
            env: 'sandbox', // sandbox | production
            client: {
                sandbox:    'AYbCnvobq09Ptmsd1TRp3019CMrSTyaAmrHNv6ox0jl86H9OZFmGCPqHqqfPtqpTYTiIuy_e5UGnclMw',
                //production: '<insert production client id>'
            },
            commit: true,
            payment: function(data, actions) {
                return actions.payment.create({
                    payment: {
                        transactions: [
                            {
                                amount: { total: '0.01', currency: 'USD' }
                            }
                        ]
                    }
                });
            },
            onAuthorize: function(data, actions) {
                return actions.payment.execute().then(function() {
                    window.alert('Payment Complete!');
                });
            }
        }, '#paypal-button-container');
    </script>
</body>    

【问题讨论】:

    标签: php paypal express-checkout


    【解决方案1】:

    我已经解决了问题,我们可以在支付方式中传递参数。如下代码:

    payment: function(data, actions) {
        return actions.payment.create({
            payment: {
                transactions: [
                    {
                        amount: { total: '10', currency: 'USD' },
                        custom: '1452'
                    }
                ]
            }
        });
    },
    

    希望这对开发者有所帮助。

    【讨论】:

    • 知道我能不能让它变得动态化?我的按钮旁边有一个可能会更改的文本字段。
    • @Tiago 是的,你可以让它动态化,你是在使用 $_POST 还是想从数据库中获取数据。
    • JS 中的完全客户端。现在我有旧的托管按钮系统,输入字段与电子邮件字段保持同步。当用户键入自定义电子邮件时,此字段将被填充并与付款流程一起发送。默认情况下,我使用来自 IPN 的买家电子邮件来创建帐户,但他们有此文本字段来提供可选的自定义电子邮件。理想的情况是我可以在动态 JS 按钮中隐藏一个类似的电子邮件字段。这有意义吗?感谢您的回复!
    • 你可以继续这个例子是 here 使用 Checkout.js 的 onAuthorize 方法。
    • 有趣,我明白你的意思了。谢谢。尽管在呈现按钮之后,在单击按钮之前,我无法填充此参数吗?我想要 IPN 中的此信息。如果可能的话,保持更少的步骤也很好。也许这值得在这里提出一个适当的问题...
    【解决方案2】:

    发票号码使用:

          payment: {
                        transactions: [
                            {
                                amount: {
                                        total: '200',
                                        currency: 'BRL'
                                },
                                invoice_number: 100
    
                            }
                        ]
                    }
    

    【讨论】:

    • 你如何通过invoice_number: 100,它将从Paypal返回?
    猜你喜欢
    • 2017-05-12
    • 2018-05-07
    • 2014-07-10
    • 2013-02-04
    • 2015-07-25
    • 2021-02-22
    • 2016-04-26
    • 2018-08-29
    • 1970-01-01
    相关资源
    最近更新 更多