Loading...
PHP, MySQL | Telegram Stars
Кто работал с платежами с ботах через Telegram Stars ? Не понимаю, почему списание не происходит при оплате Вот код php:
php
   <?php $botToken = '';  $apiURL = "https://api.telegram.org/bot" . $botToken; $productTitle = "Звезда"; $productDescription = "Тестовый товар - 1 звезда"; $productPayload = "star_1";  $productPrice = 1;  $currency = 'XTR'; // Валюта $providerToken = "";  function telegramRequest($method, $params = []) {     global $apiURL;     $url = $apiURL . "/" . $method;         if(!empty($params)){        $url .= '?' . http_build_query($params);     }         $response = file_get_contents($url);     return json_decode($response, true); } function sendMessage($chatId, $text, $replyMarkup = null) {     $params = [         'chat_id' => $chatId,         'text' => $text,         'parse_mode' => 'HTML'     ];     if($replyMarkup) {         $params['reply_markup'] = json_encode($replyMarkup);     } telegramRequest('sendMessage', $params); } function createInvoice($chatId) {      global $productTitle, $productDescription, $productPayload, $productPrice, $currency, $providerToken;     $prices = [         ['label' => '1 звезда', 'amount' => $productPrice]     ];     $params = [         'chat_id' => $chatId,         'title' => $productTitle,         'description' => $productDescription,         'payload' => $productPayload,         'provider_token' => $providerToken,         'currency' => $currency,         'photo_url' => "https://img.freepik.com/free-photo/holographic-reminder-with-star-shape-washi-tape_53876-137585.jpg",       'photo_width' => 3600,         'photo_height' => 2338,         'photo_size' => 262000,         'is_flexible' => false,         'prices' => json_encode($prices),         'start_parameter' => "one-star"     ];      return telegramRequest('sendInvoice', $params); } function answerPreCheckoutQuery($preCheckoutQueryId, $ok = true, $errorMessage = null) {      $params = [         'pre_checkout_query_id' => $preCheckoutQueryId,         'ok' => $ok ? true : false,      ];     if($errorMessage) {         $params['error_message'] = $errorMessage;     } telegramRequest('answerPreCheckoutQuery', $params);  } $update = json_decode(file_get_contents('php://input'), true); if (isset($update['message'])) {     $message = $update['message'];     $chatId = $message['chat']['id'];     $text = $message['text'] ?? '';     if ($text === '/start') {       $keyboard = [             'inline_keyboard' => [                 [                     ['text' => 'Купить 1 звезду ⭐', 'callback_data' => 'buy_star'],                 ]             ]       ];         sendMessage($chatId, 'Привет! Нажми кнопку для покупки 1 звезды.', $keyboard);     } } elseif (isset($update['callback_query'])) {    $callbackQuery = $update['callback_query'];    $chatId = $callbackQuery['message']['chat']['id'];    $data = $callbackQuery['data'];    if($data === 'buy_star') {         createInvoice($chatId);    }   telegramRequest('answerCallbackQuery', ['callback_query_id' => $callbackQuery['id']]); } elseif(isset($update['pre_checkout_query'])) {     $preCheckoutQuery = $update['pre_checkout_query'];     $preCheckoutQueryId = $preCheckoutQuery['id'];     $payload = $preCheckoutQuery['payload'];     if ($payload === $productPayload) {        answerPreCheckoutQuery($preCheckoutQueryId);     } else {     answerPreCheckoutQuery($preCheckoutQueryId, false, "Некорректный payload");     } } elseif (isset($update['message']['successful_payment'])) {    $successfulPayment = $update['message']['successful_payment'];    $chatId = $update['message']['chat']['id'];    $payload = $successfulPayment['invoice_payload'];    $telegramPaymentChargeId = $successfulPayment['telegram_payment_charge_id'];    if($payload === $productPayload) {      sendMessage($chatId, "Спасибо за покупку звезды!\nId транзакции: ".$telegramPaymentChargeId);     } else {       sendMessage($chatId, "Ошибка! Неизвестный payload");     } } ?>   
Здравствуйте. Это какой код? Оплата через телеграм старс?
Umidjon4457 , да, да я уже все написал
Толку с этих помогаторов нет, форум вымер видно
Онлайн: 3
Время:
Gen. 0.0855
(c) Bym.Guru 2010-2026