Fitness challenge payment tracking: access dates and renewal reminders
Separate a participant’s payment report from a verified receipt, and keep access renewals clear for both coach and participant.
Separate the payment from the access period
A payment amount and an access end date answer different questions. The payment records what the coach confirmed; the access period determines how long the participant can open materials. A simple “paid” label does not explain which period it covers.
Keep an individual confirmation history and a current access end date for each participant. Use a stable Telegram ID to link the account: a username can change.
Use clear states
Distinguish between waiting for payment, a participant reporting payment, coach confirmation and expired access. These are different situations requiring different actions.
The “I have paid” button should not automatically mean a verified receipt. It creates a request for the coach. The coach checks the actual incoming payment in their payment service before confirming it.
Remind participants before access ends
A reminder three days before expiry gives a participant time to arrange renewal. Explain when current access ends and what to do after paying. A renewal reminder should not imply that a payment is already overdue.
For example: “Your access ends soon. To continue, pay under the agreed terms and let your coach know using the bot button.” The coach supplies the actual payment terms separately.
Verify the receipt before renewing
When the participant presses the button, the coach receives a notification identifying whose payment needs checking. Match the participant, amount and period. Clarify ambiguous payments before confirming them. A screenshot of a transfer does not replace checking receipt.
After confirmation, set the correct access end date. Decide how early renewals work: whether a new period follows the current period or another arrangement applies. Explain that policy to participants in advance.
Check every access point
The participant workspace and a private Telegram group are separate access points. The bot needs the appropriate administrator permissions to manage group membership. A payment record alone does not let a bot remove or invite people in an unconnected group.
MaraFit provides access-period tracking, reminders three days before renewal, payment claims and coach confirmation. Checking the bank or payment service remains manual. Group connection and permission checks are separate from creating a challenge.
Review a worklist instead of the entire chat
During a daily review, start with payment claims needing confirmation, then check access periods ending soon. Record the decision in the system, rather than only replying in chat. This makes it easier to explain which period is covered and to handle repeated reports of the same payment.