{"id":335050,"date":"2026-08-13T06:54:13","date_gmt":"2026-08-13T06:54:13","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/website-guy-retail-cash-manager\/"},"modified":"2026-08-13T06:38:55","modified_gmt":"2026-08-13T06:38:55","slug":"website-guy-retail-cash-manager","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/website-guy-retail-cash-manager\/","author":20455127,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"0.4.2","stable_tag":"trunk","tested":"7.0.4","requires":"6.2","requires_php":"7.4","requires_plugins":null,"header_name":"Website Guy Retail Cash Manager","header_author":"Website Guy","header_description":"Branch-based operational cash management for retail teams.","assets_banners_color":"","last_updated":"2026-08-13 06:38:55","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":11,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":[],"upgrade_notice":{"0.4.2":"<p>Adds the optional Modern interface and per-user density preferences. Classic remains the default and no database migration is required.= 0.3.25 =\nCreates the cash movement ledger and evolves the dormant cash drop table. Existing proposed or imported cash drop values remain unposted until explicitly confirmed.<\/p>","0.3.24":"<p>Creates branch cash-location records and associates cash-ups with the default till group. No cash balances or movement-ledger entries are created.<\/p>","0.3.23":"<p>Adds UI and expense-range polish and corrects converter cash mapping. Existing imported data is not changed automatically; regenerate CSVs and reimport only when deliberately refreshing historical test\/staging data.<\/p>","0.3.22":"<p>Adds cash drop and carried-forward float groundwork plus report scrolling polish. Existing cash-ups keep blank drop\/carry values; historical values require regenerated CSVs and reimport on a reset\/staging dataset.<\/p>","0.3.21":"<p>Improves the Daily Cash-Up Breakdown layout with horizontal scrolling, sticky edge columns, and a compact table option. No database migration is required.<\/p>","0.3.20":"<p>Adds sortable Daily Cash-Up Breakdown headers and clarifies admin access to System \/ Maintenance audit entries. No database migration is required.<\/p>","0.3.19":"<p>Adds all-reportable-branches range reporting, report date shortcuts, Cash-Up previous\/next day navigation, and renames exact Cafe supplies expense type rows to Coffee \/ Juice Bar Supplies where safe. No reimport is required for the report aggregate fix.<\/p>","0.3.18":"<p>Fixes historical import branch routing for daily expense rows and improves visibility of system\/import audit entries. Re-run the converter and reset\/reimport test data. No database migration is required.<\/p>","0.3.17":"<p>Adds explicit historical expense-only cash-up candidate handling for Import Tools. No database migration is required.<\/p>","0.3.16":"<p>Fixes historical import validation so expense-only branch\/date rows block apply before any writes. No database migration is required.<\/p>","0.3.15":"<p>Improves import staff matching and adds an admin-only staff signoff copy utility. No database migration is required.<\/p>","0.3.14":"<p>Fixes an Import Tools admin fatal. No database migration is required.<\/p>","0.3.13":"<p>Adds guarded admin-only historical import apply mode. No database migration is required.<\/p>","0.3.12":"<p>Fixes dry-run report consistency only. No database migration is required.<\/p>","0.3.11":"<p>Improves dry-run matching only. No database migration is required.<\/p>","0.3.10":"<p>Adds admin-only import dry-run validation. No database migration is required.<\/p>","0.3.9":"<p>Danger Zone reset safety polish only. No database migration is required.<\/p>","0.3.8":"<p>Adds an admin-only test data reset. No database migration is required.<\/p>","0.3.7":"<p>Cash-Up form layout polish only. No database migration is required.<\/p>","0.3.6":"<p>Cash-Up multiple inline expense polish only. No database migration is required.<\/p>","0.3.5":"<p>Cash-Up save-flow and dashboard panel polish only. No database migration is required.<\/p>","0.3.4":"<p>Cash-Up UX polish only. No database migration is required beyond the existing 0.3.3 schema.<\/p>","0.3.3":"<p>Adds non-destructive cash-up channel entered flags. Existing channel values are treated as entered to preserve current reports.<\/p>","0.3.2":"<p>Keeps denomination counting behavior unchanged while reducing Plugin Check SQL preparation warnings.<\/p>","0.3.1":"<p>Fixes a Cash-Up screen fatal error in the denomination count field rendering.<\/p>","0.3.0":"<p>Adds currency, denomination, branch denomination, and reusable denomination count tables. Existing cash-ups continue to work.<\/p>","0.2.0":"<p>Existing custom database tables are retained. Prefixed option names are used for new settings, with legacy test-install option fallbacks.<\/p>"},"ratings":[],"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":[],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[8533,31889,275458,3654,11787],"plugin_category":[],"plugin_contributors":[269138],"plugin_business_model":[],"class_list":["post-335050","plugin","type-plugin","status-publish","hentry","plugin_tags-audit","plugin_tags-branch","plugin_tags-cash-management","plugin_tags-reports","plugin_tags-retail","plugin_contributors-gwame","plugin_committers-gwame"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/website-guy-retail-cash-manager.svg","icon_2x":false,"generated":true},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Website Guy Retail Cash Manager records branch-scoped cash-ups, denomination counts, expenses, staff signoff names, payment channels, reports, and audit log entries. It offers an optional Modern application interface alongside the default Classic interface, with independent Comfortable and Compact display-density preferences. Administrators can also use RCM Setup Transfer to move whitelisted RCM configuration between sites with a mandatory dry-run; it never transfers transactional history, WooCommerce data, passwords, or credentials.<\/p>\n\n<p>Current active workflows include branch cash-ups, Cash Control V2 Clearing, whole-bag Cash Drop recounts, pending expected\/actual channel values, cash denomination counting in cash-ups, branch standard float, cash-location setup, authoritative scoped Safe Count reconciliation, proposed and formally confirmed sealed cash drops, an immutable cash movement ledger, guarded legacy-drop migration and first-live till cutover, payment channel discrepancies, expenses, safe expense cancellation, staff signoff names, branch-scoped permissions, dashboard summaries, daily\/range reports, Daily Cash-Up Breakdown, email notifications, branch-specific notification recipients, audit log, an admin-only test data reset, an admin-only staff signoff copy utility, and an admin-only guarded historical import validation\/apply screen.<\/p>\n\n<p>Movement references are displayed in the concise MOV-00001 format while stable UUID and technical references remain available internally.<\/p>\n\n<p>Lodgement Preparation, change deliveries, generic transfers, denomination exchanges, advanced cash-control reports, and multi-till cash-ups are not active yet. Classic remains the default interface; Classic and Modern use the same operational data, permissions, and handlers.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>website-guy-retail-cash-manager<\/code> folder to <code>\/wp-content\/plugins\/<\/code>, or upload <code>website-guy-retail-cash-manager.zip<\/code> through Plugins &gt; Add New &gt; Upload Plugin.<\/li>\n<li>Activate Website Guy Retail Cash Manager through the Plugins screen.<\/li>\n<li>Use the generated Cash Management page or place <code>[websiteguy_retail_cash_manager]<\/code> on a page manually.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20plugin%20create%20wordpress%20users%3F\"><h3>Does this plugin create WordPress users?<\/h3><\/dt>\n<dd><p>No. WordPress users are managed by WordPress. Staff signoff names are branch-scoped operational labels used for cash-up and expense accountability.<\/p><\/dd>\n<dt id=\"does%20this%20build%20include%20denomination%20counts%2C%20safes%2C%20cash%20drops%2C%20or%20lodgements%3F\"><h3>Does this build include denomination counts, safes, cash drops, or lodgements?<\/h3><\/dt>\n<dd><p>Denomination counting is active for Cash-Up cash channels, Safe Counts, and whole-bag Cash Drop recounts. New manual and denomination Cash-Ups both count the full physical drawer. Submitted V2 Safe Counts preserve their variance and reconcile expected ledger balance to the physical count through an explicit immutable movement when needed. Cash-Up Clearing, sealed Cash Drops, and Cash Drop recount reconciliation are active. Lodgements, transfers, deliveries, and denomination exchanges are not active yet.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>0.4.2<\/h4>\n\n<ul>\n<li>Added an optional Modern application interface while retaining Classic as the default fallback.<\/li>\n<li>Added a per-user Classic\/Modern preference, safe preview, responsive desktop sidebar, and mobile navigation drawer.<\/li>\n<li>Added independent Comfortable and Compact display-density preferences, context-preserving interface switching, and dirty-form protection.<\/li>\n<li>Improved dashboard and shared application presentation, Cash-Up semantic columns and field alignment, Compact nested content\/control density, accessibility, and button-state contrast.<\/li>\n<li>Fixed Classic Compact Cash-Up column overlap and inconsistent Modern action-button and field widths.<\/li>\n<li>Hardened WordPress.org identifiers and verified every active translation call uses the literal <code>website-guy-retail-cash-manager<\/code> text domain.<\/li>\n<li>Removed the generic legacy shortcode; use <code>[websiteguy_retail_cash_manager]<\/code>.<\/li>\n<li>Isolated the configurable Classic accent from the fixed blue Modern interface palette.<\/li>\n<li>No database schema migration is required; both interfaces use the same operational data and handlers.<\/li>\n<\/ul>\n\n<h4>0.4.1<\/h4>\n\n<ul>\n<li>Added whole-bag Cash Drop recount drafts with exclusive bag reservations and denomination snapshots.<\/li>\n<li>Matching recounts transfer recorded value to Banking Safe Available; shortages and overages use an explicit variance movement.<\/li>\n<li>Added Staff Signoff completion, manager variance review, stale-draft warnings, cancellation, immutable history, and reversal.<\/li>\n<li>Added recount permissions, audit\/ledger integration, Setup Transfer exclusions, and dependency-safe Danger Zone ordering.<\/li>\n<li>Added provider-agnostic zero-, one-, and two-value card modes, staged provider-total completion after cash is closed, and audited card corrections.<\/li>\n<li>Added an authorised branch picker that preserves allowlisted view context, protects unsaved forms, and retains Cash Control fragments.<\/li>\n<li>Extended Compact density to populated Cash-Up, Cash Drop, recount, Safe Count, movement, and history detail components.<\/li>\n<li>Cash-side correction is blocked when downstream recount evidence exists; no bag, movement, or recount history is rewritten.<\/li>\n<li>Hardened Setup Transfer, streamed import validation, localisation, and release packaging for WordPress.org review.<\/li>\n<li>Lodgement Preparation remains future work.<\/li>\n<li>This version is a release candidate undergoing final local package review.<\/li>\n<\/ul>\n\n<h4>0.4.0<\/h4>\n\n<ul>\n<li>Added Cash Control V2 Phase 1 stable references, branch migration state, and guarded legacy Cash Drop reclassification.<\/li>\n<li>Banking Safe now represents available loose cash; confirmed V2 drops are tracked separately as Sealed Cash Drops.<\/li>\n<li>Added idempotent Cash-Up Clearing so the Shared Till ledger closes to standard float plus retained carried-forward cash.<\/li>\n<li>Added an authorised correction workflow that reverses a finalised Cash-Up cash-position operation before a replacement revision is posted.<\/li>\n<li>Historical Safe Counts remain visible as Legacy \/ scope unknown and are excluded from authoritative V2 latest-count selection.<\/li>\n<li>Submitted V2 Safe Counts require active branch Staff Signoff and reconcile expected balance to physical count through one idempotent movement when variance is non-zero.<\/li>\n<li>Added Sealed Cash Drops to Safe Overview and clarified first-live Shared Till cutover.<\/li>\n<li>Manual and denomination Cash-Up modes now share the full physical drawer basis without reinterpreting historical manual records.<\/li>\n<li>Setup Transfer format 2 carries V2 location definitions only; Danger Zone understands V2 transactional dependencies.<\/li>\n<li>Movement references use concise MOV-00001 display codes while retaining stable UUIDs and technical references internally.<\/li>\n<li>Fixed guarded Shared Till cutover confirmation handling and preserved form state after rejected requests.<\/li>\n<li>Cash Drop recount, lodgement, delivery, transfer, exchange, and full transactional transfer workflows remain out of scope.<\/li>\n<\/ul>\n\n<h4>0.3.26.2<\/h4>\n\n<ul>\n<li>Added a shared Comfortable \/ Compact display preference per user.<\/li>\n<li>Added collapsible Cash Control sections and per-denomination bundle-counting controls.<\/li>\n<li>Improved compact Cash-Up and report layouts, Safe Count cards, history links, and Setup Transfer handling of disabled bundle overrides.<\/li>\n<li>Fixed Setup Transfer dry-run feedback, Safe Count first-save persistence, Safe Count History deep links, and required Staff Signoff validation when submitting a Safe Count.<\/li>\n<\/ul>\n\n<h4>0.3.26.1<\/h4>\n\n<ul>\n<li>Added administrator-only RCM Setup Transfer for setup\/configuration JSON export and merge-only import dry-runs.<\/li>\n<li>Added checksum validation, stable-key configuration matching, guarded apply confirmation, optional local test-user creation, and notification-recipient safety controls.<\/li>\n<li>Setup exports exclude cash-ups, expenses, movements, counts, audit history, WooCommerce data, passwords, and credentials.<\/li>\n<\/ul>\n\n<h4>0.3.26<\/h4>\n\n<ul>\n<li>Added Safe Counts under Cash Control with manual or denomination count methods.<\/li>\n<li>Added explicit safe opening balance movements and reviewed safe variance adjustments.<\/li>\n<li>Added safe count history, corrected-count drafts, and branch permissions for safe workflows.<\/li>\n<li>Danger Zone now clears safe count transactional data while preserving safe definitions.<\/li>\n<\/ul>\n\n<h4>0.3.25.2<\/h4>\n\n<ul>\n<li>Cash-Up now explains how active same-day cash expenses affect cash discrepancy.<\/li>\n<li>Saved Cash-Up view shows expense-adjusted cash reconciliation details.<\/li>\n<li>Cash-up notification emails now show the cash expense component of cash discrepancy.<\/li>\n<li>No discrepancy calculation behaviour changed.<\/li>\n<\/ul>\n\n<h4>0.3.25.1<\/h4>\n\n<ul>\n<li>Cash Movement Ledger now defaults to Month to Date and includes Today, Yesterday, This Week, Last Week, This Month, Last Month, Year to Date, and All Time shortcuts.<\/li>\n<li>Cash-Up Total Sales and Expenses summary cards now show hover\/focus breakdowns.<\/li>\n<li>Existing saved cash-ups now open in read-only view mode before editing.<\/li>\n<li>Simplified cash-drop confirmation wording for retail staff.<\/li>\n<li>Cash-up notification emails now include cash-drop status and details.<\/li>\n<\/ul>\n\n<h4>0.3.25<\/h4>\n\n<ul>\n<li>Added an immutable general cash movement ledger and formal cash drop workflow.<\/li>\n<li>Added explicit Cash-Up confirmation for posting a Shared Till Group to Banking Safe movement.<\/li>\n<li>Added non-binding suggested drop guidance, optional bag\/reference and notes, posted-drop display, and reason-required reversal\/cancellation.<\/li>\n<li>Added a minimal Cash Control drop list and permission-gated read-only movement ledger.<\/li>\n<li>Existing\/imported cash-ups are not converted into formal drops or historical movements.<\/li>\n<\/ul>\n\n<h4>0.3.24<\/h4>\n\n<ul>\n<li>Added the authoritative branch cash-location foundation.<\/li>\n<li>Added one default Shared Till Group and Banking Safe per branch.<\/li>\n<li>Added opt-in Change Float Safe configuration with a branch-specific target.<\/li>\n<li>Associated existing and new cash-ups with the default till group without enabling multiple cash-ups per date.<\/li>\n<li>Kept dormant till, safe, and safe-ledger tables as non-authoritative compatibility placeholders.<\/li>\n<li>Added no cash movements, formal drops, safe counts, lodgements, deliveries, or transfers.<\/li>\n<\/ul>\n\n<h4>0.3.23<\/h4>\n\n<ul>\n<li>Added controlled compact-mode line wrapping for Daily Cash-Up Breakdown headers.<\/li>\n<li>Added accessible collapsible Branch Settings sections.<\/li>\n<li>Added inclusive From\/To date filtering and quick ranges to Expenses.<\/li>\n<li>Added standard-float helper values inside the denomination counter.<\/li>\n<li>Corrected historical Shop cash mapping so actual cash is Drop value plus Float carried over.<\/li>\n<\/ul>\n\n<h4>0.3.22<\/h4>\n\n<ul>\n<li>Added a synced top horizontal scrollbar for the Daily Cash-Up Breakdown table.<\/li>\n<li>Added branch shared\/default till standard float setting.<\/li>\n<li>Added cash-up cash drop and float carried-over fields with Cash-Up helper display.<\/li>\n<li>Added Cash drop and Float carried over report columns.<\/li>\n<li>Added converter and Import Tools support for historical cash drop and carried-forward values.<\/li>\n<\/ul>\n\n<h4>0.3.21<\/h4>\n\n<ul>\n<li>Added a dedicated horizontal scroll wrapper for the Daily Cash-Up Breakdown report table.<\/li>\n<li>Added a compact table display toggle for large report ranges.<\/li>\n<li>Kept Date and Staff Signoff visible with sticky report-table columns where supported.<\/li>\n<\/ul>\n\n<h4>0.3.20<\/h4>\n\n<ul>\n<li>Added client-side sortable headers to the Daily Cash-Up Breakdown report table.<\/li>\n<li>Added accessible sort direction states and visual indicators for sortable report columns.<\/li>\n<li>Clarified System \/ Maintenance audit visibility for WordPress admins in the frontend Audit Log.<\/li>\n<\/ul>\n\n<h4>0.3.19<\/h4>\n\n<ul>\n<li>Fixed imported range report aggregates by adding an all-reportable-branches scope and summing active expenses directly for the inclusive date range.<\/li>\n<li>Added Week to Date, Month to Date, and Year to Date report shortcuts.<\/li>\n<li>Added Cash-Up Previous Day and Next Day navigation relative to the selected date.<\/li>\n<li>Renamed the historical import expense type Cafe supplies to Coffee \/ Juice Bar Supplies with a narrow upgrade rename for exact existing rows.<\/li>\n<\/ul>\n\n<h4>0.3.18<\/h4>\n\n<ul>\n<li>Fixed historical converter expense branch assignment so daily B:C expense rows map to Shop by source position rather than raw label text.<\/li>\n<li>Added Import Tools branch assignment reasons to admin dry-run samples.<\/li>\n<li>Added an admin System \/ Maintenance audit filter so import\/reset audit entries are easier to find.<\/li>\n<\/ul>\n\n<h4>0.3.17<\/h4>\n\n<ul>\n<li>Added explicit Import Tools support for historical expense-only cash-up candidates, with separate dry-run\/apply counts and no invented payment channel values.<\/li>\n<\/ul>\n\n<h4>0.3.16<\/h4>\n\n<ul>\n<li>Fixed Import Tools dry-run validation so expenses without matching imported branch\/date cash-up candidates are reported as blocking errors before apply.<\/li>\n<\/ul>\n\n<h4>0.3.15<\/h4>\n\n<ul>\n<li>Improved historical import staff matching with accent-insensitive normalisation, first-component handling, unique cross-branch fallback, and ambiguous match reporting.<\/li>\n<li>Added an admin-only Users tab utility to copy missing staff signoff names between branches without copying users or permissions.<\/li>\n<\/ul>\n\n<h4>0.3.14<\/h4>\n\n<ul>\n<li>Fixed an Import Tools admin fatal caused by an invalid PHP filter constant.<\/li>\n<\/ul>\n\n<h4>0.3.13<\/h4>\n\n<ul>\n<li>Added guarded admin-only apply mode for historical cashbook CSV imports after a clean dry-run, with backup acknowledgement, exact confirmation phrase, no overwrite behaviour, email suppression, and one maintenance audit entry.<\/li>\n<\/ul>\n\n<h4>0.3.12<\/h4>\n\n<ul>\n<li>Fixed Import Tools dry-run expense type warning consistency and clarified staff matching\/non-blocking handling before future apply mode.<\/li>\n<\/ul>\n\n<h4>0.3.11<\/h4>\n\n<ul>\n<li>Improved Import Tools dry-run matching for historical payment channel aliases, branch-aware expense types, and old workbook staff signoff variants.<\/li>\n<\/ul>\n\n<h4>0.3.10<\/h4>\n\n<ul>\n<li>Added an admin-only Import Tools screen for dry-run validation of normalised historical import CSVs against the installed RCM database. No database writes or apply\/import action are available.<\/li>\n<\/ul>\n\n<h4>0.3.9<\/h4>\n\n<ul>\n<li>Made the admin Danger Zone reset safer by leaving audit-entry removal unchecked by default, adding a stronger irreversible warning, requiring backup\/export acknowledgement, and styling the reset button as destructive.<\/li>\n<\/ul>\n\n<h4>0.3.8<\/h4>\n\n<ul>\n<li>Added an admin-only Danger Zone reset for clearing test cash-ups, expenses, and related cash-up count data while preserving setup\/configuration records.<\/li>\n<\/ul>\n\n<h4>0.3.7<\/h4>\n\n<ul>\n<li>Moved Cash-Up Staff Signoff to the bottom of the form.<\/li>\n<li>Collapsed inline expense rows by default behind an Add expense button.<\/li>\n<li>Kept multiple inline expense rows inside the main Save Cash-Up flow.<\/li>\n<\/ul>\n\n<h4>0.3.6<\/h4>\n\n<ul>\n<li>Added repeatable Cash-Up inline expense rows.<\/li>\n<li>Added Cash-Up same-day expenses list after the save form.<\/li>\n<li>Blank inline expense rows are ignored; partially started rows are validated.<\/li>\n<\/ul>\n\n<h4>0.3.5<\/h4>\n\n<ul>\n<li>Folded Cash-Up inline expense entry into the main Save Cash-Up flow.<\/li>\n<li>Widened dashboard hover breakdown panels on desktop while preserving narrow-screen scrolling fallback.<\/li>\n<li>Added optional inline expense validation so blank fields do not create empty expenses.<\/li>\n<\/ul>\n\n<h4>0.3.4<\/h4>\n\n<ul>\n<li>Added Today and Yesterday shortcuts to Cash-Up.<\/li>\n<li>Hid scoped numeric input spinner controls in the RCM app.<\/li>\n<li>Added a non-blocking all-zero denomination count warning.<\/li>\n<li>Improved dashboard hover breakdowns with low-height horizontal scrolling.<\/li>\n<\/ul>\n\n<h4>0.3.3<\/h4>\n\n<ul>\n<li>Added pending expected\/actual flags for cash-up channel values so blanks no longer create false zero discrepancies.<\/li>\n<li>Added an internal normalized cash-up save path for future CSV\/Excel import tooling.<\/li>\n<\/ul>\n\n<h4>0.3.2<\/h4>\n\n<ul>\n<li>Cleaned up the branch denomination query so the enabled-only condition is handled with explicit prepared SQL.<\/li>\n<\/ul>\n\n<h4>0.3.1<\/h4>\n\n<ul>\n<li>Fixed a Cash-Up fatal error caused by an unavailable readonly helper.<\/li>\n<li>Added a QA guard to prevent the same helper call being reintroduced.<\/li>\n<\/ul>\n\n<h4>0.3.0<\/h4>\n\n<ul>\n<li>Added EUR currency and denomination schema defaults.<\/li>\n<li>Added branch denomination settings and cash count mode.<\/li>\n<li>Added denomination counting to Cash-Up cash channels with live totals and saved count snapshots.<\/li>\n<li>Existing manual cash-up entry remains valid.<\/li>\n<\/ul>\n\n<h4>0.2.0<\/h4>\n\n<ul>\n<li>Updated WordPress.org metadata, text domain, prefixes, and version consistency.<\/li>\n<li>Added Daily Cash-Up Breakdown, safe expense cancellation, improved notification settings, and branch-specific notification recipients.<\/li>\n<\/ul>\n\n<h4>0.1.9<\/h4>\n\n<ul>\n<li>Added Expenses Yesterday shortcut, configurable email notifications, branch notification recipients, and Users tab layout polish.<\/li>\n<\/ul>\n\n<h4>0.1.8<\/h4>\n\n<ul>\n<li>Added Phase 2.5 workflow polish for button contrast, staff signoff management, expense type deactivation, cash-up expense entry, and yesterday dashboard cards.<\/li>\n<li>Documented a safe CSV-first historical import pathway.<\/li>\n<\/ul>\n\n<h4>0.1.7<\/h4>\n\n<ul>\n<li>Coding standards cleanup for metadata, request handling, escaping annotations, and readme structure.<\/li>\n<\/ul>\n\n<h4>0.1.6<\/h4>\n\n<ul>\n<li>Added user-to-staff-signoff pathway and global accent colour reset.<\/li>\n<\/ul>\n\n<h4>0.1.5<\/h4>\n\n<ul>\n<li>Phase 2 polish and dashboard\/email improvements.<\/li>\n<\/ul>","raw_excerpt":"Branch-based operational cash management for retail teams.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/335050","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=335050"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/gwame"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=335050"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=335050"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=335050"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=335050"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=335050"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=335050"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}