Skip to content
KUTSUYA cover
// Bots·2026·Kutsuya

KUTSUYA

A Telegram bot for two operators: log sales by tapping, from anywhere, in under 30 seconds.

Meet the client. Who they are and who they sell to.

The client

Kutsuya is a Mexican sneaker store that moves pairs through Instagram, run by founder and business partner. The whole operation lives on their phones — sometimes desktops — and logging every sale in the Sheet, field by field, used to eat minutes. We built a Telegram bot where almost everything is a tap: sizes, brands, condition, status and recurring buyers come up as buttons. Only the price gets typed. The client's Sheet updates itself — the same way from the founder's phone, the partner's desktop, or a Telegram open in another city.

What they came to solve, in plain language.

Challenge

  1. 01Two operators — founder and partner — logging from wherever they are, on any device.
  2. 02Each operation has 8+ fields: brand, model, size, condition, cost, price, buyer, status.
  3. 03Typing every field by hand in the Sheet — mobile or desktop — ate minutes per sale.
  4. 04Risk of stepping on each other's edits when both worked the same row at the same time.
ClientKutsuya
Year2026
CategoryBots
Duration3 semanas / 3 weeks
RoleProduct, conversational design with inline keyboards, multi-user auth, Google Sheets integration

What changed between day one and launch.

Before & after

// Before

MANUAL SHEET ENTRY

  • Find the right row and type 8+ fields by hand
  • One person at a time to avoid stepping on edits
  • Slow on the phone, just as slow on desktop
  • Same flow every time, no shortcuts
// After

TELEGRAM TAPS

  • Sizes, brands, condition and status as buttons
  • Recurring buyers ready in one tap
  • Only price and brand-new names get typed
  • Founder and partner operate in parallel, no conflicts

Every feature shaped so the client closes the deal.

What we built

Speed

Taps instead of typing

Sizes, brands, pair condition, order status and recurring buyers come up as buttons in the chat. Only the price and brand-new buyer names get typed. A sale closes in under 30 seconds, versus minutes filling the Sheet by hand.

  • Inline keyboards for sizes, brands, condition and status
  • Recurring buyers preloaded; option for a new one
  • Only price (and new names) need the keyboard
  • Per-field validation: you can't advance with missing info
Team02

Two operators, one Sheet

Founder and partner run the bot from their own devices at the same time. chat_id whitelist, serialized writes to the Sheet — both see the same truth without stepping on each other.

  • chat_id whitelist for both operators
  • Every operation is signed with its author
  • Zero Sheet write conflicts
  • Same flow on mobile and desktop
Per-pair status03

Every pair gets its own timeline

Every pair has a visible life-cycle: purchase → in transit → in stock → sold. Change status by tapping the matching button and the Sheet reflects it instantly.

  • Buttons to move between flow statuses
  • Change history per pair
  • Filter by status straight from the Sheet
  • Visibility by size and model
No lock-in04

The Sheet stays the client's

The data lives in Google Sheets, not in our database. The bot writes, the operators open the sheet from any browser and read, filter or export without the bot in the loop. If Telegram goes down, the data is still there.

  • Google Sheets as the single source of truth
  • Access from any browser
  • Exportable to CSV or Excel anytime
  • Zero bot dependency to read data

Our five steps applied to a real project.

Process

  1. 01
    Wk 1

    Discovery

    Session with founder and partner: how they log today, which fields they fill, which sizes and brands they handle, who the recurring buyers are. The map that later turns into buttons.

    • Map of the current sheet
    • Client catalogs: sizes, brands, buyers
  2. 02
    Wk 1

    Conversational design + presets

    We mapped the client's catalogs (sizes, brands, condition, status, recurring buyers) and turned them into Telegram inline keyboards. For each operation, we defined which fields are tap-only and which need typed text.

    • Command + preset map
    • Per-operation inline keyboard layouts
  3. 03
    Wk 2

    Build

    Implementation with python-telegram-bot. Each command gets its ConversationHandler and preloaded inline keyboards. chat_id whitelist for founder and partner. Serialized writes to the Sheet via gspread.

    • Bot running on staging
    • Sheet connected via Service Account
  4. 04
    Wk 3

    Launch

    Deploy on Railway with polling. We shadow the founder and partner during the first week of real usage and tune presets (missing recurring buyers, sizes not yet covered) against the friction that shows up in operation.

    • Bot in production for both operators
    • Conversational handbook + common shortcuts
  5. 05
    Wk 3+

    Scale

    With three weeks of live data, we add shortcuts for repeated operations (top-selling brand+model combos) and a weekly chat report with profit per pair and rotation.

    • /resumen and /stock commands
    • Automated weekly report

The numbers the project left behind in production.

What changed

vs manual Sheet entry<0s
Time per complete operation

A sale or purchase closes in under half a minute, versus minutes filling rows by hand.

presets as inline keyboards~0%
Of the operation runs on taps

Size, brand, condition, status and recurring buyers are buttons. Only price and new names get typed.

founder + partner, in parallel0
Operators on the same Sheet, no conflicts

Both log operations simultaneously from their devices. Writes serialize and the Sheet always stays consistent.

field-by-field validation0
Operations closed with empty fields

The bot holds the operation until every critical field is filled. Zero half-filled rows in the Sheet.

The technologies that sustain the operation.

Technologies

Bot engine
  • Python 3.11
  • python-telegram-bot
  • InlineKeyboardMarkup
Data
  • Google Sheets API
  • gspread
  • Service Account
Infra
  • Railway
  • Whitelist por chat_id
  • Logging estructurado

Want something like this for your business?

If this case clicked for you, let's talk. We reply within one business day, no strings attached.