毎週月曜の朝、いつも同じことが起こります。
銀行口座を確認します。Shopifyからの支払い(ペイアウト)が入金されています — $4,312.87。QuickBooksを開きます。週末の売上は$4,891.00と表示されています。両方の数字をしばらく見つめます。確認のためにShopifyを開きます。数字はまだ違っています。
もう2年もこうしています。経理担当者に尋ねました。Googleで検索しました。会計士に尋ねたところ、差額を手動で照合するように言われました。毎月そうしていますが、翌月には差額が異なります。時には$200、時には$900です。ある四半期には$3,000を超えましたが、どこに消えたのか今でも説明できません。
実は、何も間違っていないのです。
Shopifyでもありません。QuickBooksでもありません。あなたでもありません。あなたがずっと見つめてきた差額はエラーではなく、どちらも真実を伝えていると思っている2つのシステム間の構造的な不一致なのです。そして、どちらも真実を伝えています。
Shopifyの支払い(ペイアウト)の仕組み
Shopifyは会計システムではありません。決済処理機能を内蔵したeコマースプラットフォームであり、銀行に送金される金額はそのことを反映しています。
Shopifyが口座に資金を入金する際、それは総売上を送っているわけではありません。それは、Shopifyが請求するすべてのものを差し引いた残りの金額を送っているのです:
- 取引手数料(Shopify Paymentsの処理手数料 — 通常、取引あたり2.4〜2.9% + 30セント)
- 支払い期間中に発行された返金
- チャージバックによる控除および紛争保留
- リザーブ(保証金)の留保(新規ストアやチャージバックリスクが高いストアで一般的)
- Shopify経由で請求されるアプリの料金
Shopifyはこれらすべてを1〜3営業日のローリングウィンドウで集計し、すべてを差し引いて、単一の金額をあなたに送ります。その金額は正確です。それは、請求された金額を正確に差し引いた、あなたが稼いだ正確な金額です。計算は正しいです。
しかし、それは総収益から5つの異なるカテゴリーの控除を差し引いたもので、1つの項目にまとめられ、複数日の取引をカバーしていますが、銀行の明細書にはその詳細が一切表示されません。
実際の支払い明細
両方の数字 — $4,891と$4,312.87 — は完全に正しいです。しかし、あなたの銀行にはそのうちの1つしか表示されません。
QuickBooksが見ているもの
QuickBooks Onlineは会計システムです。売上が発生した時点で、顧客が支払った総額として収益を記録します。Shopifyの手数料体系、返金のタイミング、または支払いが複数日をカバーしているという事実を自動的に認識しません。
If you’re entering Shopify data into QuickBooks manually, you’re either:
A) Entering the gross sales figure — in which case your revenue looks right, but your cash balance never reconciles with your bank deposits, and you’re manually guessing where the fees went.
B) 入金額を入力する — この場合、現金は一致しますが、出金から差し引かれたすべて手数料、返金、調整によって収益が過少計上されます。
どちらの選択肢も正しくありません。どちらも、翻訳レイヤーを持っていない人が行うことです。
簿記係が間違いを犯しているわけでも、会計士が何か明白なことを見落としているわけでもありません。2つのシステムは異なる言語を話しており、あなたは手作業でそれらの間の翻訳を試みています。
どちらのシステムも間違っていない
これは、答えになっていないように聞こえるため、人々が最初に聞いたときに戸惑う部分です。
Shopifyは、純粋な出金を送信することで正しいことをしています。それが決済処理業者が行うことです。彼らは資金の流れを処理し、手数料を差し引き、残りをあなたに送ります。
QuickBooksは、総収益を記録することで正しいことをしています。それが会計システムが行うことです。顧客が支払った金額を追跡します。なぜなら、それが損益計算書の正確性、税務報告、および実際の事業実績の理解のために必要なことだからです。
問題は、どちらかがあなたに嘘をついているということではありません。問題は、それらが取引の異なるレベルで異なる問題を解決していることであり、その間を翻訳するものが何もないことです。
SHOPIFYが見ているもの
純粋な出金:4,312.87ドル
売上総額から手数料、返金、調整を差し引いたもの — キャッシュフローに正確。
QUICKBOOKSが必要とするもの
総収益:4,891.00ドル + 個別費目の控除
各項目を正しい勘定科目にマッピング — 損益計算書と税務に正確。
あなたが必要としているのは、そのギャップを手動で調整するためのより良い方法ではありません。あなたが必要としているのは、両方の言語を話すものです。Shopifyから総売上を受け取り、各手数料の控除をQuickBooksの正しい経費勘定にマッピングし、出金を正しい取引に一致させ、ギャップを自動的に埋めるものです。
実際には差額を解消するもの
出金の不一致を解消するには2つの方法があります。
Manual reconciliation means exporting your Shopify payout report, cross-referencing every transaction, and entering each component — fees, refunds, adjustments — as separate line items in QuickBooks. Done correctly, it takes 3–5 hours per month. Done quickly, it produces new errors. Most store owners at the $1M–$5M revenue range spend between 30 and 60 hours per year on this problem and still have books that aren’t fully clean. If you’re going to do it by hand, the full step-by-step method is in our guide to reconciling Shopify payouts in QuickBooks.
自動照合とは、翻訳レイヤーの作業を代行するツールを使用することです。Shopifyから各出金をプルし、その項目(総売上、取引手数料、返金、調整)に分解し、それぞれを正しいQuickBooks勘定にマッピングし、仕訳を自動的に記帳します。
LedgerPortは、介入なしで毎日これを行います。出金が銀行に振り込まれると、QuickBooksを開く頃には、エントリはすでにそこにあります。正しい勘定科目に分解され、正しい期間に一致し、会計士がレビューできる状態になっています。
何時間もかけて、かろうじて埋められたその差額は、自動的に解消されます。会計士に説明できなかったその理由は、仕訳入力に記載されています。
Record revenue when money moves, not when orders appear
Part of the payout gap is pure timing. If your sync tool records an order the moment it appears in Shopify — while the payment is still Pending or Authorized — QuickBooks shows revenue before any payout exists. The books run ahead of the money, and the gap looks bigger than it is.
In LedgerPort, the moment revenue gets recorded is a setting. Under Sync Config » Orders » Sync Triggers, you pick which of six payment statuses qualify an order for syncing — Paid, Authorized, Partially Paid, Pending, Refunded, Partially Refunded — alongside three fulfillment statuses. An order syncs only when it satisfies one condition from each group.

The official recommendation for most stores: Paid only, with Unfulfilled and Fulfilled both checked — so QuickBooks records revenue the moment money actually moves, regardless of shipping state. The docs flag Pending as “use with caution” for exactly the reason above, and voided orders are excluded by default, so cancellations never show up as revenue.
With Paid-only triggers, everything in your books represents captured money. That’s the precondition for a payout ever matching in the first place.
The refunds you never synced
Here’s a classic version of the mismatch: a customer gets refunded, Shopify nets that refund out of the payout, and QuickBooks still shows the full sale — because the refund never synced. No error, no warning. The books just quietly drift away from the bank.
The fix is two checkboxes. In Sync Config » Orders » Sync Triggers, check Refunded and Partially Refunded. If neither is checked, refunds are silently excluded from the sync — which is why this category of mismatch is so persistent for stores that set up their integration once and never revisited it.

Once enabled, a synced refund creates a real accounting document in QuickBooks: a Refund Receipt for orders synced as Sales Receipts, or a Credit Memo for orders synced as Invoices — linked to the original transaction, with tax and shipping broken out as separate lines to match Shopify exactly. Partial refunds generate a document for the refunded amount only; the original sale stays untouched.
One caveat: the original order has to already be in QuickBooks, because the refund attaches to it. But that’s the whole requirement. Two checkboxes close an entire category of payout mismatch.
Find the orders that never made it
The third hidden gap source: orders that errored out of the sync entirely. An unmapped product, a missing billing field, an expired QuickBooks connection — any of these leaves a hole in QuickBooks revenue that no payout can reconcile against, because the sale simply isn’t there.
What matters is that these failures are named, not silent. Every sync attempt in LedgerPort gets a status — Synced, Error, Pending, or On Hold — and filtering the audit log to Status = Error is a 30-second check that surfaces everything needing attention. The errors come with reasons: “Product Not Mapped,” “Missing Required Field,” or the expired-token “Connection Unhealthy” — which the docs call out as the single most common sync error.

The recovery move is short: fix the cause, select the failed records in Manual Sync, click Sync Selected. Failed records are never lost, and if QuickBooks rate-limits a big push, the retries happen automatically.
Closing the payout gap is partly structure — clearing accounts, fee mapping — and partly completeness. Completeness is a filter click.
この状況の皮肉な点は、何かが壊れていると2年間思い込んでいたことです。Shopifyの計算が間違っていたのか、QuickBooksがずれていたのか、経理担当者が何かを見落としたのか、あるいはあなたが何か間違ったことをしていたのか。
あなたは間違っていませんでした。彼らも間違っていませんでした。
両方のシステムは、常に正しく機能していました。ただ、それらを連携させるものがなかっただけです。
