Реализация пакета NPM для NodeJS реализующая получение QR СБП кода, через процессинг Банка Т-Банк (Тинькофф)
Данная реализация класса написана исключительно для личного использования, и выложена на общедоступный ресурс как один из многих примеров того, как это можно реализовать.
Проверить корректность формирования токена
Описание API Т-БАНК (Прием платежей)
const TBANKQR = require('@koreets61/tbankqr');
const test = new TBANKQR({
secretKey: "12345",
terminalKey: "12345"
});
secretKey - Пароль ;
terminalKey - Терминал;Находятся: Личный кабинет -> Интернет-эквайринг -> Магазины -> Терминалы
// Amount - Сумма в копейка
// Description - Описание что продаем
// OrderId - Уникальный внутренний номер заказа
// qr_only - Прислать сразу изображение QR в Base64
const param = {
Amount: 10000,
Description: "Это тест",
OrderId: "TEST_788",
qr_only: true
};
test.init(param).then(results => {
console.log('======================== results ========================');
console.log(results);
console.log('=========================================================');
}).catch(error => {
console.log('========================= error =========================');
console.log(error);
console.log('=========================================================');
});
{
status: 'ok',
data: {
qr: resJson.Data,
TerminalKey: "12345",
OrderId: "TEST_788",
PaymentId: "123456789",
Amount: 10000
}
}
Смотреть Описание API Т-БАНК (Прием платежей) в разделе Стандартный платеж
// PaymentId - Идентификатор платежа в системе Т-Кассы
const PaymentId = "123456789";
test.GetState(PaymentId).then(results => {
console.log('======================== results ========================');
console.log(results);
console.log('=========================================================');
}).catch(error => {
console.log('========================= error =========================');
console.log(error);
console.log('=========================================================');
});
{
status: 'ok',
data: {
state: "NEW",
TerminalKey: "12345",
OrderId: "TEST_788",
PaymentId: "123456789",
Amount: 10000
}
}
Смотреть Описание API Т-БАНК (Прием платежей) в разделе Статусная модель платежа
// PaymentId - Идентификатор платежа в системе Т-Кассы
const param = {
PaymentId: "123456789",
Amount: 10000
};
test.Cancel(param).then(results => {
console.log('======================== results ========================');
console.log(results);
console.log('=========================================================');
}).catch(error => {
console.log('========================= error =========================');
console.log(error);
console.log('=========================================================');
});
{
status: 'ok',
data: {
state: "NEW",
TerminalKey: "12345",
OrderId: "TEST_788",
PaymentId: "123456789",
OriginalAmount: 10000,
NewAmount: 0,
Message: "OK",
Details: "None"
}
}
Смотреть Описание API Т-БАНК (Прием платежей) в разделе Отмена платежа