Admin Dashboard
Start with Today: everything waiting on you, one click to each.
Exact units ordered per product (cancelled & archived orders excluded). Restock from the top of this list so best-sellers never run dry.
Control each product's sale (badge + struck price + checkout math) and its stock. Product-wide stock “Default” keeps whatever the product page says per-dose; “In stock” / “Backordered” / “Sold out” override every dose. Marking a product Sold out darkens its shop card, replaces the button with a dead “Sold Out” and blocks add to cart everywhere. Below that, each dose has its own status and an optional live count: give a dose a number and every paid/processing/shipped/delivered order subtracts from it automatically; when the last vial sells it flips to Sold Out on its own (and flips back when you restock or a buyer cancels). Backordered stays for products we don't keep on hand. Buyers see “Low stock, almost gone” when a count reaches the warn-at level; exact numbers are never shown. Cost/vial is your all-in cost for that dose (label + box + vial + testing); it feeds the “Product costs” deduction on the Orders tab revenue graph so you can see actual profit. Customers never see it.
Save it as a draft first: it gets a real product page only you can open, so you can see how it looks and add a photo. Hit Publish when it's ready and it appears in the shop grid and site search on its own. A photo is required to publish.
The order products show in when someone opens Shop. Drag a row, or use the arrows. The first four are the sale's big 4. Saving updates the live shop at once. Products tagged Backordered (no size in stock) always show after every in-stock product, and Sold out ones last, whatever their place here.
- Loading...
Open this tab to load volume prices.
Every product, every size: front and side, light and dark, plus the sale look. Click a product to see what it has and upload the rest. Uploads are live for everyone right away.
Use only after the partner terms change. First bump the terms version in verapep-affiliate (CURRENT_TERMS_VERSION) and deploy it, so every partner dashboard asks them to sign again. This sends one email to every active partner (archived ones are skipped) saying the terms changed, then emails you a summary. Each email counts toward the daily Brevo allowance.
Pending = customer hasn't paid yet. Owed = confirmed commissions you owe this month (auto-resets at month end). Lifetime = all confirmed commissions ever. Affiliates can request a payout anytime; any remaining balance auto-pays at the start of every month (within the first week).
What each partner earned and what you actually paid them, month by month. Owed is earned minus paid for that month, so a closed-out month reads $0.00. Payments are filed against the month you have selected, so settling June in August still clears June.
| Member | Product | Qty | Status | Started | Updated |
|---|
Membership billing is manual. When someone joins (Profile > Memberships, v91) their row lands here as
pending: they get no benefits at all until you hit Mark paid. Marking paid
activates the tier and extends paid through by one month (or twelve, if they chose yearly), always measured
from whichever is later: today, or the date they were already covered to. Paying late never buys back-dated coverage.
Revoke drops them to the free Member tier immediately. Use it when a payment never shows up.
Anyone overdue is highlighted in red and counted on the tab badge.
Points are a ledger, not a number you can type over: 100 points = $1 at checkout. They are awarded
automatically when an order reaches paid, and clawed back automatically if it is cancelled. Use
Adjust points only for goodwill grants or corrections. Every adjustment is recorded.
A single order can never be discounted more than 45% off list, no matter how many perks stack.