Activity log
Every money action and login is recorded here.
| When | Who | Action | Target | Detail |
|---|
Select a client
Profiles that aren't on your client list — your own accounts, or clients you
haven't added yet. Nothing here counts toward any total. Tick anyone who
should be billed and click Add as clients.
Unassigned profiles
| Parsed name | Profiles seen | Orders | Confirmed | Last seen |
|---|
Click any Cost or Resell value to edit. Per unit, pre-tax.
Profit = resell − cost, and the fee is a percentage of that.
Products
| Product | Cost | Resell | Updated | Profit/ea | Client units | Client fees |
|---|
Orders
| Date | User | Product | Qty | Status | Fee | Channel | Flag | Notes |
|---|
Discord bot token
One bot reads every channel below. The token is stored in
billing_data.db in this folder in plain text. If that folder syncs to OneDrive
it goes to the cloud too — use "Forget token" and paste it each session if you'd
rather it not persist.
Channels
Add every channel your bot should scrape. Each one keeps its own
place, so "New since last" only pulls fresh messages per channel. Give each a label so
you can tell orders apart. The same bot needs View Channel + Read Message History on each.
Turn on Developer Mode in Discord (Settings → Advanced) to get
"Copy Channel ID" when you right-click a channel.
Fee & tax
Per-client overrides beat these defaults. Already-billed invoices are
locked and won't change when you edit anything here.
Branding & payment
These appear on every invoice: the title reads
"ACO <fee label> Invoice" and the payment line names your Venmo handle.
Logins
Give your partner their own login rather than sharing yours —
you can revoke it without changing your own. A login is required before the app
will start on any address other than this computer.
Client list
Names are matched loosely — case and punctuation are ignored, so
An_drew_c and andrewc are the same person.
Anyone not on this list lands in the Other tab and is excluded from every total.
Client portal (Discord login)
Lets clients sign in with Discord at
/portal to see their own balance and invoices —
read only. It links them by the Discord ID on their client record, so set that first.
In the Discord Developer Portal → your app → OAuth2, add this exact redirect:
<public URL>/oauth/callback.
Locally that's http://127.0.0.1:8765/oauth/callback.
The "sign in from anywhere" version needs your real domain (see HOSTING.md).
Backups
keep last
Backups are written to a backups folder next to the app.
billing_data.db is the only record of every invoice and payment —
copy that folder somewhere safe (another drive, cloud) periodically.
Auto-scrape
minutes
Pulls new messages only. It never sends anything — invoices always
need your confirmation.