Информационный токен в QIWI Кошельке - как пользоваться

Как вы знаете,  после 25  июля 2023 года QIWI приостановила работу токенов для API, как шестимесячных, так и десятилетних. Если вы успели выпустить приватный и публичные ключи для выставления счетов до февраля 2023 года, то они тоже перестали работать. Сейчас по этим токенам нельзя сделать запрос баланса, выставить счета или перевести деньги с кошелька. 

Информационный токен в QIWI Кошельке - как пользоваться

Однако, еще в июне в QIWI Кошельке появилась возможность выпускать специальный информационный API-токен, который позволяет просматривать баланс и историю операций и получать информацию о кошельке.  В этой статье мы рассмотрим два кейса использования информационного API-токена QIWI Кошелька, как альтернативу старому платежному токену, с примерами кода на PHP.

 

Как выпустить информационный токен в QIWI и что он может

Для начала вам понадобится выпустить информационный API-токен кошелька от QIWI. Для этого перейдите на страницу qiwi.com/api-info и нажмите на кнопку “Выпустить новый токен”. Если вы потеряли номер токена, создайте новый — восстановить старый будет нельзя. Заблокировать уже выпущенный токен вы можете из списка приложений QIWI

После получения токена, вы можете использовать его при авторизации запросов к API, напомню - список методов для нового токена сильно ограничен:

 

Кейс 1: Виджет для сбора донатов во время игрового стрима

Давайте разберем на примерах , как использовать информационный токен вместо старого. Представим, что вы стример и хотите добавить в трансляцию виджет для сбора денег на новый компьютер.

Шаг 1

Разместите ссылку на пополнение вашего кошелька в описании стрима или поверх трансляции. Очень удобно использовать никнейм в кошельке, так вы не светите своим номером телефона.

Шаг 2

После каждого пополнения вам нужно изменять общую сумму собранных денег в виджете, а значит нужно создать запрос на проверку баланса и запускать его раз в минуту или чаще, например через планировщик cron.
Пример скрипта на PHP,  который проверяет баланс кошелька:


<?php

$walletToken = 'YOUR_WALLET_TOKEN';
$apiUrl = 'https://edge.qiwi.com/';

// Функция для проверки баланса
function checkBalance($walletToken) {
 global $apiUrl;
 
 $url = $apiUrl . 'funding-sources/v2/persons/current/accounts';
 
 $headers = array(
   'Authorization: Bearer ' . $walletToken,
   'Content-Type: application/json'
 );
 
 $ch = curl_init();
 curl_setopt($ch, CURLOPT_URL, $url);
 curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
 
 $response = curl_exec($ch);
 curl_close($ch);
 
 // Обработка ответа и вывод баланса
 $result = json_decode($response, true);
 
 if(isset($result['accounts'])) {
   $accounts = $result['accounts'];
   foreach($accounts as $account) {
     if($account['hasBalance']) {
       $balance = $account['balance']['amount'];
       $currency = $account['balance']['currency'];
       
       echo 'Баланс: ' . $balance . ' ' . $currency;
     }
   }
 }
}
checkBalance($walletToken); //запуск функции проверки баланса

?>

Шаг 3

После запроса баланса, если он изменился, вам нужно добавить обновленную сумму в виджет и все пользователи увидят, сколько вам еще осталось собрать.
Промежуточные данные о собранной сумме в каждом стриме можно хранить в отдельной базе данных.

 

Кейс 2: Автоматическая запись на платный йога-семинар

Например,  вы преподаватель по йоге и организуете еженедельные платные вебинары со своими учениками. Отправлять каждому ссылку на трансляцию не всегда удобно и занимает много времени , поэтому можно воспользоваться информационным токеном и автоматизировать этот процесс.

Шаг 1 

Отправьте в чат ил группу со своими учениками ссылку на пополнение кошелька, стоимость доступа к вебинару  и попросите в комментарии к переводу указать email, на который нужно отправить ссылку на трансляцию.

Шаг 2 

Создайте скрипт (или попросите друга айтишника), который будет проверять историю операций и получать email адрес для отправки письма.

Пример скрипта на PHP:

<?php

$walletToken = 'YOUR_WALLET_TOKEN';
$apiUrl = 'https://edge.qiwi.com/';

// Функция для проверки комментария к переводу
function checkTransferComment($walletToken) {
 global $apiUrl;
 
 $url = $apiUrl . 'payment-history/v2/persons/current/payments?rows=10';
 
 $headers = array(
   'Authorization: Bearer ' . $walletToken,
   'Content-Type: application/json'
 );
 
 $ch = curl_init();
 curl_setopt($ch, CURLOPT_URL, $url);
 curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
 
 $response = curl_exec($ch);
 curl_close($ch);
 
 // Обработка ответа и проверка комментария
 $result = json_decode($response, true);
 
 if(isset($result['data'])) {
   $transactions = $result['data'];
   foreach($transactions as $transaction) {
     $comment = $transaction['comment'];
     $email = getEmailFromComment($comment);
     
     // Проверка email и добавление в список записей на семинар
     if(validateEmail($email)) {
       addToYogaSeminar($email);
     }
   }
 }
}

// Функция для извлечения email из комментария
function getEmailFromComment($comment) {
 // Реализация извлечения email из комментария, например, с использованием регулярных выражений
 
 return $email;
}

// Функция для проверки валидности email
function validateEmail($email) {
 // Реализация проверки валидности email,   например, с использованием регулярных выражений  
 return $valid;
}

// Функция для отправки письма
function addToYogaSeminar($email) {
 // Реализация отправки письма на указанный email со ссылкой на семинар
}

// Пример использования функции проверки комментария к переводу
checkTransferComment($walletToken);

?>

 

Шаг 3

Настройте запуск скрипта на сервере раз в минуту с помощью планировщика cron, для имитации отправки письма сразу после поступления перевода.

 

В данном примере мы использовали информационный API-токен QIWI Кошелька для проверки комментария к переводу и автоматической отправки письма с ссылкой на платный йога-вебинар на основе указанного в комментарии email.


Надеюсь, эти два примера использования информационного API-токена QIWI помогут вам понять, как его можно использовать для различных целей. 

 

Зачем принимать деньги на кошелек если есть ограничения на вывод?


Несмотря на временные ограничения при при выводе на карту в кошельке можно выпустить карту и платить ей в магазинах и интернете,  а внутри кошелька есть много компаний, которые можно оплатить прямо из приложения. Например там можно пополнить Стим с самой низкой комиссией.

Добавить комментарий

Содержимое данного поля является приватным и не предназначено для показа.

Ограниченный HTML

  • HTML-теги не обрабатываются и показываются как обычный текст
CAPTCHA на основе изображений
Введите символы, которые показаны на картинке.