Where businesses need file uploads
The most common case in Uzbekistan is payment confirmation. A customer transfers money by Click or Payme to a card, and sending a screenshot of the receipt to a bot is easier than explaining it in words. The bot logs the order, forwards the receipt to accounting and replies to the buyer. Where card acquiring is connected a receipt is not needed, but card-to-card transfers and manual payments in the regions are still common.
The second case is applications with attachments. A print shop receives artwork, a construction firm gets drawings and site photos, a recruiter collects CVs, a repair service gets a photo of the fault. Sellers on OLX and Uzum send product shots that the bot assembles into a card for a manager. The reverse direction matters too: a price list, catalogue, contract or manual goes to the customer with one button press.
- Payment receipts and transfer screenshots
- CVs and candidate forms
- Artwork, drawings and technical briefs
- Photos of products or defects
- Price lists, catalogues and contracts sent to customers
How Telegram bot file upload works
When a user sends a file, Telegram does not hand the bot the file itself, only a message containing an identifier. To get the content, the bot makes a separate request to find the file path and then downloads it. The file_id can be stored: the same document can then be sent to other people without uploading it again. That speeds up replies and saves traffic, for example when you distribute a catalogue.
There is one subtlety. A picture sent as a photo gets compressed by Telegram. If you need the original artwork or a sharp scan of a document, ask users to send it as a file, and say so in the bot prompt. Otherwise your designer receives an image that cannot be printed.
The cloud Bot API limits file size for both downloads and sending. Heavy videos and archives are handled with your own local Bot API server or a link to external storage. Check the current limits in Telegram documentation when you build, because they change.
Where to keep the files
Telegram is not an archive. If documents live only in the bot chat, losing access to the account means losing the files. A reliable setup is this: the bot downloads the file, saves it to your own storage, cloud or server, and writes a link plus the request details to a database. The file is then attached to a deal in your CRM or a row in a spreadsheet.
Managers like it when the file is also copied into a private group with the request number. But a group is a notification, not a database. Storage remains the source of truth.
- Request number and the customer's Telegram ID
- File type and size
- Time received
- Review status
- Responsible employee
Validation and security
Any file from a stranger is a potential risk. The bot should check type and size before downloading, reject executable files, rename files when saving and never trust the original name. If you accept documents with personal data, restrict staff access, avoid public links and delete what you no longer need. Data protection requirements in Uzbekistan are worth confirming with a lawyer before launch.
For harder cases you can add antivirus scanning and recognition, such as reading the amount from a receipt. That is a separate piece of work, and it only makes sense if manual checking really eats up time.
Making it easy for the customer
Someone in Samarkand or Namangan may be sending a file over an unstable mobile connection. The bot should confirm receipt straight away, explain the next step and keep progress if the upload breaks off.
- State accepted formats and sizes in the message
- Confirm every file, and show a counter when several photos are expected
- Add Cancel and Replace file buttons
- Save a draft request so nobody has to start over
- Offer a choice between Uzbek and Russian
Measuring the result
File upload is not a goal, it is a way to shorten the path to a lead. Agree on what you count: how many people reach the file step, how many actually send something, where they drop off and how long a manager spends processing each request. Without these numbers you cannot tell whether the feature helps or only complicates the bot. Add analytics events for each step so the flow can be improved from facts rather than impressions.
Where to start
Describe one scenario: who sends the file, what happens to it and who replies to the customer. Build a minimal version with a single file type, test it on real requests and add the rest later. The cost depends on the number of file types, CRM and payment integrations, and storage and checking requirements, so a figure cannot be named before the task is reviewed.
If you want to discuss how to add file handling to a Telegram bot for your business, the markdev team can review the task and suggest a setup. Write to us and we will work out together which scenario to start with.
FAQ
Can a bot accept any file from customers?
Technically yes: documents, photos, audio and video. But size is limited by Telegram rules, and a good bot rejects unwanted formats and oversized files itself while telling the customer what to do.
Where are files sent to a bot stored?
They stay on Telegram servers, but you should not rely on that. Keep copies in your own or cloud storage and link them to the request in your database or CRM.
Why do photos arrive in poor quality?
Telegram compresses images sent as photos. To get the original, ask the customer to send it as a file or document.
Can a bot send a PDF catalogue to customers?
Yes. The file is uploaded once, then the bot sends it using the saved identifier, so the catalogue reaches a large audience quickly.
Let’s look at your task for free
Leave your contact — in a 15-minute call we’ll show where leads get lost and what to fix first.