Коллеги, добрый день!
Перечитал документацию Яндекс Деньги и просмотрел все посты по этой теме, но не могу до конца разобраться.
Делаю скелет для небольшого интернет-магазина в телеграмм с возможностью оплаты картой через Яндекс Деньги.
Пока все делаю в ручную прямо из редактора кода, чтобы проверить работоспособность.
Настроил кошелек для отправки уведомлений при получений платежа:
Создал https сервер:
const express = require('express');
const app = express();
const https = require('https');
const fs = require('fs');
const port = 3000;
const options = {
key: fs.readFileSync('./key.pem'),
cert: fs.readFileSync('./cert.pem')
};
const Server = ()=>{
app.post('/receive',(req, res)=>{
console.log('you have got some incoming payment');
res.status(200).send();
});
app.get('/',(req, res)=>{
console.log('get request');
res.status(200).send();
});
https.createServer(options, app)
.listen(port, function () {
console.log('Example app listening on port 3000!')
});
Делаю тест на той же страничке Яндекс Деньги:
Все хорошо и сервер ловит запрос:
В итоге создаю единоразово экземпляр приложения:
yandexMoney.ExternalPayment.getInstanceId(clientId,
function getInstanceComplete(err, data) {
if(err) {
// process error
}
var instanceId = data.instance_id;
// save it to DB
console.log('data.instance_id: ', data.instance_id)
});
После сохранения экземпляра приложения делаю пробную оплату по карте:
var externalPayment = new yandexMoney.ExternalPayment(config.instanceId)
var options = {
pattern_id: 'p2p',
instance_id: config.instanceId,
to: '4100145656XXXXX',
amount: 5,
message: 'testpayment',
merchantArticleId: 123
};
externalPayment.request(options, function requestComplete(err, data) {
if(err) {
// process error
}
var requestId = data.request_id;
console.log('data', data);
externalPayment.process({"request_id": requestId,
ext_auth_success_uri: 'https://t.me/kursy_naXXXXXX,
ext_auth_fail_uri: 'https://t.me/kursy_naXXXXXX'
}, function (err, data) {
if(err) {
// process error
}
// process data
console.log('dataProcess', data)
});
});
Получаю ссылку и параметры для оплаты:
Произвожу оплату, но уведомление не приходит
Возможно дело в секретном слове или еще что-то.
Я перечитал документацию и все посты на тостере, но не могу разобраться как же все таки правильно настроить сервер.
Подскажите как действовать или где можно посмотреть информацию.
Заранее спасибо.