有没有办法为@paypal/react-paypal-js createOrder 道具提供送货地址
Is there any way to provide a shipping address to @paypal/react-paypal-js createOrder prop
<PayPalScriptProvider options={{ "client-id": "", currency: "MXN" }}>
<PayPalButtons
createOrder={createOrder}
onApprove={(data, actions) => onApprove(data, actions)}
onError={error => console.log(error)}/>
</PayPalScriptProvider>
我正在这样调用 createOrder 函数:
const createOrder = (data, actions) => {
return actions.order.create({
purchase_units: [
{
amount: {
value: 100.00
},
description: "asdasda",
}
],
intent: "CAPTURE",
}
)
}
我要发送预设的送货地址。
我尝试过的:
像这样在 purchase_units 数组中发送它:
purchase_units: [
{
amount: {
value: 100.00
},
shipping: {
shipping_detail: {
address : {
//here goes the address
}
}
}
}
],
我也试过将它发送到收款人对象,但没有成功。
那么,有什么办法可以做到这一点吗?
Testing here,以下作品:
purchase_units: [{
amount: {
value: '88.44'
},
shipping:{
name:{
full_name:'John Doe'
},
address: {
address_line_1: '1200 Main St',
address_line_2: 'Unit 10',
admin_area_2: 'Phoenix',
admin_area_1: 'AZ',
postal_code: '85001',
country_code: 'US'
}
}
}]
文档位于 purchase_unit_request(密钥名称:shipping)
还有:shipping_detail(shipping_detail是对象名,不是键名)
我添加这个就解决了:
const createOrder = (data, actions) => {
return actions.order.create({
application_context: {
shipping_preferences: 'SET_PROVIDED_ADDRESS', //Just add this and it will take the address
},
purchase_units: [
{
amount: { value: parseInt(`${total}.0`) },
description: `Cuadroy ${cantidad} cuadros 20x20 ${marco}`,
shipping: {
address: {
address_line_1: calle,
address_line_2: colonia,
admin_area_2: municipio,
admin_area_1: estado,
postal_code: cp,
country_code: country,
},
},
},
],
intent: 'CAPTURE',
});
我只需要添加应用程序上下文对象并将运输首选项设置为 SET_PROVIDED_ADDRESS 就是这样。
此外,我已将其 shipping_detail 更改为像其他用户所说的那样运送。
<PayPalScriptProvider options={{ "client-id": "", currency: "MXN" }}>
<PayPalButtons
createOrder={createOrder}
onApprove={(data, actions) => onApprove(data, actions)}
onError={error => console.log(error)}/>
</PayPalScriptProvider>
我正在这样调用 createOrder 函数:
const createOrder = (data, actions) => {
return actions.order.create({
purchase_units: [
{
amount: {
value: 100.00
},
description: "asdasda",
}
],
intent: "CAPTURE",
}
)
}
我要发送预设的送货地址。
我尝试过的:
像这样在 purchase_units 数组中发送它:
purchase_units: [
{
amount: {
value: 100.00
},
shipping: {
shipping_detail: {
address : {
//here goes the address
}
}
}
}
],
我也试过将它发送到收款人对象,但没有成功。
那么,有什么办法可以做到这一点吗?
Testing here,以下作品:
purchase_units: [{
amount: {
value: '88.44'
},
shipping:{
name:{
full_name:'John Doe'
},
address: {
address_line_1: '1200 Main St',
address_line_2: 'Unit 10',
admin_area_2: 'Phoenix',
admin_area_1: 'AZ',
postal_code: '85001',
country_code: 'US'
}
}
}]
文档位于 purchase_unit_request(密钥名称:shipping)
还有:shipping_detail(shipping_detail是对象名,不是键名)
我添加这个就解决了:
const createOrder = (data, actions) => {
return actions.order.create({
application_context: {
shipping_preferences: 'SET_PROVIDED_ADDRESS', //Just add this and it will take the address
},
purchase_units: [
{
amount: { value: parseInt(`${total}.0`) },
description: `Cuadroy ${cantidad} cuadros 20x20 ${marco}`,
shipping: {
address: {
address_line_1: calle,
address_line_2: colonia,
admin_area_2: municipio,
admin_area_1: estado,
postal_code: cp,
country_code: country,
},
},
},
],
intent: 'CAPTURE',
});
我只需要添加应用程序上下文对象并将运输首选项设置为 SET_PROVIDED_ADDRESS 就是这样。
此外,我已将其 shipping_detail 更改为像其他用户所说的那样运送。