我正面临着使用 paypal 智能按钮的新行为,带余额按钮的支付不再有效,变得无法点击,根本没有弹出窗口,我什么都没改变 ^,它在生产和沙盒中停止了某天的工作,使用信用卡支付仍然有效。
代码如下:
try {
const FUNDING_SOURCES = [
paypal.FUNDING.PAYPAL,
paypal.FUNDING.CREDIT,
paypal.FUNDING.CARD
];
paypal.Buttons({
style: {
size: 'small',
color: 'gold',
shape: 'pill',
label: 'checkout'
},
funding: {
allowed: FUNDING_SOURCES
},
onInit: (data, actions) => {
this.logger.log('=====> PAYPAL onInit');
actions.enable();
},
onCancel: (data) => {
this.logger.log('=====> PAYPAL onCancel');
return;
},
createOrder: async (data: any, actions: any) => {
return await actions.order.create({
purchase_units: [
{
reference_id: params.order.orderID,
description: 'Order ID : ' + params.order.orderID,
amount: {
currency_code: params.currency,
value: params.order.finalTotal,
},
breakdown: {
item_total: {
currency_code: params.currency,
value: params.order.total
},
shipping: {
currency_code: params.currency,
value: params.order.orderDelivery.cost
}
},
shipping: {
method: params.order.orderDelivery.mode.code,
address: {
name: {
full_name: fullName
},
address_line_1: address1,
address_line_2: address2,
admin_area_1: city,
admin_area_2: country.name,
postal_code: zipcode,
country_code: country.code2
}
}
}
]
});
},
onApprove: async (data: any, actions: any) => {
const order = await actions.order;
order.capture().then((details: any) => {
// the capture logic here ommited
// This function shows a transaction success message to your buyer.
});
},
onError: (err: any) => {
// the error mgmt logic here ommited
}
}).render('#paypalContainer').then(() => {
params.paymentModeLoaded = true;
});
} catch (e) {
this.logger.log('===> Error Loading paypal buttons \n' + e);
}
我读到这可能与连接的国家/地区有关,但我尝试了多个欧洲国家/地区(使用 VPN)但没有成功
谢谢