Cin7 System Health Check: What Actually Happens
A Cin7 System Health Check runs a fixed 7-step process, not a random review. See what each step checks, and why a fixed sync does not mean a fixed setup.

On this page
- TL;DR
- Why the Audit Log Is Not the Same as a Diagnostic
- Inside the 7-Step Diagnostic Sequence
- The Patterns a Health Check Is Actually Looking For
- Why the Free Tools and a Professional Review Answer Different Questions
- What a Correctly Configured Cin7 Account Looks Like
- What Unresolved Misalignment Actually Costs
- The Sync Is Not Broken. The Setup Is.
- Common Buyer Assumptions Worth Correcting
- Frequently Asked Questions
- Start a Systems and Reconciliation Diagnostic Review
Your stock count is wrong again. Or a completed order is showing zero cost of goods sold. Or the margin on last month's report does not match what the bank account says. You resync, you refresh, the error clears, and for a week or two, everything looks fine. Then it happens again.
At that point, most operators ask the same question: is this one glitch, or is something actually wrong with the setup?
A Cin7 System Health Check exists to answer that question directly, and it does so through a fixed, repeatable process rather than a random poke through your account.
TL;DR
A Cin7 System Health Check runs a fixed 7-step sequence, not an ad hoc review.
The built-in Cin7 audit log shows what changed. It does not evaluate whether the configuration and workflow behind those changes are sound.
A visible symptom, such as COGS at zero on a completed order, is usually a downstream sign of a misalignment sitting in a different layer of the system.
Fiskal treats a variance beyond 2 percent in COGS or gross margin as a signal of systemic failure, based on internal diagnostic thresholds.
The engagement ends in a consolidated report, an interactive dashboard, and a recorded walkthrough, not just a list of errors.
The Symptom Is Rarely the Whole Story
The pattern is familiar. A business notices something specific: a stock count that does not match what is on the shelf, a stockout on a fast-moving SKU, or a margin that quietly drifted the wrong way. The question that follows is always the same. Is this isolated, or is it systemic?
The natural assumption is that fixing the visible error fixes the numbers. The sync throws an error, someone resyncs it, the error clears, and the story ends there. In reality, visible errors are frequently downstream symptoms of something sitting further upstream, in the mapping, the master data, or the workflow logic that produced the transaction in the first place. A sync running cleanly again tells you the pipe is open. It does not tell you the water flowing through it is clean.
Why the Audit Log Is Not the Same as a Diagnostic
Cin7 Core includes a built-in audit log that tracks user actions, configuration changes, API updates, and role or permission changes. It is a genuinely useful record of what changed and when. What it does not do is evaluate whether the configuration and workflow logic behind those changes are actually correct.
This is where root cause and audit trail diverge. A log entry can confirm that a purchase bill was created, a tax rule was edited, or an integration setting was updated. It cannot tell you whether that purchase bill originated in the right system, whether that tax rule is now misapplied to a product category, or whether that integration setting is quietly breaking a mapping somewhere downstream.
Root causes that a health check looks for and an audit log will not surface on its own include:
Mapping and configuration drift between Cin7 and connected systems.
Cost allocation happening outside Cin7's own landed cost workflow.
Lock dates and period governance not enforced in tandem across systems.
Manual intervention used to force a financial outcome instead of correcting the source.
Paid functionality activated without the operational readiness to support it.
A sync that is running again does not mean the mapping, costing, or reconciliation logic behind it has been corrected. That distinction is the entire reason a professional review and a glance at the audit log are not interchangeable.
Inside the 7-Step Diagnostic Sequence
A Cin7 System Health Check runs in a fixed order, moving through four connected layers before finishing on a governance review. Configuration and mapping feed workflow execution, which feeds integration and sync governance, which feeds financial reconciliation. A weakness at any layer tends to surface as a symptom at the reconciliation layer, which is exactly why the visible symptom is rarely where the actual fix belongs. If you would rather see this process in action before reading through it step by step, watch the diagnostic walkthrough first.
| Step | What Fiskal Reviews | System Layer |
|---|---|---|
| 1. System Access and Context Gathering | Admin credentials across Cin7 Core, the connected ledger (Xero or QuickBooks Online), and every connected sales channel. | Access |
| 2. Subscription Tier and Shelf-Ware Audit | Active subscription tiers against unused modules, such as Foresight AI, demand replenishment planning tools, the B2B Portal, or POS. | Configuration |
| 3. Configuration and Master Data Hygiene Check | Reference books, tax rules, locations and bins, and catalog hygiene. | Configuration |
| 4. Operational Workflow Analysis | Purchasing, sales, fulfillment, stock movements, and assemblies. | Workflow |
| 5. Integration and Sync Governance Audit | Sync logs, skipped error queues, and clearing account mappings. | Integration |
| 6. Financial Reconciliation and Valuation Check | Financial transactions against stock on hand, Goods Received Not Invoiced (GRNI), and COGS alignment. | Reconciliation |
| 7. People, Process, and Governance Review | Segregation of duties, SOP coverage, and internal super-user capacity. | Governance |
One workflow detail worth understanding before Step 4 and Step 6 make sense together: authorizing a sales invoice in Cin7 Core posts a debit to Accounts Receivable and a credit to Revenue. COGS is not recognized at that point. It is triggered separately, when fulfillment happens, through authorization of the Ship tab, which posts a debit to COGS and a credit to Inventory Asset. An order that has been invoiced but not yet shipped will show revenue with no matching COGS. That is a timing gap between two workflow states, not proof that COGS is broken.
Step 7 is the one most businesses skip when they try to self-audit, and it is often where the real fix lives. A configuration error can be corrected in an afternoon. A configuration error that keeps returning three months later usually means nobody owns the process that created it in the first place. The governance review looks at who has access to make the changes that matter, whether a documented procedure exists for common tasks like receiving stock or issuing refunds, and whether the business has enough internal capacity to maintain a fix once Fiskal hands it back. A health check that stops at Step 6 hands the business a clean account with no guarantee it stays clean.
This sequence does not extend the same way for every account. A multi-entity, multi-currency, or heavily customized setup requires additional review beyond the standard seven steps, including intercompany elimination mapping, unrealized foreign exchange revaluation across stock holdings, and custom API throttling limits for high-frequency sales channels, such as Shopify's Admin API limits or Amazon's Selling Partner API (SP-API) rate limits.
The Patterns a Health Check Is Actually Looking For
A health check does not treat every symptom as a one-off. It checks the account against a known set of failure patterns, each tied to a specific layer and a specific trigger. Recognizing which pattern matches your symptom is the first step to knowing whether the fix belongs in Cin7, in the accounting platform, or in the process connecting the two. If your symptom is specifically a Shopify order failing to sync, our guide on Shopify sync issues walks through that case in more depth.
| Failure Pattern | Root Cause | System Layer | Typical Trigger |
|---|---|---|---|
| Sync Killer Configuration Trap | Mapped errors, deprecations, or unmapped tax rules breaking the API pipeline. | Integration mapping | Routine data entry inconsistency compounding over time. |
| Landed Cost Leak | Freight, duty, or 3PL fees expensed directly in Xero or QuickBooks Online instead of routed through Cin7's landed cost workflow. | Costing and COGS | Manual cost entry without a landed cost workflow. |
| Historical Lock Date Creep | Period lock dates not enforced in tandem across Cin7 Core and the connected ledger. | Reconciliation | An open purchase order invoiced after the period was closed in the accounting platform. |
| Allocation Anchor | Stale open purchase or sales orders, typically older than 90 days, distorting available stock counts. | Inventory allocation | Orders left in authorized or pending status without fulfillment progression. |
| Manual Journal Distortion | Finance forces a balance sheet match directly in Xero or QuickBooks Online without a matching stock movement in Cin7. | Financial reporting | A recurring manual correction habit at month end. |
| Clearing Account Drift | Unresolved debit or credit balances in gateway clearing accounts from direct spend-money entries. | Reconciliation | Platform refunds recorded outside Cin7's own refund workflow. |
| Shelf-Ware and Misconfigured Automation | Unused or prematurely activated paid modules generating corrupt operational data. | Configuration | A module turned on before the workflow around it was ready. |
Two of these patterns carry a mechanical detail worth naming directly, because it explains why the symptom can look permanent rather than temporary.
Historical Lock Date Creep
If a supplier bill amount differs from the original purchase order amount, Cin7 Core cancels the original inventory movement journals and rewrites them using the actual invoiced unit cost. If a lock date in Xero or QuickBooks Online was set before that invoicing event happens, the ledger blocks the adjusting journal. The result is not a temporary mismatch. It is a permanent valuation gap between Cin7 Core and the general ledger, because the correction Cin7 tried to make was never allowed to land.
Landed Cost Leak
Cin7 Core allows landed costs such as freight, duties, and 3PL handling to be allocated to purchase orders, assemblies, or stock transfers, through service purchase orders or direct expense allocations. When those same costs are expensed directly in Xero or QuickBooks Online instead, unit inventory valuation in Cin7 is understated at the same time operating expenses in the ledger are overstated. The practical effect is a margin that looks better in Cin7 than the P&L in the accounting platform actually supports.
These seven patterns rarely show up alone. A Sync Killer Configuration Trap left unresolved for a few months tends to produce an Allocation Anchor, as orders that fail to sync cleanly get left in a pending state rather than progressed or canceled. A Landed Cost Leak often travels with Manual Journal Distortion, because the margin gap it creates gets patched at month end with a journal instead of a corrected workflow. Part of what a health check does is trace which pattern came first, since fixing the symptom that appeared last usually leaves the original cause untouched.
Why the Free Tools and a Professional Review Answer Different Questions
The decision most readers are actually weighing is not whether something is wrong. It is whether they can find and fix it themselves using what Cin7 already gives them for free.
The built-in audit log is not inadequate. It is answering a different question than a professional health check answers. The audit log tells you what happened. A health check tells you whether what happened was correct, and if it was not, which layer the correction actually belongs in.
This distinction matters most on the purchase side. Purchase bills are meant to originate in Cin7 Core, not directly in the accounting platform, because of how three-way matching works. When a purchase invoice is authorized in Cin7 before stock is received, Cin7 posts a debit to Goods Invoiced Not Received (GINR) and a credit to Accounts Payable. When the stock is received, Cin7 posts a debit to Inventory Asset and a credit to Goods Received Not Invoiced (GRNI), or clears the GINR balance already sitting there. Creating the bill directly in Xero or QuickBooks Online instead skips this clearing mechanism entirely, which is how a business ends up with a ghost accounts payable balance, an orphaned inventory asset balance, or both, with no obvious trail back to the cause.
None of this shows up in the audit log as an error. The bill gets created, the log records that it happened, and the entry looks perfectly normal on its own. The problem only becomes visible when someone reconciles the GINR and GRNI clearing accounts against Accounts Payable and Inventory Asset and finds a balance that should have cleared months ago and never did. That reconciliation step is exactly what a health check runs and a quick look at the audit trail does not.
What a Correctly Configured Cin7 Account Looks Like
A health check needs a definition of healthy to measure against. For Fiskal, that baseline looks like this:
Zero sync errors, with e-commerce sales matching accounting payouts automatically.
COGS and gross margin percentage stable month over month.
Merchant clearing accounts, such as Shopify Payments, Stripe, or Amazon, reconciling to zero, aside from typical payout windows in transit or rolling marketplace reserves.
No open purchase or sales orders older than 90 days sitting in draft or authorized status.
Reaching that baseline also means avoiding a specific set of shortcuts that create more distortion than they resolve:
Never pass manual journals to force COGS or inventory asset balances to match without a corresponding stock movement in Cin7.
Never create inventory purchase bills directly in Xero or QuickBooks Online. They need to originate in Cin7 to preserve three-way matching.
Never record platform refunds as direct spend-money entries.
Never use stock adjustments as an accounting shortcut when physical stock has not actually moved.
Never re-sync historical data without first voiding or cleaning existing duplicate entries.
Not every health check ends with a list of fixes. If an account comes back genuinely clean, the engagement does not end there. It shifts from remediation to helping the business use functionality it is already paying for but not using, such as Foresight AI demand forecasting, Material Requirements Planning, or Advanced WMS workflows that were licensed but never fully implemented.
What Unresolved Misalignment Actually Costs
The reason this process exists is financial, not just operational. Each pattern above compounds quietly the longer it goes unaddressed.
| Where It Shows Up | What Fiskal Sees | Important Qualification |
|---|---|---|
| COGS and gross margin variance | 2 percent to 5 percent or more once landed costs and clearing accounts are left unresolved. | The 2 percent threshold is Fiskal's own diagnostic benchmark, not a universal accounting rule. Distortion can exceed 5 percent in high-volume, multi-channel accounts with heavy promotional discounting or high 3PL surcharges. |
| Working capital | Capital locked in overstocked, slow-moving SKUs, while fast-moving SKUs run false stockouts during peak periods. | Driven by the Allocation Anchor pattern above: stale orders suppress available quantity even when physical stock exists. |
| Balance sheet accuracy | Inventory asset values on the balance sheet that no longer match live Cin7 valuation. | Often traced back to Historical Lock Date Creep or Manual Journal Distortion. |
| Cash flow visibility | Cash flow projections built on a distorted financial picture. | A consequence of the above, not a separate root cause. |
None of this means every business needs a health check immediately, and a health check does not guarantee a specific dollar recovery. What it does is give a business a structured way to find out whether a symptom it has been living with is isolated, or whether it is one visible expression of something larger sitting upstream.
The Sync Is Not Broken. The Setup Is.
If the numbers in your reports do not match what you see on the floor or in your bank account, the pattern behind it is usually more specific than it looks. A Cin7 System Health Check traces the discrepancy back to its source, across configuration, integration, and financial reconciliation, so the fix addresses the actual cause instead of the symptom sitting in front of you.
The engagement ends with a consolidated executive report, an interactive spreadsheet dashboard covering operational metrics, sync health, and prioritized remediation actions, and a recorded walkthrough breaking down findings, financial impact, and next steps for leadership.
Common Buyer Assumptions Worth Correcting
Two assumptions drive most weak partner evaluations, and both feel reasonable until they are tested against what actually determines implementation quality.
| What buyers assume | What is actually true |
|---|---|
| Strong reviews and a high certification tier guarantee a smooth implementation | Reviews and certification reflect software competence, not the diagnostic and accounting capability needed for your specific business |
| Comparing proposals on price and estimated timeline reflects overall execution risk | A low upfront quote often excludes discovery depth and data validation, shifting cost to a more expensive cleanup phase later |
A low quote is not automatically a red flag, and a high one is not automatically safe. The question worth asking is what the quote includes, specifically whether discovery, process mapping, and data validation are scoped in from the start or added later as change orders.
Frequently Asked Questions
Cin7 FAQA few recurring symptoms are worth checking first: stock counts that do not match physical counts, COGS showing zero on completed orders, and recurring sync errors with QuickBooks or Xero. These symptoms indicate something is worth investigating. They do not on their own tell you which system layer the cause sits in.
A recurring stock count error often points to the Allocation Anchor pattern, where stale open orders older than 90 days are still holding allocation against available inventory. It can also reflect configuration or mapping drift further upstream. The visible count is a symptom of one of those, not a separate problem on its own.
The built-in audit report tracks what changed. A professional health check evaluates whether the configuration and workflow logic behind those changes are actually correct. They are not competing options. The audit report is a useful record. A health check is a diagnostic of whether what is recorded there is sound.
Every Cin7 System Health Check reviews Cin7 Core alongside the connected ledger and primary sales channels by default, since system health is inseparable from how that data flows into the general ledger. Reviewing Cin7 in isolation would miss exactly the kind of mismatch a health check exists to find. If you are already seeing a specific discrepancy between the two systems, see our guide on Cin7 and QuickBooks numbers that do not match.
A clean result still has value. The engagement shifts from fixing errors to helping the business use paid functionality it already has access to but has not implemented, such as demand forecasting or advanced warehouse workflows.
Start a Systems and Reconciliation Diagnostic Review
Learn how Fiskal supports post-go-live Cin7 and Xero or QuickBooks environments.
Where close stability, reconciliation clarity, and integration governance require structural alignment.
BOOK A CIN7 SYSTEM HEALTH CHECK
📞 Or call us directly: (954) 415-7895


