Tribute Setup
Tribute provides recurring subscription management through Telegram with automatic renewals.
Critical Requirements
Section titled “Critical Requirements”⚠️ You must have a public domain with valid SSL certificate (e.g., bot.example.com). Webhooks will NOT work on localhost or private IPs.
Setup Instructions
Section titled “Setup Instructions”-
Create Tribute Channel
- Open Tribute app on Telegram
- Create a channel
- In “Channels and Groups” → Add your channel
- Create new subscription
-
Get Subscription Link
- In Tribute: Subscription → Links
- Copy “Telegram Link”
- Should look like:
https://t.me/tribute/app?startapp=...
-
Configure Environment
Terminal window TRIBUTE_WEBHOOK_URL=/tribute/webhookTRIBUTE_API_KEY=your_api_key_from_tributeTRIBUTE_PAYMENT_URL=https://t.me/tribute/app?startapp=...HEALTH_CHECK_PORT=8080 -
Setup Reverse Proxy
Configure Nginx or Traefik to forward HTTPS requests to bot:8080
server {server_name bot.example.com;listen 443 ssl;ssl_certificate /path/to/cert.pem;ssl_certificate_key /path/to/key.pem;location / {proxy_pass http://localhost:8080;}} -
Restart Bot
Terminal window docker compose down && docker compose up -d -
Test Webhook
Terminal window curl https://bot.example.com/tribute/webhook
How It Works
Section titled “How It Works”- User clicks payment button
- Redirected to Tribute subscription page
- User completes Telegram subscription
- Tribute sends webhook to your bot
- Bot activates subscription for user
Configuration Variables
Section titled “Configuration Variables”| Variable | Description |
|---|---|
TRIBUTE_WEBHOOK_URL | Webhook path (e.g., /tribute/webhook) |
TRIBUTE_API_KEY | API key from Tribute settings |
TRIBUTE_PAYMENT_URL | Subscription link from Tribute |
HEALTH_CHECK_PORT | Port for webhook (usually 8080) |
Getting API Key
Section titled “Getting API Key”Getting API Key
Section titled “Getting API Key”- Open Tribute app
- Settings → API Settings
- Create new API key
- Copy and paste in
.env
SSL Certificate Options
Section titled “SSL Certificate Options”Let’s Encrypt (Free)
Section titled “Let’s Encrypt (Free)”# Using Certbot with Nginxsudo certbot certonly --standalone -d bot.example.comSupport
Section titled “Support”- Tribute Help: In-app support
- Telegram Communities: Crypto payment groups