GOLDOFF

A Telegram shop for Standoff 2 gold and Roblox Robux: over 100,000 users, up to 1,500 active a day. For two and a half years I was its only developer.

Period
2023–25
Code
Closed
Main menu: buying, withdrawing, selling gold and the profile, all on buttons. Screenshots come from a demo copy with made-up data.

The task

An in-game currency shop that lives entirely inside Telegram: balance top-ups, withdrawals into the game, reviews and a partner programme. The owner and a couple of admins who handled requests worked with the bot.

I built the first version in 7 days in the summer of 2023, when I was just starting out, and grew it for two years on the fly without a rewrite: the bot was live and taking payments the whole time. aiogram 2 and SQLite held up past 100,000 users, but today I'd pick aiogram 3, PostgreSQL and tests.

What I did

  1. 01

    Balance top-ups

    Automatic payments checked against the provider's API: first Aaio via my own AaioAsync, later FreeKassa. Plus manual card transfers, with the receipt checked by an admin.

  2. 02

    Withdrawals into the game

    Gold goes out through a skin listed on the Standoff 2 market, Robux through a Game Pass with Roblox's fee factored in. An admin reserves a request so two people never take the same one, and overdue requests are listed separately.

  3. 03

    Money without duplicates

    Manually confirmed top-ups were sometimes credited twice; I found and closed the gap. Payments checked through the API never doubled once.

  4. 04

    Growth inside the bot

    Promo codes, referral bonuses, partners with their own links and share, a top-donors board, a summer contest and star-rated reviews.

  5. 05

    An admin panel in Telegram

    Admin roles and permissions, staff with a profit share and payout history, stats, bans, a maintenance mode, rates and payment methods. Broadcasts to the whole base within Telegram's limits.

Stack

  • Python
  • aiogram
  • aiohttp
  • SQLite
  • APScheduler