This guide is for Telegram bot and service owners who want to use Tribute as a payment system. Accept payments via SBP and Telegram Stars, receive withdrawals in USDT without complex payment provider
Benefits of Tribute Digital Products Integration
For you as a service owner:
Payment acceptance - SBP and Telegram Stars
Simple integration - create a product, get a link, set up a webhook
Ready infrastructure - no need to integrate payment providers yourself
Automatic withdrawals - receive money in USDT
For your users:
Convenient payment - one-click purchase through Telegram
In the dashboard, select "Digital Products" → "Create instant product"
You will be redirected to the bot chat
Send the bot a message that will become your digital product. This can be any message - for example, a photo with description, video, file, or even a voice note.
Example text message for integration:
Important: This is the exact message the buyer will receive after payment. Add instructions for the user so they understand what to do next. Once the product is created, this message cannot be edited (but you can always create a new digital product with a different message).
After sending the message, click the "Create Product" button from the bot's message
Fill in the required fields:
Currency - choose the payment currency
Name - what the buyer will see (for example: "AI Assistant for 1 month")
Description - brief product description
Price - cost in the selected currency
Save the product
After saving, you will receive a unique payment link that can be used in your integration
Step 3: Getting API key
In the dashboard, open the menu (three dots) → "Settings"
Go to the "API Keys" section
Click "Generate New Key"
Save the key in a safe place - you'll need it to verify webhooks
Step 4: Setting up webhooks
In the "API Keys" section, find the "Webhook URL" field
Specify your server address for receiving webhooks:
Save settings
Step 5: Processing webhooks on your server
After successful payment for a digital product, Tribute will send a POST request to your URL:
Webhook format
Webhook signature verification
Each request contains a trbt-signature header with HMAC-SHA256 signature of the request body. Examples of signature verification and webhook processing are available in the webhooks documentation
Step 6: Integration into your bot
In your Telegram bot, add a payment button
Python code
Working with API
Get Product by ID
get
Returns a single product by its ID
Authorizations
Api-KeystringRequired
API key for authentication.
Path parameters
idintegerRequired
Product ID
Responses
200
Successful response
application/json
400
Bad request (invalid product ID format)
application/json
401
Unauthorized (invalid API key)
application/json
403
Access denied
application/json
404
Product not found
application/json
get
/products/{id}
Get Products List
get
Returns a paginated list of products
Authorizations
Api-KeystringRequired
API key for authentication.
Query parameters
pageinteger · min: 1Optional
Page number
Default: 1
sizeinteger · min: 1 · max: 100Optional
Items per page
Default: 20
typestring · enumOptional
Filter by product type
Possible values:
descbooleanOptional
Sort by ID descending
Default: false
Responses
200
Successful response
application/json
400
Bad request
application/json
401
Unauthorized (invalid API key)
application/json
get
/products
Cancel Digital Product Purchase
post
Cancels a digital product purchase and refunds the payment.
Important: This endpoint only supports refunds for purchases paid with Telegram Stars. Purchases paid with other payment methods cannot be refunded via this endpoint.
Authorizations
Api-KeystringRequired
API key for authentication.
Path parameters
purchaseIdintegerRequired
Digital product purchase ID (ProductPurchase.ID)
Example: 12345
Responses
200
Purchase successfully cancelled and payment refunded