1

无法弄清楚如何以及在何处将1.payment_method设置为“IMMEDIATE_PAYMENT_REQUIRED”,覆盖2.brand_name(卖家在 PayPal 帐户上的默认名称)和3.To getan invoice_id (order_id) onApprove。

我有以下 JavaScript 客户端 /v2 API PayPal 代码,除了我想要设置/获取的 3 个新变量外,它运行良好。

paypal.Buttons({
                    style: {
                        color: 'gold',
                        shape: 'pill',
                        height: 40
                    },
                    commit: true,
                    createOrder: function (data, actions) {
                        return actions.order.create({

                            purchase_units: [{
                                    amount: {
                                        value: 20.00
                                    },
                                    description: 'My company',
                                    invoice_id: '234567890',
                                    soft_descriptor: 'mysite.com'
                                }]
                        });
                    },
                    onApprove: function (data, actions) {
                        return actions.order.capture().then(function (details) {
                            var name = details.payer.name.given_name;
                            alert('Transaction completed by ' + name);
                        });
                    }
                }).render('#paypal-button-container');
4

1 回答 1

1

在 createOrder 中,payment_method -> payee_preferredhttps ://developer.paypal.com/docs/api/orders/v2/#definition-payment_method

application_context -> brand_namehttps ://developer.paypal.com/docs/api/orders/v2/#definition-order_application_context

由于您已经在 createOrder 中设置了 invoice_id,因此在 onApprove 中您是否完成console.log(details)并查看了所有子对象?

请注意,invoice_id 必须是每个成功交易的唯一值,因此它不应该是硬编码字符串。

......

例子:

                createOrder: function (data, actions) {
                    return actions.order.create({

                        purchase_units: [{
                                amount: {
                                    value: 20.00
                                },
                                description: 'My company',
                                invoice_id: '234567890',
                                soft_descriptor: 'mysite.com'
                            }],
                        application_context: {
                            brand_name: "MyBusiness",
                        },
                        payment_method: {
                            payee_preferred: "IMMEDIATE_PAYMENT_REQUIRED",
                        }
                    });
                },
于 2020-06-12T05:57:57.393 回答