Chapter 24

Quotas, Order Desk & Messages

In this chapter - Quotas - Order Desk (status) - Messages


Quotas

Source-CRM equivalent: Quotas. Icon bar ▸ Quotas. Filter My Current Quotas / My Quotas / All Quotas — the two "My" filters show only quotas owned by the user you are logged in as; Show Month / Quarter / Year; Quotas Report — prints the list exactly as it is currently filtered and sorted, opening a print preview (landscape) first; pinned at the right edge: 🔄 Refresh / ❌ Close. Quotas has no configurable settings anywhere in the application, so as of the September 2026 update the toolbar has no ⚙ gear at all — earlier it read 🔄 Refresh / ⚙️ Settings / ❌ Close and the gear opened a "not yet implemented" message (and before that, briefly, it re-opened Settings on whichever tab you last had open). Columns: Name, Fiscal Period (year), Quota, Forecast (weighted), Forecast (unweighted), Closed Sales, Lost Sales, % of Quota — actuals are summed from the owner's opportunities for that fiscal year: Closed Sales counts Won opportunities only, Lost Sales counts Lost ones only. Opportunities that are still New or In Progress, and ones marked Abandoned or Suspended, appear in neither column (they are neither won nor lost); open ones do still feed the two Forecast columns. Double-click / right-click ▸ Open / Properties shows the row's values. The quota target also feeds the Entrepreneur Dashboard's income "speed limit".

Closed Sales / Lost Sales can understate — read this before you trust the number. Both figures read each sale's Actual Revenue, and TechieCRM does not yet record a sale's actual revenue when it is marked Won (this is planned, not built). So a sale you create and close in TechieCRM adds $0 to Closed Sales, no matter what it actually sold for — only its Forecast Revenue is stored, not its actual. Sales carried over from your previous CRM may already hold real Actual Revenue and count correctly, which is why the total is not obviously wrong: it is a partial understatement that grows the more you close new business in TechieCRM. Lost Sales is affected the same way — it is meant to fall back to a lost sale's Forecast Revenue, but a TechieCRM-created sale stores a 0 actual that suppresses that fallback, so it too books $0. These totals are a floor, not a measured figure, whenever any of the won/lost sales shown were created in TechieCRM. Until Actual Revenue becomes an editable field, treat Closed Sales as "at least this much", and read % of Quota (which is derived from Closed Sales) with the same caution.

How the screen tells you. You do not have to remember any of this. Whenever the list on screen contains a won or lost sale with no recorded actual revenue, Quotas shows an amber warning strip underneath the table saying so and counting the affected sales — "1 of 2 won sales shown have no recorded actual revenue" — and puts the same wording on the Closed Sales and Lost Sales column headings, so hovering either heading gives you the explanation where you are looking. The strip is rebuilt every time the list loads and is not shown when every won and lost sale in the list carries a recorded actual revenue, because in that case the totals really are measured and a permanent disclaimer would only teach you to ignore it. A blank Closed Sales cell means that row's total came to zero — either there were no won sales in that period at all, or every won sale in it is one of the unrecorded ones; the strip tells you whether any unrecorded sales are in the list, and re-filtering to a single person or year narrows down whose. If the quota tables can't be read (connection dropped, or your sign-in isn't allowed to read the database catalogue), Quotas now tells you — "Failed to load quotas from the database" with the reason — instead of showing an empty list that looks like "you have no quotas". A database that simply doesn't carry Quotas still shows an empty list, quietly, because that is the true answer. The Forecast / Closed Sales / Lost Sales columns are reported the same way: if the sales figures behind them can't be read, you are told, rather than shown quotas with blank money columns. Not yet available on the desktop: creating/editing/deleting quotas (the ribbon's Home ▸ Create ▸ Quota button is greyed out for this reason), monthly milestones, team roll-ups, the Month/Quarter view (all periods are fiscal-year).

Note — the web portal works differently here. On the web portal you can create, edit and delete quotas: the toolbar's Add button opens a form with Sales Rep ID (their sign-in email, or their user ID from a synced database), Quota Name, Fiscal Year, Target Revenue and Currency — and nothing else.

Like the desktop, a web quota is scoped to a fiscal year, and its Closed Sales figure is not typed in: it is totalled from that rep's won sales for that year (sales still open, or lost, suspended or abandoned, are not counted), which is what drives % of Quota. The web list shows Name, Fiscal Year, Sales Rep, Quota, Closed Sales, % of Quota, Date (the record's own last-updated date), and its one filter is All Years / Current Fiscal Year / Previous Fiscal Year — to see any other year, type it into the Quick Search box, which searches both the quota name and the sales rep. Above the list, three counts (Total, the current fiscal year and the previous one) always show the true totals for the whole workspace, independent of whichever filter is active. Click Name, Fiscal Year, Sales Rep, Quota or Date to sort by that column (ascending, then descending on a repeat click); Closed Sales and % of Quota are computed per row from that rep's sales and cannot be sorted — the column heading says so.

Not on the web: the two Forecast columns, the Lost Sales column, the My Quotas / My Current Quotas filters, the Quotas Report print-out, monthly milestones and team roll-ups.

Which year a won or lost sale counts in. Closed Sales, Lost Sales, % of Quota and Forecast (unweighted) all place a sale in a fiscal year by its close date. A sale that carries no close date is counted in the year it was opened instead. That fallback is deliberate — it is what stops a won sale with no close date dropping out of its owner's totals altogether — but it answers a different question from the one the column heading asks, so the year such a sale is filed under is an approximation rather than a measurement. Four situations are possible for any one quota: every won and lost sale behind the figures carries a close date, and the year is measured; some do and some do not; none do, so every figure is filed under the year those sales were opened; or the owner has no won or lost sales at all, in which case a $0 is a real, measured zero and there is nothing to qualify.

Those four situations are how the whole system talks about this, not one screen's wording, and where a screen can tell you which one you are in, it does.

On the desktop, the Entrepreneur Dashboard's Revenue and Lifetime Revenue readings follow this rule and light an amber DATE lamp in the warning row when the sales behind them are not all close-dated (Chapter 1). The desktop Quotas figures themselves do not yet flag it — read this section as the qualification that belongs to them.

The mobile app does not show quota figures yet. Quota targets are not downloaded to the device, so instead of a board it tells you so, and says your sales already sync and the figures will compute as soon as targets arrive. Nothing on the mobile Quotas screen is a number you need to qualify today.

Wherever it is counted, the count covers all of that owner's won and lost sales, not only the ones that landed in the year you are looking at. A sale with no close date can just as easily be missing from this year as wrongly added to it, and counting only what arrived would hide the first case entirely. And it appears only when it applies: this is the same principle as the amber strip above — a caveat shown permanently is a caveat you learn to stop reading.

Order Desk

The Order Desk module (quotes / orders / inquiries — filters, columns and menu are in place) is a shell in this release: no orders are loaded and no order can be created. Quotes and invoices are handled today by Sales and Financials (Chapters 4 and 7). Its Column Setup button already works (Chapter 20) so the columns are ready for when orders load. Every button that would otherwise need real order data — ribbon New Quote, New Order, Open, and the right-click menu's Open / Properties — says so plainly ("...is planned") instead of doing nothing or crashing.

The list therefore says "Order Desk is not connected to any data yet" — and it says the same thing whichever filter you pick, because the filter is not the reason the list is empty. Unlike the modules that fill from the desktop through the cloud sync (Agreements, Financials, HR), Order Desk has no sync to wait on: there is nowhere for an order, quote or inquiry to be stored yet.

Messages

Icon bar ▸ Messages (the label shows your unread count) — one chat window for two kinds of conversation: - Users — internal one-to-one messages between TechieCRM users (stored as notes of type Messenger on the two users; the history is in each user's Interactions ▸ Messages). - Clients (texts) — SMS threads with client entries, sent and received through the TechieCRM cloud (Twilio; needs the SMS add-on — the composer says so when it's off). Every text is also filed on the client as a Text Message note — sent texts at send time (note owner = the sending user), received texts the moment they sync in (before anyone opens them) — so the client's notes / Interactions ▸ Messages carry the whole two-way history across all users. A reply from a client shows in the Messages list of every user who has texted that client (and of everyone when nobody has yet), so whoever is available can answer. Toolbar: Show (All / Users / Clients (texts)) · User (My Messages; a supervisor — MASTER or a login listed under messages_supervisors in the app config — can pick another user to view their conversations, read-only, the way the calendar's user focus works) · New message to a user · New text to a client (search) · bell (cloud notifications) · Refresh · Close. (There is no ⚙ Settings button — Messages has no configurable settings anywhere in the application, so as of the September 2026 update the gear that used to open a "not yet implemented" message was removed rather than kept as a dead end.) Left: conversations (badge icon per kind, name, last message, time, unread count in bold); right: the chat (yours right/blue, theirs left/grey) and the composer (Send). Viewing a conversation marks it read; the list refreshes every 30 s. Also reachable from Clients ▸ right-click ▸ Send Text…, a user row ▸ Message…, and by double-clicking a Messages row in Interactions. E-mail is not here — see Chapter 12 (Email). If a message can't be sent: from the September 2026 update, a send that fails because TechieCRM could not read the shape of the message store (the connection dropped, or your sign-in isn't allowed to read the database catalogue) is refused with the real reason — "The schema of 'AMGR_Notes_Tbl' could not be read from the database: …". Earlier builds produced a bare SQL syntax error that never mentioned the connection. The same applies to filing a client text as a note. Nothing is stored in either case, so a message is never half-sent. Not yet available: group conversations, attachments, deleting messages.