Amazon settlements: Lexoffice CSV export follows the grid – exports exactly the visible (filtered) rows of the ticked periods instead of re-fetching whole periods; partial periods go out without payout/residue row and are reported; toolbar label shows rows · periods; grid height fills the remaining viewport (ResizeObserver + resize) (details)
Rules: note the visible-rows scope of the Amazon settlement Lexoffice CSV export (details)
Amazon settlements: periods with payout status Unknown/Failed are exportable (only Processing is excluded) – negative periods get an 'Amazon Belastung' payout row, failed transfers none; disabled export button explains how many visible rows sit in non-exportable/unticked periods (details)
Leads: Unanswered check skips expired leads by default (opt-in checkbox lists them badged, stat shows how many were skipped); one-click expire/reactivate clock column in the list (flags route, row leaves the list while 'Hide expired' is on, previous status restored on reactivate) (details)
DHL: token errors tell network/DNS failures ('DHL-API nicht erreichbar', credentials not checked) and DHL 5xx outages apart from real login rejections; recipe documents where the main DHL account lives and the Unbound resolver fix (details)
Commission page: sidebar regrouped (carrier header with logo → Shipping Address → Shipping → Tisch & Printing, no dead space); paket type as Nuxt UI SelectBox showing the real product names (Paket S/M/L/XL, Keine Verpackung, Kleinpaket) with CODE badge + hint via shared usePaketTypes catalog (modal select uses it too); shipping service as logo cards; Tisch as SelectBox; next-step banner on light tinted surface with dark text; commission-system pill moved to the bottom activity bar; achievement thresholds doubled (gold 20 / platinum 30 / diamond 40 in 10 min, test codes TEST20/30/40) (details)
Commission page: paket type picked from a chip grid (all types visible as buttons with name + CODE badge, click again clears, focus returns to the scanner input) instead of a dropdown (details)
Commission page: paket type chips collapsed behind a select-style row (placeholder or the chosen type with CODE badge + hint); click expands the grid, picking a chip or a CODE scan collapses it (details)
Commission page: shipping service cards collapsed behind the current choice (logo + name + hint), click expands, pick collapses; sidebar carrier header now follows the SELECTED service (logo + name) with the order's shipper as subline; logo images keyed so they re-render on change (details)
Leads: phone-call activities show the matching FreePBX recording inline (matched by time, ≤15 min), with cached whisper transcript preview (expand/copy), play button and a Transkribieren action; recordings route gains withTranscripts=1 to embed cached transcripts (details)
Rules: telephony — activity-entry transcript matching (by time only) and the local-dev PBX tunnel (CDR/recordings allow-list) (details)
Rules: lead e-mail history — ERP-sent staff mails now relay via Exchange (sender-dependent postfix relay on prod) so mailpiler archives them; IM chip still has no Sent copy (details)
Leads: CRM qualification fields (17 custom AD_User columns) with full CRUD on the lead page and inline editing in the leads list (details)
Leads: list columns reordered and compacted (stars after company, WV with note tooltip, Best./M., €/M., %, Gew. €, KI, shop system; status/description/last-activity/note columns removed); dashboard banner with follow-ups due today or overdue linking to the lead (details)
Leads list: €/month, win % and weighted € columns hidden by default (column menu) (details)
Leads list: rating cell no longer truncated with an ellipsis (no overflow clipping, tighter stars) (details)
Leads list: follow-up cell not truncated with an ellipsis (details)
Leads list: follow-up (WV) column moved to second position after Created (details)
Offer volume matrix: row label shortened to 'Basispreis pro Auftrag' (legacy label mapped on load); lead mail signature prints Phone and Phone2 of the sender (details)
Offers: cut-off time on by default in the quote; contract gets an 'Im Vertrag nennen' switch (seeded from the quote) that removes the cut-off SLA item and uses a time-free express clause when off (details)
Amazon settlements: Lexoffice CSV export follows the grid – exports exactly the visible (filtered) rows of the ticked periods instead of re-fetching whole periods; partial periods go out without payout/residue row and are reported; toolbar label shows rows · periods; grid height fills the remaining viewport (ResizeObserver + resize)
Amazon settlements: periods with payout status Unknown/Failed are exportable (only Processing is excluded) – negative periods get an 'Amazon Belastung' payout row, failed transfers none; disabled export button explains how many visible rows sit in non-exportable/unticked periods
Leads: Unanswered check skips expired leads by default (opt-in checkbox lists them badged, stat shows how many were skipped); one-click expire/reactivate clock column in the list (flags route, row leaves the list while 'Hide expired' is on, previous status restored on reactivate)
DHL: token errors tell network/DNS failures ('DHL-API nicht erreichbar', credentials not checked) and DHL 5xx outages apart from real login rejections; recipe documents where the main DHL account lives and the Unbound resolver fix
Commission page: sidebar regrouped (carrier header with logo → Shipping Address → Shipping → Tisch & Printing, no dead space); paket type as Nuxt UI SelectBox showing the real product names (Paket S/M/L/XL, Keine Verpackung, Kleinpaket) with CODE badge + hint via shared usePaketTypes catalog (modal select uses it too); shipping service as logo cards; Tisch as SelectBox; next-step banner on light tinted surface with dark text; commission-system pill moved to the bottom activity bar; achievement thresholds doubled (gold 20 / platinum 30 / diamond 40 in 10 min, test codes TEST20/30/40)
Commission page: paket type picked from a chip grid (all types visible as buttons with name + CODE badge, click again clears, focus returns to the scanner input) instead of a dropdown
Commission page: paket type chips collapsed behind a select-style row (placeholder or the chosen type with CODE badge + hint); click expands the grid, picking a chip or a CODE scan collapses it
Commission page: shipping service cards collapsed behind the current choice (logo + name + hint), click expands, pick collapses; sidebar carrier header now follows the SELECTED service (logo + name) with the order's shipper as subline; logo images keyed so they re-render on change
Leads: phone-call activities show the matching FreePBX recording inline (matched by time, ≤15 min), with cached whisper transcript preview (expand/copy), play button and a Transkribieren action; recordings route gains withTranscripts=1 to embed cached transcripts
Rules: lead e-mail history — ERP-sent staff mails now relay via Exchange (sender-dependent postfix relay on prod) so mailpiler archives them; IM chip still has no Sent copy
Leads: CRM qualification fields (17 custom AD_User columns) with full CRUD on the lead page and inline editing in the leads list
- LeadRating (yellow 1–5 stars), FollowUpDate (+ note, quick +1/+3/+7/+14, past days greyed out, overdue/today badges), MonthlyOrders, SkuCount, ShopSystem, BusinessModel + LostReason (reference lists read from the API), ExpectedMonthlyValue, WinProbability (auto per stage: working 25 · quote 50 · accepted 70 · contract 85 · signed 95 · converted 100 · lost 0, never lowered automatically), ExpectedStartDate, AiScore (written by KI-Analyse), AvgParcelWeight, address LeadStreet/LeadZip/LeadCity/LeadCountry (prefills quote & contract, written back on send) - every control autosaves via PUT /api/admin/users/:id/flags (whitelisted + validated in server/utils/leads/leadQualification.ts); Expired/Recycled asks for the lost reason - quote/contract send sync sizing assumptions, forecast total and address onto the lead; confirmation / signature bump the probability - website webhooks parse volume (range → midpoint), integrations and weight into the new columns, retrying without them on error - leads list: rating/follow-up/orders/€/probability/weighted/AI columns editable inline (explicit cellDataType), follow-up filter, weighted pipeline total; more columns via the column menu - lead page: Nuxt UI SelectBox for all selects (no tedir left), DateTimeInputLocal for activity start/end, notes = Comments only in the right column, organisation + search key in the header, two aligned cards "Bedarf & Profil" / "Pipeline & Bewertung" - recipe .claude/rules/leads/crm-qualification.md
Leads: list columns reordered and compacted (stars after company, WV with note tooltip, Best./M., €/M., %, Gew. €, KI, shop system; status/description/last-activity/note columns removed); dashboard banner with follow-ups due today or overdue linking to the lead
Offer volume matrix: row label shortened to 'Basispreis pro Auftrag' (legacy label mapped on load); lead mail signature prints Phone and Phone2 of the sender
Offers: cut-off time on by default in the quote; contract gets an 'Im Vertrag nennen' switch (seeded from the quote) that removes the cut-off SLA item and uses a time-free express clause when off