Я хочу создать веб-приложение, в котором пользователи могут платить другим пользователям через свои учетные записи PayPal.
Что-то похожее на это: https://developer.paypal.com/demo/checkout/# / pattern / client
Страница, на которой пользователи могут нажать кнопку для оплаты через Paypal или кредитной картой, другому пользователю . Но я не вижу, как в этом примере я могу настроить учетную запись получателя. Похоже, что платеж сделан на мой счет, но я хочу, чтобы платеж был сделан другому пользователю, которого он выбрал .
Я также просмотрел все эти API: https://developer.paypal.com/docs/api/rest-sdks/#, но я не могу найти пример, который позволяет построить клиент, где пользователь платит другому пользователю. И, конечно же, мне нужно получить подтверждение, что оплата была произведена.
РЕДАКТИРОВАТЬ:
Я пробовал код здесь: https://www.npmjs.com/package/@paypal / checkout-server-sdk
И обновлено, чтобы добавить поле получателя:
exports.pay = function (req, res) {
// 1. Set up your server to make calls to PayPal
// 1a. Import the SDK package
const paypal = require('@paypal/checkout-server-sdk');
// 1b. Add your client ID and secret
const PAYPAL_CLIENT = 'xxx';
const PAYPAL_SECRET = 'yyy';
// 1c. Set up the SDK client
const env = new paypal.core.SandboxEnvironment(PAYPAL_CLIENT, PAYPAL_SECRET);
const client = new paypal.core.PayPalHttpClient(env);
// 2. Set up your server to receive a call from the client
// 3. Call PayPal to set up a transaction with payee
const request = new paypal.orders.OrdersCreateRequest();
request.requestBody({
"intent": "CAPTURE",
"purchase_units": [
{
"amount": {
"currency_code": "USD",
"value": "100.00"
},
"payee": {
"email_address": "payee@gmail.com"
}
}
]
});
const createOrder = async function () {
const response = await client.execute(request);
console.log(`Response: ${JSON.stringify(response)}`);
// If call returns body in response, you can get the deserialized version from the result attribute of the response.
console.log(`Order: ${JSON.stringify(response.result)}`);
return res.status(200).json(response.result);
};
createOrder();
};
Возвращает список из 4 ссылок. Второй, похоже, перенаправляет клиента на (https://www.sandbox.paypal.com/checkoutnow?token=9RM83779YH010823U). Но если я go там, я все еще не вижу адрес получателя (payee@gmail.com) в "отправлено".