A client's whole account, one tap away, inside Telegram.
Every Pigment client gets a dashboard that opens from a button in our bot. No login, no password, no new app to install. Live traffic and sales from their site, every file and report we have delivered, their invoices with a way to pay, and a line to the team.
Built and maintained at Pigment Dev for the clients of Pigment Agency. It is part of working with the agency, not a product you install or buy.
Pigment Dev system2025 to today201520162017201820192020202120222023202420252026
Telegram · Client Hub · Persian, RTL
داشبورد شما
زنده
هفتهماهسه ماه
بازدید سایت
رو به رشد نسبت به دورهی قبل
این ماه بازدید سایت شما بیشتر از ماه گذشته بود و بیشترین ورودی از جستجوی گوگل آمده.
فروش از سایت
دیدهشدن در گوگل
فرمهای پرشده
کلمات در حال صعود
فایلها
ارسال شد
ارسال شد
ارسال شد
هر فایل تازه بهصورت سند تلگرام در گفتوگوی شما هم فرستاده میشود.
گزارشها
گزارش ماهانه
گزارش ماهانه
گزارش پروژه
مالی
فقط برای مدیران کسبوکار
فاکتوردر انتظار پرداخت
فاکتورپرداخت شده
پرداخت
What is on that screen
It opens from a button in our bot. Telegram vouches for who you are, so there is nothing to sign in to.
Up to five cards chosen for each client, live for the range they pick, against the previous period.
Persian and right to left, with fonts and icons served by us, so it carries no outside trackers and opens on any network.
Several people per business, in two roles, each with their own Telegram account.
View as
Admins see everything: stats, files, reports, and the finance tab with invoices and payment.
Illustrative. Values are hidden, and every real dashboard is private to its business.
// why
Why we built it
Every agency promises transparency, and most deliver it as a monthly PDF. We looked at where our clients actually were, and built the hub there.
Before
Our clients talk to us on Telegram. That was never a policy; it is where the conversations happened to live: the project group, the private chat with the account manager, the voice note at nine in the evening. So that is also where the questions arrived. How many people visited the site this month. Did the invoice go out. Can you send that file again, I cannot find it.
Each question had an answer somewhere: in Analytics, in the accounting records, in a shared folder. Answering meant someone on the team opening the right tool, copying the right number and pasting it into the chat. Then again next week, for every client.
A dashboard behind a login would not have fixed it. A password for a site you visit twice a month is a password you forget, and the chat was right there anyway.
The realisation
The client was already in the right place. The information was not.
Telegram had quietly become able to host a full application inside a chat. If the dashboard opened from a button in the conversation the client was already having with us, there was no login to forget and no app to install. The answers could live where the questions were asked.
So the hub opens from our bot with one tap. It shows the site's numbers live, pulled from Analytics, Search Console, WooCommerce and WordPress while you wait a moment. It lists every file and report we have delivered, shows invoices with a way to settle them, and tells the client things before they ask: a new report is ready, an invoice is due next week, a payment was received. The same hub is also delivered as a React web application, and a connector on each client site reports registrations, comments, reviews, bookings and form submissions back to it.
It has grown quickly since the first build, because every client who used it asked for the next thing.
// what-a-client-sees
What a client sees
Four tabs. The finance tab appears only for clients who have finances with us; everything else is there for everyone.
Stats
Up to five cards chosen for that client. The first is the signature card: full width, with a plain sentence about what happened this period. A shop sees sales and orders, a clinic sees bookings, a publisher sees article views. Nothing is computed overnight, and a card whose source is not connected yet says so instead of showing a zero.
Files
Every deliverable the team has placed for the client. When something new lands, the hub sends it as a Telegram document, so it stays in their chat history and opens without a Google account.
Reports
Monthly and project reports as PDFs, listed in order and delivered the same way. A new report is announced the moment it is placed.
Finance
Current and past invoices, with a way to settle them from the app. Reminders arrive privately and spaced out. Shown to a business's admins only, and nothing else in the app ever locks over an unpaid invoice.
Messages from us
Announcements and updates from the team arrive in the client's private chat, never in a group. Financial information in particular never goes anywhere but private.
Nothing to install
It opens from the bot's menu button. There is no account and no password, because Telegram already knows who you are.
// the-numbers
The numbers, and where they come from
A growing catalogue of widgets, and a choice per client of which to show. Every one is fetched live and read-only from the system that owns it. What follows is a selection, not the full list.
Source
What it reports
Google Analytics
Visits, page views, top and entry pages, devices, new against returning, time on site, social traffic, site search, add to cart, countries and cities.
Google Search Console
Clicks and impressions, visibility, top and rising keywords, brand searches, winning pages, low-click pages with potential, page-two opportunities, newly discovered keywords, image search.
WooCommerce
Sales from the site, orders, top products, product reviews.
WordPress
User registrations and comments from the site itself.
Booknetic and Bookly
Approved bookings, for clinics, salons and anyone who takes appointments.
Elementor forms
Forms filled and contacts made, so a services business sees leads rather than page views.
Traffic13
Site visits
Page views
Most visited pages
Entry pages
Blog article views
Most read articles
Visitor countries
Visitor cities
Busiest day of the week
Mobile or desktop
New or returning
Average time on site
Traffic from social
Search14
Visibility in Google
Total clicks
Total impressions
Brand searches
Top keywords
Ranked keywords
Rising keywords
Search presence
Winning pages
Low-click pages, an opportunity
Page-two keywords, an opportunity
Newly discovered keywords
Image search
Countries in Google search
Commerce and leads11
Sales from the site
Orders
Most viewed products
Add to cart
Product reviews
Bookings
Registrations
Forms filled
Contacts from the site
Site comments
Site searches
Editorial2
Event of the week
Note for the period
// who-sees-what
Who sees what, and what we know about you
A dashboard with your money in it has to be exact about identity and access. This is how it works.
Telegram vouches for you
When the app opens, Telegram hands it a signed statement of who you are. We verify that signature against our bot's own key on every request. If it does not check out, nothing loads.
We store one thing
Your Telegram user ID, mapped to your business. No password, no email, no phone number, no profile. There is no user database to leak, because there is no user database.
Nothing to remember
There is no account with us, so there is nothing to reset, and nothing that can be phished or forgotten.
Admins
Everything: stats, files, reports, and the finance tab with invoices and payment.
Staff
Stats, files and reports. No invoices, no amounts, no costs, no payment details. The finance tab does not appear.
Enforced on the server
A staff account that calls a finance endpoint directly is refused. The absent tab is a courtesy; the refusal is the rule. A business can have as many users as it likes, each with their own Telegram account.
Read-only, always
Our access to your Analytics, Search Console, store and site is view-only. The hub cannot change a setting, an order or a page.
Money stays private
Invoices, reminders and payment confirmations never go to a group, by rule and by code.
Proof of payment too
Delivered straight to the team, never stored on a public link.
Every message is logged
What, to whom, when, and whether it arrived.
// how-things-arrive
How things arrive
A client never has to ask for a file, a report or an update. When the team places it, the app brings it to them.
The team places it
Our executive assistants and support team work from a dedicated panel. They place a file, publish a report or issue an invoice for a client's account there.
The hub picks it up
The app fetches it, and the client's dashboard reflects it straight away: which cards they see, which reports are current, which invoices are open.
The client is told
A new file or report is announced the moment it lands and sent as a Telegram document, in the private chat they already have with us.
It is on the record
Every message is logged on our side, so if something did not arrive, we can see exactly what happened.
Not for sale
Every Pigment client gets it: their numbers, their files, their invoices and their team, in the app they already open every day. The questions were already arriving there. Now the answers are too.
Telegram Mini AppsTelegram Bot APIReactGoogle AnalyticsSearch ConsoleWordPressWooCommerceBookneticBooklyElementor
// products/
Other things I keep running
Plugins, apps and internal systems. Each one is shipped, documented, and still looked after.