Managing Your Users and Their Subscriptions
Managing Your Users and Their Subscriptions
As the owner of a BuddyPro instance, you have several useful commands at your disposal that allow you to obtain information about your paying (and trial) users and manage their access or messages.
Overall Statistics and Analytics
As the owner or team member, use the /stats command. This command displays a clear report that contains a USER ANALYTICS section with key metrics:
- Total users: Total number of users (excluding owner and team).
- Active subscriptions: Number of users with an active paid subscription.
- Currently on trial: Number of users who are currently in the trial period (or have already completed it and haven't purchased a plan).
- Avg used trial messages per user: Average number of messages users utilize during the trial.
- Avg AI cost per trial user: Average costs per trial user.
This command is ideal for getting a quick overview of the health and growth of your user base.
New Metric in /stats: Average Monthly Cost per User
We've added a new value to the /stats command:
- Average monthly cost per active user (Average monthly costs per user with an active subscription)
This metric shows you the average AI cost per user who has an active subscription.
How it's calculated:
- only users who have had an active subscription for at least 7 days are included,
- the calculation is monthly and approximate,
- the metric is available from August 11, 2025.
How to Get Detailed Information About a Specific User and Their Subscription?
If you need to find out details about a specific paying user (for example, their subscription status, next payment date, or how many messages they have remaining), use the command:
/getInfoAboutUser:{subscriptionId}
{subscriptionId}: This is the unique identifier of the given user's subscription in your payment system.
What information will this command display?
The command typically provides an overview of:
- Subscription status (e.g., active, cancelled, payment issue).
- Date of the next scheduled billing/subscription renewal.
- Current number of remaining messages within their monthly limit.
- Number of remaining extra messages (if they purchased any in a package).
- Information about the plan being used.
- History of their payments and activations.
This command is very useful for handling client inquiries about their account or for investigating potential subscription issues.
How to Deactivate a User's Subscription or Access to Your AI Instance?
There may be situations when you need to immediately terminate a user's access to your AI Expert (e.g., at their request, for violation of terms, or if you're refunding their subscription payment).
Use this command:
/disableUser:{subscriptionId}
- Again, use the
{subscriptionId}from your payment system (recurring invoice ID from FAPI, etc.).
This command immediately terminates the given user's active subscription in the BuddyPro system and prevents them from sending further messages to your AI instance.
VERY IMPORTANT NOTE: If you are refunding money to a user for their subscription directly in your payment system (e.g., you issue a credit note in FAPI and return the payment), you MUST ALWAYS use this /disableUser command in BuddyPro afterwards! Simply refunding money in FAPI (or another system) does not automatically terminate the user's access to AI in BuddyPro. Without using /disableUser, the user could continue using the service even though you refunded their payment.
The BuddyPro platform attempts to automatically deactivate users if their recurring subscription payment repeatedly fails and is not paid on time, but for manual interventions, this command is essential.
How to Add Bonus (Extra) Messages to a User Beyond Their Plan?
If you want to add a certain number of extra messages to a paying user (e.g., as a reward, compensation, or for special purposes) that won't expire and will be used after their standard monthly limit is exhausted, use the command:
/giveExtraMessages:{subscriptionId}:{extraMessages}
{subscriptionId}: User's subscription identifier (see above).{extraMessages}: Number of extra messages you want to add to the user (e.g., 50, 100).
Manual Management of Trial Messages for Existing (but Not Yet Paying) Users
These commands are used to adjust the number of trial messages for users who are either in the trial period or whose trial has expired but haven't yet purchased a paid subscription. For example, if you want to extend the trial for a loyal fan or provide more messages for more thorough testing.
To use these commands, you need to know the unique Telegram ID of the given user ({userId}).
- How to find
{userId}? The easiest way is to ask the given user to type and send this command in the chat with your AI instance:
/myid
Your AI instance will then display their {userId}. Request this ID from them.
- Commands for managing trial messages:
/setTrialMessages:{userId}:{count}- Sets a new total number of trial messages for the user with the given
{userId}to the value{count}. If they had some trial messages before, this value overwrites them. - Only works for users who have never started paying for a subscription.
- Sets a new total number of trial messages for the user with the given
/addTrialMessages:{userId}:{count}- Adds the specified number
{count}of trial messages to the current trial message balance of the user with the given{userId}. - If you want to remove trial messages, you can use a negative number for
{count}. - Again, only works for users who are not yet paying.
- Adds the specified number
Tracking Usage of Your Invitation Codes
If you use specific invitation links generated by the /generateBuddyProInvite command to acquire new users, you can track their effectiveness.
Use the command:
/checkInvite:{code}
{code}: Enter the exact 7-digit invitation code whose statistics you want to display (the one you defined or that BuddyPro generated for you).
What will the command display?
- How many times this specific invitation was used in total (how many users came through it).
- How many of these users subsequently purchased a paid subscription (conversion rate).
- How many users from this invitation are currently still in the trial period.
- Average number of messages that users from this invitation used during their trial.
- Average AI costs per trial user coming through this invitation.
This command is very useful for evaluating the effectiveness of your various marketing campaigns, affiliate partners, or different types of trial offers.
Overview of Used Invitations
In addition to the /checkInvite:{code} command, which checks a specific invitation code, you now also have the command:
/listInvites
This command will list all invitations that have been used by two or more people.
For each invitation, you'll also see how many of these users activated a subscription.
This makes it easy to find out which invitations are most effective and bring real conversions to paying users.
Invite Rewards (Referral Program)
How a user gets their personal invite link
Every BuddyPro user has an automatically generated personal invite link — they don't need to do anything special. They simply ask the bot directly in the chat, for example by writing "What is my invite link?" and the bot will immediately share it.
The link has the following format:
https://t.me/{botUsername}?start={uniqueInviteCode}
Each user has their own unique code. When someone clicks this link, they open Telegram with the bot and automatically receive a trial with the number of free messages you've set (configurable via /setInviteTrialMessages).
How invite rewards work
BuddyPro owners can set up an invite reward system that motivates users to invite their friends. When a user invites someone through their invite link and the invited person joins, both can receive bonus messages as a reward:
- Inviter (the person who shared the link) — receives bonus messages as a thank-you for bringing in a new user (extra messages, or trial messages if still on trial)
- Invitee (the invited person) — receives bonus messages as a welcome gift
Setting up rewards
Command:
/setInviteReward:{inviterMessages}:{inviteeMessages}:{trigger}
Parameters:
- inviterMessages — number of bonus messages (integer, 0 = no reward)
- inviteeMessages — number of bonus messages (integer, 0 = no reward)
- trigger — when the reward is granted:
trial— when the invitee starts a free trialpaid— when the invitee activates a paid subscriptionboth— on both events (reward is granted twice — once on trial, once on payment)
Examples:
/setInviteReward:20:10:paid
Inviter gets 20 messages, invitee gets 10 — only when the invitee pays for a subscription.
/setInviteReward:10:5:both
Both receive a reward on trial and on payment. Inviter gets 20 total, invitee gets 10 total.
/setInviteReward:15:0:trial
Only the inviter gets 15 messages, and only when the invitee starts a trial.
Limiting invites per user
Command:
/setPersonalInviteLimit:{limit}
Sets the maximum number of people a single user can invite through their personal invite link. The limit applies retroactively to existing invite links as well.
- Setting
0removes the limit (unlimited invites).
Examples:
/setPersonalInviteLimit:5
Each user can invite up to 5 people. The limit is also updated for all existing invites.
/setPersonalInviteLimit:0
Removes the limit — users can invite without restriction.
Important details
- Each reward is granted only once per trigger type — never more than once per event
- When a paid subscription is activated, both users receive a notification from Buddy about the bonus. When a trial starts, only the inviter gets notified — the invitee does not receive a notification (the bonus is added automatically)
- The cost of these notification messages is charged to the BuddyPro owner's account, not the user's
- Bonus messages do not expire
- For users on trial, the bonus is added to their trial messages. For paying users, the bonus is added as extra messages beyond their subscription
Extended User Activity Statistics
BuddyPro now offers an extended overview of your subscribers' activity using the command:
/stats
This command now displays not only basic information but also daily, weekly, and monthly user activity (active rate).
What you'll see in the statistics:
- number of active users per day
- number of active users per week
- number of active users per month
- overview of overall subscriber activity over time
Statistics will help you better:
- evaluate user engagement
- track the impact of changes in onboarding or content
- optimize pricing plans and communication
- make decisions about further development of your BuddyPro instance
Note: The
/statscommand is primarily intended for BuddyPro instance owners and serves as an analytical tool for long-term management and growth of your AI expert.