Skip to content

Trust

What VendFeed can reach, and what it cannot

The bot is built around a constraint: it uses your store's public webstore token and nothing else. Here is what that means in practice.

Verified by Discord

The application carries Discord's verified check, which means Discord has confirmed who runs it. That is the tick you see on the APP tag next to the bot's name in your server.

Public token only

VendFeed reads your store through the public part of the Tebex API, using your store's public webstore token. It never asks for, accepts or stores a Tebex secret key.

It cannot read your messages

Discord does not give VendFeed access to your messages, your member list, or who is online. That is not a setting we could quietly change later, the access is simply not there.

Nothing is posted until you set a channel

Every feed is off by default, and each one gets its own channel. Nothing appears anywhere you did not ask for.

Customer identifiers are dropped

Only the display name your store already publishes on its own public sidebar is rendered. Identifiers returned by the API are discarded.

Removing a store deletes its snapshot

Run /tebex remove and the stored copy of your catalogue goes with it.

The token

The public token grants nothing a shopper cannot already do

That is the whole argument, and it holds for every kind of Tebex store.

What it can do

  • Read the listings your store already publishes
  • Start a basket, exactly as a shopper can

What it cannot do

  • See your revenue
  • See your customers
  • See your payment details or settings
  • Change anything in your store
  • Issue a refund or a command

The private key is the one that does all of that, and VendFeed neither asks for it nor accepts it. Tokens are only ever shown masked, never in a log line or a shared channel, and /tebex add replies privately so yours is never posted where other people can read it. Where to find the right value.

On your Discord server

Three permissions, and no way into your messages

Permissions requested

  • View Channel

    So it can see the channels you point a feed at.

  • Send Messages

    So it can post the announcement.

  • Embed Links

    So the announcement renders as a card.

It does not manage roles, channels, webhooks or messages.

What it cannot see

Your messages, your member list, and who is online. Discord does not give VendFeed access to any of it. That is not a policy choice that could be reversed quietly, it is what the application is allowed to receive at all.

Text taken from your store is turned into plain text and shortened to fit before it is posted, so a package name containing markup appears as the characters you typed rather than doing anything in Discord. Every link is checked before it becomes a button.

Data

Everything that is stored

The whole list, and all of it is either a Discord id or store data your webstore already publishes.

Stored

  • Your Discord server and channel ids
  • The public webstore token
  • The store's name, URL and currency
  • A snapshot of the public catalogue: packages, categories, goals, servers and sidebar modules

Not stored

  • Your messages. Discord does not give the bot access to them in the first place.
  • Customer identifiers returned by the Tebex API. They are dropped. Only the display name your store already publishes on its own sidebar is rendered.
  • A Tebex secret key. It is never asked for, accepted or stored.
  • Payment state. Premium runs through Discord Premium Apps, and Discord is the source of truth.

Removing a store with /tebex remove deletes its stored snapshot.

Good behaviour

A quiet neighbour on your server and on your store

Worth stating plainly, because a badly behaved bot becomes your problem as much as ours.

On your Discord server

Announcements are spaced out rather than dumped, and the bot stays well under what Discord allows, so it never trips a limit that would delay your posts or anyone else's.

On your store

Requests to Tebex are spaced out and never overlap, and if Tebex ever asks VendFeed to slow down it backs off across the board rather than pushing again.

Stores are staggered

Scan times are nudged apart, so stores added in the same minute do not all read at once every cycle.

How often it reads

Every 5 minutes to start with, easing out to at most every 30 as more stores are tracked. A store's whole set of feeds costs at most three reads per scan, and the live displays cost none at all.

Your game server is never contacted

Tebex works out whether a server is up and publishes that on your store sidebar, which the bot was already reading. So server status costs nothing extra, and nothing ever connects to the server itself.

When something breaks

Paused, never deleted

A store stops answering

Its configuration is kept and the person who added the bot is DMed once with the cause and the command that undoes it.

Only a real failure counts

Only your store actually turning VendFeed away counts toward pausing, so a timeout or a temporary blip just retries later.

An allowance drop is safe

If a server’s allowance ever drops below what it already holds, existing stores keep running and nothing is deleted. Adding another is refused until it is back under the cap.

The formal version of all of this is on the privacy policy page.

Put your store updates in Discord

Invite the bot, run /tebex add with your public token, pick a channel. Nothing is posted until you do.