Discord doesn't track sales on its own, but a bot that generates your invoices can, because every order already has an amount, a currency and a status recorded on it. Noxyr reads those same invoice records to build revenue reports and a buyer leaderboard for free, with /invoice sales and /invoice top-buyers. This guide covers what counts as revenue, how to read the report, and the mistakes that make a Discord shop's numbers lie to you.
Why sales tracking matters for a Discord shop
A shop running out of tickets and a spreadsheet loses track fast: someone forgets to log a sale, a refund never gets subtracted, and by the time you check, the "revenue" number is just a guess. Because Noxyr generates the invoice at the moment of sale, the sales report is built from the same record the buyer got as a receipt — there's no separate bookkeeping step to forget.
What counts as a sale
Every invoice has a payment status: Successful, Pending, or Failed. By default only Successful invoices count toward revenue, which matters because it's common to create an invoice the moment an order ticket opens (status Pending) and only flip it to Successful once payment is actually confirmed. If you count Pending as revenue by mistake, your report includes orders that never actually got paid.
You can change which statuses count from /invoice sales-style — three separate toggles, one per status, let you decide whether Successful, Pending and Failed each contribute to the report. At least one has to stay on, otherwise every report reads zero.
Pulling a revenue report
Run /invoice sales report (grouped under the invoice command as /invoice sales) with a period — it defaults to the last 30 days, with shorter and longer windows available. Add post:true to post the report in the channel instead of only showing it to you, useful for a weekly recap in a staff channel. The report reads straight from your invoice records, so it always matches what /invoice check would show for any individual order in that window.
Finding your best buyers
/invoice sales top (as /invoice top-buyers) ranks customers either by number of orders or by amount spent in a given currency, since a shop that takes USD, EUR, INR and GBP can't just add them together. Set a limit (up to 25) for how many buyers show, and post:true to share the leaderboard publicly — some shops post this weekly as a light gamification hook, since regulars like seeing their name near the top.
Styling the report embeds
/invoice sales style (as /invoice sales-style) controls the visual side: embed color, a banner and thumbnail image, custom titles for the report and leaderboard embeds, a footer, the default leaderboard size, and whether buyer display names are shown next to their mention. None of this changes the numbers, only how they're presented when you post a report publicly.
Reading the numbers without fooling yourself
- Match the currency to the market. If most of your buyers pay in INR but you rank top buyers in USD, the ranking skews toward whoever happened to pay in dollars.
- Refunds aren't automatic. Noxyr doesn't have a refund workflow that reverses an invoice; if you refund a buyer outside the bot, that invoice still counts as revenue unless you manually mark it Failed or exclude Failed-equivalent statuses from the count.
- Vouchers show the real total, not the list price. An invoice with a voucher applied records the discounted final total as the revenue figure, so a big promotion will show up as lower average order value, which is expected, not a bug.
- Compare periods, not just totals. A single 30-day number means little without last month's for comparison. Pull the same period regularly (weekly or monthly) so the trend, not the snapshot, is what you act on.
What this doesn't replace
These reports aren't a full accounting system. There's no tax calculation, no export to a spreadsheet built in, and no automatic reconciliation against your actual PayPal or bank balance — you still confirm the money landed yourself before marking an invoice Successful (see selling digital products safely). What it replaces is the manual tally: instead of a staff member adding up ticket totals by hand at month end, the numbers are already there whenever you ask.
Backing up your sales data
/invoice backup exports your invoice records for safekeeping. Run it periodically if you want an offline copy beyond what the dashboard keeps, especially before a big promotion where you'll want to analyze the results afterward outside Discord.
Common questions
Does Noxyr calculate profit, not just revenue? No. It reports the invoice totals you generated; it has no concept of your product cost, so profit margin is on you to calculate separately.
Can I see sales for a specific product? The sales report covers overall revenue and best-selling items for the period; for a single historical order, look it up directly with /invoice check using its order ID.
Why is my revenue report showing $0? Check /invoice sales style — if every status toggle got turned off, or if all your invoices are sitting at Pending because staff never flip them to Successful, the report has nothing to count.
Can buyers see the sales report? No, it's an admin-only command. Buyers can only look up their own individual order with the public /invoice check command.
Is sales tracking free? Yes, it's part of the invoice module with no paid tier. Full setup for the invoices themselves is in how to send invoices on Discord and the invoices documentation.