telegram
RUEN
~/cases/approute-shop

AppRoute Shop

Telegram-магазин цифровых кодов. Покупатель платит через Platega, бот сам закупает код у AppRoute и присылает его в чат с инструкцией.

166автотестов, включая одновременные заказы
60 спроверка оплат и заказов
10 минобновление каталога и цен
14последних бэкапов хранится

Задача

Владельцу магазина нужно было продавать цифровые коды — Valorant Points, PlayStation, Apple Gift Card и другие — без ручной работы: покупатель платит, бот сам закупает код у поставщика и отдаёт его.

Что сделал

  • каталог по разделам и регионам, товары AppRoute добавляются по ID
  • автоцены: наценка, комиссия, минимальная маржа и округление — цены идут вслед за закупочными
  • оплата через Platega: СБП или крипта
  • автозакупка и выдача кода в чат вместе с инструкцией, раздел «Мои заказы»
  • проблемные заказы: повтор, ручная выдача, возврат
  • уведомления о продажах, проблемах, низком балансе и чарджбэках
  • админка прямо в боте, бэкапы раз в сутки в приватный канал

Под капотом

  • Без двойных закупок. Каждый заказ закупается под своим ключом. После сбоя бот сначала ищет заказ у поставщика и только потом повторяет покупку.
  • Оплате не верим на слово. Уведомление от платёжки — только сигнал: статус и сумма перепроверяются через API, недоплата уходит в проблемные.
  • Деньги под контролем. Свободный баланс считается с учётом резерва под открытые заказы, есть дневной лимит и стоп-кнопка продаж.
  • Коды зашифрованы в базе, а ключ не попадает в бэкапы.
stack:Pythonaiogram 3aiohttpSQLiteFernetsystemdnginx

Код остаётся у заказчиков, поэтому на страницах кейсов — только описание.