Shogo posts the entry — here's what it can't reconcile.
This is not a takedown. Shogo and Bookkeep do their job well, and if you use one of them you should keep it. The point is narrower and more useful: a daily sales entry is a recording, and three of the biggest restaurant bookkeeping problems are reconciliations — comparisons between the entry and reality that no sales-posting tool is built to make.
What Shogo actually does — correctly
Every night, Shogo reads the POS close (Toast, Square, Clover, etc.) and posts a summary journal entry into QBO: sales by category, tax collected, tips accrued, payment-type splits, discounts and comps. Bookkeep does the same with a different integration list. The entry is accurate because it’s a faithful transcription — the POS said X, so the ledger says X.
Transcription is genuinely valuable: it kills manual daily entries, it’s consistent, and it gets the accrual side of tips right. But notice what it takes as given: that what the POS said actually happened.
The three reconciliations a sales entry can’t run
1 · Cash over/short
The POS says the drawer took $2,148 in cash. Shogo posts $2,148, correctly. Whether $2,148 actually reached the bank is a different question, answered days later by a deposit slip that combines two service days and subtracts whatever left the drawer as tips and paid-outs in between. The variance lives between the POS cash line, the paid-outs, and the deposit slip — three documents a sales entry never compares. Post the entry perfectly every night and a $312 March shortage is still invisible.
2 · Tip-liability drift
Shogo credits tips payable at close — the accrual is right. But the liability’s other side (payments through payroll, payments from the drawer in cash) comes from systems Shogo doesn’t read. If payroll mis-maps tips to wage expense, or nightly cash tip-outs never get booked, the liability balance drifts every month — and the drift is invisible from inside the sales entry, because the entry’s own lines are all correct. Only a monthly rollforward (accrued − paid vs. the QBO balance) surfaces it.
3 · Deposit matching
The bank feed shows a $4,631 deposit on Monday. Which service days is that? Saturday plus Sunday? Saturday minus a $200 paid-out? The sales entries and the bank feed sit in the same QBO file and never get introduced to each other. Matching them — day-by-day, location-by-location — is exactly the tedious bridging work that ends up on the bookkeeper, monthly, in a spreadsheet.
| Question | Shogo / Bookkeep | Bank feed | Reconciliation layer |
|---|---|---|---|
| What did the POS record? | ✓ posts it | — | reads it |
| What hit the bank? | — | ✓ shows it | reads it |
| Did the cash make it? | — | — | ✓ computes it, daily |
| Does the tip liability tie? | — | — | ✓ rolls it forward, monthly |
So: keep Shogo. Add the layer it was never meant to be.
The wrong conclusion from all this is “switch tools.” Re-implementing daily sales entries would be a waste of everyone’s time — Shogo has spent years on POS integrations and it shows. The right conclusion is that the stack has a missing layer: something that ingests the POS side and the payroll side and the bank side, runs the comparisons daily, and queues only the exceptions.
That’s what LedgerInbox is — the reconciliation layer on top. Most of our design partners run Shogo or Bookkeep alongside it, on purpose. They post the entry; we prove the cash.
We automate exactly this reconciliation.
LedgerInbox computes cash over/short and the tip rollforward every day, per location, and queues the variances as inbox items — with the math attached. Send one month of files (Toast exports, payroll journal, bank export) and we'll send back what we found in 48 hours, free.
Find what's missingFree for 7 daysNo card · nothing installed · export your data whenever you want