fix pay
This commit is contained in:
@@ -603,7 +603,6 @@ class BotInterface:
|
||||
"rub": amount,
|
||||
"address": invoice.get("address"),
|
||||
"url": invoice.get("url"),
|
||||
"mock": invoice.get("mock", False),
|
||||
"created_at": datetime.now().isoformat(),
|
||||
}
|
||||
await interface.payment_storage.save(invoice["payment_id"], payment_data)
|
||||
@@ -635,10 +634,6 @@ class BotInterface:
|
||||
|
||||
await callback.answer("⏳ Проверяем...")
|
||||
|
||||
# Тестовый режим — сразу начисляем без проверки платежа
|
||||
if payment.get("mock"):
|
||||
status = "paid"
|
||||
else:
|
||||
status = await interface.heleket.check_status(payment["payment_id"])
|
||||
|
||||
if status == "paid":
|
||||
@@ -921,7 +916,6 @@ class BotInterface:
|
||||
"rub": rub,
|
||||
"address": invoice.get("address"),
|
||||
"url": invoice.get("url"),
|
||||
"mock": invoice.get("mock", False),
|
||||
"created_at": datetime.now().isoformat(),
|
||||
}
|
||||
await interface.payment_storage.save(invoice["payment_id"], payment_data)
|
||||
|
||||
@@ -26,8 +26,6 @@ class HelketPayment:
|
||||
|
||||
def __init__(self):
|
||||
self.api_key = settings.HELEKET_API_KEY
|
||||
self.shop_id = settings.HELEKET_SHOP_ID
|
||||
self._mock = not (self.api_key and self.shop_id)
|
||||
|
||||
def _post_headers(self, body_bytes: bytes) -> dict:
|
||||
"""Заголовки для POST-запроса с подписью."""
|
||||
@@ -49,13 +47,9 @@ class HelketPayment:
|
||||
Создаёт счёт на сумму в рублях.
|
||||
Возвращает dict: payment_id, address, url. None при ошибке.
|
||||
"""
|
||||
if self._mock:
|
||||
return {
|
||||
"payment_id": f"mock_{order_id}",
|
||||
"address": None,
|
||||
"url": None,
|
||||
"mock": True,
|
||||
}
|
||||
if not self.api_key:
|
||||
logger.error("HELEKET_API_KEY не задан")
|
||||
return None
|
||||
|
||||
payload = {
|
||||
"amount": str(amount_rub),
|
||||
@@ -90,8 +84,6 @@ class HelketPayment:
|
||||
|
||||
async def check_status(self, payment_id: str) -> str:
|
||||
"""Возвращает: 'paid' | 'pending' | 'expired' | 'error'"""
|
||||
if payment_id.startswith("mock_"):
|
||||
return "pending"
|
||||
try:
|
||||
async with aiohttp.ClientSession() as session:
|
||||
async with session.get(
|
||||
|
||||
@@ -123,7 +123,7 @@ class HelketWebhookServer:
|
||||
try:
|
||||
if clicks:
|
||||
# Прямая покупка переходов
|
||||
await self._balance_storage.add(user_id, clicks)
|
||||
await self._balance_storage.add_balance(user_id, clicks)
|
||||
added_clicks = clicks
|
||||
msg = (
|
||||
f"✅ Оплата получена!\n\n"
|
||||
@@ -134,8 +134,8 @@ class HelketWebhookServer:
|
||||
else:
|
||||
# Пополнение рублёвого баланса → конвертируем в переходы
|
||||
added_clicks = int(rub // settings.CLICK_PRICE_RUB)
|
||||
await self._balance_storage.add(user_id, added_clicks)
|
||||
await self._rub_storage.add(user_id, rub)
|
||||
await self._balance_storage.add_balance(user_id, added_clicks)
|
||||
await self._rub_storage.add_balance(user_id, rub)
|
||||
msg = (
|
||||
f"✅ Пополнение получено!\n\n"
|
||||
f"💳 Сумма: {rub} ₽\n"
|
||||
|
||||
Reference in New Issue
Block a user