Amirhossein Hosseinpouramirhp
CV
Active Internal system · Telegram Mini App

Client Hub

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.

What a client sees Who sees what

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 today
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.

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.

SourceWhat it reports
Google AnalyticsVisits, 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 ConsoleClicks and impressions, visibility, top and rising keywords, brand searches, winning pages, low-click pages with potential, page-two opportunities, newly discovered keywords, image search.
WooCommerceSales from the site, orders, top products, product reviews.
WordPressUser registrations and comments from the site itself.
Booknetic and BooklyApproved bookings, for clinics, salons and anyone who takes appointments.
Elementor formsForms 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.

  1. 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.

  2. 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.

  3. 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.

  4. 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
branch main 6 active projects ↑ 113 releases products/client-hub.md Sari --:-- UTC+3:30 its@amirhp.com