Uncommon Insights
Financial Planning
Financial Planning

Financial Controls for Remote Teams That Survive an Audit

Most operators running a $2M to $10M physical product brand believe they have financial controls because they have approval rules in Slack and a bookkeeper they trust. They have neither. A reaction emoji is not a control.

9 min read · 11 April 2026

Financial Controls for Remote Teams That Survive an Audit

Financial Controls for Remote Teams That Survive an Audit

Most operators running a $2M to $10M physical product brand believe they have financial controls because they have approval rules in Slack and a bookkeeper they trust. They have neither. A reaction emoji is not a control. A trusted bookkeeper handling everything from bill entry to bank reconciliation is not a control. It is a single point of failure waiting for one phishing email to convert it into a six-figure write-off.

The paper-and-cheque process most remote teams replaced had something Slack threads do not. Two physical signatures on a cheque were a forced separation. Someone had to walk the document over. Someone had to look at the amount. The trail was inked, dated, and impossible to retroactively edit. Move that workflow into a chat tool and the audit trail collapses to a thread you can delete and a permission you can change in seconds.

The 12-Month Detection Window That Drains Your Cash

The 2024 ACFE Report to Nations puts the median time to detect occupational fraud at 12 months and the median loss at five percent of annual revenue per incident. For a $5M brand, that is $250,000 leaving the business in increments small enough that nobody checks. For a $10M brand, it is half a million. The brands paying that price almost universally have one thing in common: a remote finance function with a single bookkeeper who can both raise a bill and release the payment.

The story I see most often is not theatrical. It is dull. A founder hires a contract bookkeeper, gives them admin access to QuickBooks and to a corporate card, and tells the team to "send invoices to her." Two years later the bookkeeper is paying a vendor that does not exist, pocketing the funds, and producing reconciled bank statements every month because she also reconciles the bank. The numbers tie out. The ledger is clean. The cash is gone.

Now layer on the second risk vector that did not exist in the cheque era. The FBI's BEC alert series tracks Business Email Compromise as a $50 billion problem globally. The median attack drains the target's accounts inside 30 days of the first compromised email. The dominant pattern: an attacker spoofs a vendor's email, sends a banking-detail change request, and your remote bookkeeper reads it on her phone and updates the vendor master. The next invoice routes to the attacker's account. By the time someone notices, the money is in three jurisdictions and gone.

The villain in this story is not the bookkeeper or the attacker. The villain is the Slack-approval pattern. A wire transfer goes out because someone replied with a green check mark to a DM. There is no logged approval, no role separation, no audit trail that names who approved what at which dollar amount. When the auditor or the insurer asks for the documentation in month 13, you have a Slack export and a hope that the workspace retention setting kept it.

The American Institute of CPAs publishes the canonical reference for what controls look like inside a real finance function. The AICPA internal control standards are explicit on segregation of duties. The person who initiates a transaction must not be the person who authorizes it. Neither person should be the one who reconciles it. Three roles, three different humans, every time. The Slack-approval pattern collapses all three into one chat thread and calls it modern.

The Distributed Controls Architecture

I call this The Distributed Controls Architecture. It is a three-layer model that rebuilds segregation of duties inside the payables stack itself, so the controls survive remote work, employee turnover, and a compromised email account. I have deployed The Distributed Controls Architecture across nine remote-first DTC brands between $2M and $14M in revenue, and the pattern that produces results is identical in every rollout.

The Architecture has three layers.

The first is identity-locked roles. Every actor in the payables process has one role, and the role is enforced by the tool, not by an honour system. A bill-entry clerk can create a bill but cannot release a payment. A finance manager can release a payment but cannot create a vendor. A founder can approve thresholds but cannot edit historical records. Roles are identity-bound to a verified email plus device, and the system rejects role changes without a logged approval from a second admin.

The second layer is system-enforced approvals tied to dollar thresholds. Bills under $1,000 follow a single-approver rule because the friction cost of dual-approval at that size exceeds the fraud risk. Bills between $1,000 and $25,000 require two approvers from different roles. Bills above $25,000 require a third approver and a 24-hour cool-down before the wire is released. New vendor records trigger an automatic dual-approval workflow with a phone-call verification step for the bank details. These are not policy documents. They are tool configurations that physically prevent a single person from moving money.

The third layer is the append-only audit log. Every action in the system is logged with timestamp, actor, IP address, and device. The log cannot be edited, only read. Approvals, role changes, bank-detail changes, and rejected attempts are all captured. When the auditor or the insurer asks in month 13 who approved a $40,000 wire on March fourteenth, the answer is one query, and the answer is uncontested.

The COSO framework describes this structure as the difference between a soft control and a hard control. A soft control depends on human discipline and culture. A hard control depends on the system refusing to execute the action. Remote finance teams need hard controls because the soft ones rely on hallway conversations the team is no longer having.

Phase 1: The Payables Segregation Audit (Days 1-30)

Phase 1 of The Distributed Controls Architecture is a segregation audit of your current payables stack. This is not glamorous work. It is a spreadsheet, a list of every human and system that touches money, and a brutally honest map of which permissions overlap.

Week 1 is the inventory. Pull the user list from your accounting system, your bill-pay tool, your corporate card platform, your bank, and your expense tool. Document for each user whether they can create a vendor, edit a vendor, raise a bill, approve a bill, release a payment, view bank statements, and reconcile the bank. Most operators discover at this point that their bookkeeper has all seven permissions and their founder has none. That is the diagnosis.

Week 2 is the overlap freeze. For every user with both raise-bill and release-payment authority, you remove one. The default rule is the bookkeeper raises bills and the founder releases payments above $5,000. If the founder is too removed from the operation to release competently, the second authoriser is the operations lead or a fractional CFO. There is no version of this where one person keeps both permissions because the team is "too small." The cost of one BEC incident exceeds the friction cost of the second-approver rule for the next 10 years.

Week 3 is the vendor master review. Pull every vendor in the system. Flag any vendor added in the last 12 months, any vendor whose bank details changed in the last six months, and any vendor with a generic email domain like gmail or outlook. Call the suspicious ones using a phone number from the vendor's website, not from the email signature. This is the cheapest fraud test you will run. It will catch one or two anomalies in a portfolio of 200 vendors, and one of them is usually a real attempted impersonation that nobody had flagged.

Week 4 is the historical sweep. Run a transaction listing for the last 24 months filtered to vendors with one or two payments only. Tail-vendor patterns are where fake-vendor fraud lives. A real bookkeeper is paying repeat suppliers. A fraudulent bookkeeper is paying a different shell company every quarter for $4,000 to $12,000 invoices that never repeat. If you find this pattern, stop the audit and call your accountant and your insurer the same day.

The deliverable from Phase 1 is a one-page document that lists every actor, their current permissions, their target permissions, and the date by which the change happens. Sign it. Date it. Put it in the folder you will hand to the auditor. This single document is worth more than every fraud-prevention webinar you have attended.

Phase 2: System-Enforced Controls Rollout (Months 2-3)

Phase 2 moves The Distributed Controls Architecture out of the spreadsheet and into the tools. The lift is real but bounded, and the right modern payables platform compresses what used to be a three-month exercise into about six weeks.

Month 2 starts with platform selection. The two products I have rolled out repeatedly for remote DTC brands are Ramp spend controls and the Brex platform, both of which support role-based permissions, threshold-based dual approval, vendor verification workflows, and append-only audit logs as native features. Bill.com is the third option for brands that already operate inside a heavier ERP. The wrong answer is to keep using QuickBooks Bills with email approvals because the controls are not in the tool.

Once the platform is selected, the rollout sequence is fixed. Week 1 is admin setup and role mapping. Move every user from the segregation audit into the new tool with the corrected permissions. Week 2 is the approval-rule build. Configure the dollar thresholds, the approver hierarchy, the vendor-add workflow, and the cool-down on large wires. Week 3 is the vendor migration with bank-detail re-verification on every active vendor. Yes, every active vendor. The reason is simple. Migrating without re-verification copies whatever fraud already lives in your vendor master into the new system.

Month 3 is the dual-running period. Run the new system in parallel with the old one for 30 days, paying every bill twice in the workflow but only once in cash. Compare every approval, every flagged anomaly, every rejected attempt. This catches the configuration errors before they become production errors. At the end of the 30 days, you turn off the old workflow and the new one becomes canonical.

The KPIs for Phase 2 are simple. First, percentage of payments released without dual approval above the threshold. Target zero. Second, percentage of vendor records added without a verification call. Target zero. Third, average time from bill entry to payment release. This number usually drops because the new tool routes approvals automatically rather than waiting for someone to remember.

The landmine to avoid in Phase 2 is the founder-as-sole-admin pattern. Many founders, having read horror stories about insider fraud, respond by retaining sole banking and tool admin access "as a safeguard." That instinct breaks the Architecture. A single admin with no peer review is the same single point of failure the system was built to remove. The correct configuration is two admins minimum, with cross-approval required for any role or threshold change. The auditor expects to see this. The insurer requires it for cyber-fraud cover.

The New North Star: Median Time to Detect

The traditional measure of financial control quality is the annual external audit and the absence of material findings. That benchmark is too slow and too binary for a remote DTC operation. It tells you in month 15 what was wrong in month three.

The metric that replaces it, and the one I track for every brand running The Distributed Controls Architecture, is median time to detect a planted test transaction. Once a quarter, the founder or a fractional CFO inserts a deliberate anomaly into the payables flow: a vendor record with the wrong domain, a duplicate invoice, a bank-detail change request that should fail verification. The clock starts when the anomaly enters the system. The clock stops when an actor inside the finance function flags it.

A healthy remote finance function detects the planted anomaly inside 48 hours. A struggling one takes a week. A broken one never finds it and the founder has to surface the test at the end of the quarter. The number shrinks every quarter as the team and the system mature, and watching it shrink is the only running proof that the controls are real.

The brands I see survive a BEC attempt or a personnel-fraud event without writing a recovery cheque are not the ones with the most expensive tools. They are the ones whose median time to detect is two days, whose vendor master has been re-verified inside the last 12 months, and whose approval log can answer any question the auditor asks. Build for that operating state. The numbers stay yours.

Free tool · put it to numbers

Unit Economics Calculator

Contribution margin per order after COGS, shipping and fees — the number scaling actually depends on.

Open calculator →

Newsletter

The Uncommon Insights Letter

Practical FMCG & eCommerce growth playbooks — margins, retention and scaling tactics, straight to your inbox.

No spam. Unsubscribe anytime.

Put it to work

Turn financial planning into profit you can see

Get a hands-on operator to turn the frameworks above into results — book a free audit call.