Помочь реализовать Выплаты по токену в платежной системе CloudPayments

1 000 руб. за проект
26 сентября 2022, 14:57 • 2 отклика • 17 просмотров
В платежной системе CloudPayments есть "Выплаты по токену" - https://developers.cloudpayments.ru/#vyplata-po-tokenu

В описании есть такой пункт "Можно воспользоваться механизмом надежной аутентификации запроса на выплату. Для этого передайте в нашу поддержку сертификат с публичной частью ключа. Далее сгенерируйте подпись на основе тела запроса и разместите ее в заголовке X-Signature в base64 формате. CloudPayments проверит вашу подпись, используя CryptoService. Если подпись валидна, то обработка запроса продолжится, если нет — обработка прекратится."

Жирным выделил то что мне не понятно. Каким образом передать этот заголовок им в запросе?

Использую этот npm https://www.npmjs.com/package/cloudpayments Метод для выплат chargeTokenPayout

В серверной части сейчас так:
const client2 = new ClientService({
endpoint: 'https://api.cloudpayments.ru',
privateKey: 'key',
publicId: 'key'
});

const clientApi2 = client2.getClientApi();

app.post('/token_payout', (req, res) => {
pool.query('SELECT * FROM user_tokens WHERE user_id = ? AND selected = 1', [req.user.userId], (err, result) => {

if (err) return res.send({err: err});

if (!!result.length) {
clientApi2.chargeTokenPayout({
Amount: req.body.amount,
AccountId: req.user.userId,
Token: result[0].token,
Currency: 'RUB'
}).then(data => res.send(data)).catch(err => res.send(err));
}
});
});

С фронтэнда обращаюсь на этот эндпоинт с данными:
f(
'/video/token_payout',
{
Amount: 110,
AccountId: 66,
Token: "tk_5019298343504ea5ee08a8176ed48",
Currency: "RUB"
},
'POST',
'no-cors',
{
'X-Signature':signature_out
}
).then(console.log).catch(console.error);