Вот мой NODEJS запрос приложения. Я перенаправляю клиента на approve_url
, где он пишет свои данные. Когда PayPal принимает данные клиента, он перенаправляет учетную запись обратно на return_url
.
. Вопрос в том, что после успешного перенаправления клиент не получает оплату, и я не вижу никаких действий в моем PayPal. Что я делаю не так?
let pay_req = {
'intent': 'CAPTURE',
"application_context": {
'return_url': `https://api.domain.com/orders/success`,
'cancel_url': `https://api.domain.com/orders/cancel`,
"brand_name": "Domain",
"locale": "en-US",
landing_page: "BILLING",
"user_action": "PAY_NOW"
},
"items": [
{
"name": entity.item.name,
"description": entity.item.description,
"unit_amount": {
"currency_code": "USD",
"value": entity.item.price
},
"quantity": request_body.qty,
"category": "PHYSICAL_GOODS"
}
],
shipping_type: "shipping",
purchase_units: [{
"amount": {
"currency_code": "USD",
'value': total,
"breakdown": {
"item_total": {
"currency_code": "USD",
"value": subtotal
},
"shipping": {
"currency_code": "USD",
"value": shipping
}
}
}
}]
};
request.requestBody(pay_req);
let payPalClient = client();
let order;
try {
order = await payPalClient.execute(request);
} catch (err) {
// 4. Handle any errors from the call
console.error(err);
return err;
}
await strapi.services.order.update(
{
id: entity.id
},
{
paypal_token: order.result.id
}
);
var links = {};
order.result.links.forEach(function (linkObj) {
links[linkObj.rel] = {
'href': linkObj.href,
'method': linkObj.method
};
})
return links["approve"].href;