QBOファイル形式とは?会計士向けガイド
QBOはQuickBooksネイティブの銀行取引明細書インポート形式です。QBOファイルの内容、仕組み、そしてQuickBooksへのインポートでCSVよりも優れている理由を解説します。
QuickBooksに銀行取引をインポートした経験があれば、「QBO形式を使えばいい」というアドバイスを聞いたことがあるでしょう。QuickBooksのフォーラム、ブックキーパーのコミュニティ、会計ブログのどこを見ても同じことが書かれています。QBOが最良の方法だと。
しかし、QBOファイルとは一体何なのでしょうか? スプレッドシートではありません。データベースでもありません。Excelで開いて行と列を見ることはできません。ダブルクリックしても、コンピューターがどう扱っていいかわからないかもしれません。
このガイドでは、QBOファイル形式を内部から解き明かします。何が含まれているか、どのように構造化されているか、なぜQuickBooksがCSVよりも好むのか、そして銀行がダウンロード用を提供していない場合にQBOファイルがどのように作成されるのかを解説します。
QBOを1文で表すと
QBOファイルは、Open Financial Exchange (OFX) 仕様に準拠し、QuickBooks向けにカスタマイズされたXMLベースの金融データファイルです。銀行取引を構造化された機械可読形式で保存し、QuickBooksが自動的な重複検出に使用する一意の取引IDを含んでいます。
.qbo 拡張子は「QuickBooks Web Connect」を表します。これは、ライブ銀行フィード接続を必要とせずに銀行データをQuickBooksにインポートするためにIntuitが設計したファイル形式です。
このように考えてください。CSVが単なる取引のテキストリストだとすれば、QBOは自己記述型のパッケージであり、どのフィールドが日付で、どれが金額で、どれが受取人であるかを、曖昧さや手動マッピングなしにQuickBooksに正確に伝えます。
QBOの背景にある歴史
QBOの物語は1997年に始まりました。Microsoft、Intuit、CheckFreeの3社が協力してOpen Financial Exchange (OFX) 仕様を策定しました。その目標は単純明快でした。銀行、消費者、金融ソフトウェア間で金融データを電子的に交換するための普遍的な標準を構築することです。
OFX以前は、各銀行と各ソフトウェアパッケージが独自の形式を使用していました。OFXは、準拠したシステムなら誰でも読み書きできる単一のSGMLベース(後にXMLベース)の構造を定義することで、この問題を解決しました。
IntuitはOFXを自社製品に適応させ、2つのブランド形式を作成しました。
- QFX (Quicken Financial Exchange) --- Quickenへのインポート用
- QBO (QuickBooks Web Connect) --- QuickBooksへのインポート用
どちらも本質的にはOFXファイルであり、Intuit固有のメタデータタグが追加されています。特に重要なのはINTU.BIDタグで、これはソフトウェアにどの金融機関がファイルを生成したかを伝える銀行識別子です。
当初、銀行はオンラインバンキングポータルを通じて直接QBOファイルを生成していました。顧客はログインし、ダウンロード形式として「QuickBooks」または「Web Connect」を選択し、インポート準備ができた.qboファイルを取得していました。しかし、銀行がAPIベースの接続(Plaid、Yodlee、MX)へと近代化・移行するにつれて、多くの銀行が直接のQBOダウンロードを完全に廃止しました。
今日、QBOエクスポートを提供する銀行は少なくなっています。取引自体は存在しますが、PDF明細書の中に閉じ込められています。この変化こそが、現代の会計ワークフローにおいてQBOコンバーターが不可欠である理由です。
QBOファイルの中身
テキストエディタでQBOファイルを開くと、XMLとHTMLが混ざったような構造化マークアップが表示されます。以下に、注釈付きの完全な例を示します。
OFXHEADER:100
DATA:OFXSGML
VERSION:102
SECURITY:NONE
ENCODING:USASCII
CHARSET:1252
COMPRESSION:NONE
OLDFILEUID:NONE
NEWFILEUID:NONE
<OFX>
<SIGNONMSGSRSV1>
<SONRS>
<STATUS>
<CODE>0
<SEVERITY>INFO
</STATUS>
<DTSERVER>20260215120000
<LANGUAGE>ENG
<FI>
<ORG>First National Bank
<FID>12345
</FI>
<INTU.BID>12345
</SONRS>
</SIGNONMSGSRSV1>
<BANKMSGSRSV1>
<STMTTRNRS>
<TRNUID>0
<STATUS>
<CODE>0
<SEVERITY>INFO
</STATUS>
<STMTRS>
<CURDEF>USD
<BANKACCTFROM>
<BANKID>021000021
<ACCTID>123456789
<ACCTTYPE>CHECKING
</BANKACCTFROM>
<BANKTRANLIST>
<DTSTART>20260101
<DTEND>20260131
<STMTTRN>
<TRNTYPE>DEBIT
<DTPOSTED>20260103
<TRNAMT>-85.50
<FITID>202601030001
<NAME>WHOLE FOODS MARKET
<MEMO>Grocery purchase
</STMTTRN>
<STMTTRN>
<TRNTYPE>CREDIT
<DTPOSTED>20260115
<TRNAMT>3500.00
<FITID>202601150001
<NAME>ACME CORP PAYROLL
<MEMO>Direct deposit
</STMTTRN>
<STMTTRN>
<TRNTYPE>CHECK
<DTPOSTED>20260120
<TRNAMT>-1200.00
<FITID>202601200001
<CHECKNUM>4521
<NAME>LANDLORD PROPERTIES LLC
<MEMO>January rent
</STMTTRN>
</BANKTRANLIST>
<LEDGERBAL>
<BALAMT>4214.50
<DTASOF>20260131
</LEDGERBAL>
</STMTRS>
</STMTTRNRS>
</BANKMSGSRSV1>
</OFX>
各セクションを見ていきましょう。
ヘッダーブロック --- 最初の9行はOFXヘッダーです。ファイルのデータ形式 (OFXSGML)、バージョン (102)、エンコーディング (USASCII)、文字セット (1252、Windows Latin-1用) を定義します。このヘッダーは、QuickBooksに残りのファイルを解析する方法を指示します。
SIGNONMSGSRSV1 --- サインオンメッセージ応答。サーバータイムスタンプ (DTSERVER)、言語 (ENG)、金融機関情報 (FI) が含まれます。INTU.BIDタグはIntuitの銀行識別子です。これはQuickBooksにファイルがどの銀行から来たかを伝え、インポート中に表示される銀行ロゴに影響します。
BANKMSGSRSV1 --- 銀行メッセージセット。すべての銀行口座データをラップします。クレジットカード明細書は代わりにCREDITCARDMSGSRSV1を使用します。
STMTRS --- 明細書応答。通貨 (CURDEF)、口座情報 (BANKACCTFROM、ルーティング番号、口座番号、口座タイプを含む)、および取引リストが含まれます。
BANKTRANLIST --- 日付範囲 (DTSTARTおよびDTEND) を持つ取引リスト。個々の取引はすべて、このブロック内にSTMTTRN要素として格納されます。
STMTTRN --- 単一の取引。それぞれに取引タイプ、日付、金額、一意の識別子(FITID)、受取人名、およびオプションのメモと小切手番号が含まれます。
LEDGERBAL --- 明細書終了日時点の残高。QuickBooksはこれを照合検証に使用します。
主要フィールド解説
すべてのQBOフィールドが同じ重要性を持つわけではありません。ここでは最も重要なものとその理由を挙げます。
| フィールド | 説明 | 例 | 重要性 |
|---|---|---|---|
| FITID | 金融機関取引ID | 202601030001 |
重複インポートを防ぐ一意の識別子。QuickBooksは過去に見たすべてのFITIDを記憶します。 |
| TRNTYPE | 取引タイプ | DEBIT, CREDIT, CHECK, DEP, ATM, POS, XFER |
QuickBooksに取引をどのように分類するかを指示します。 |
| DTPOSTED | 取引日 | 20260103 |
YYYYMMDD形式 --- 曖昧さがなく、地域的な日付の混乱がありません。 |
| TRNAMT | 取引金額 | -85.50 |
デビット(支出)は負数、クレジット(収入)は正数。 |
| BANKID | 銀行ルーティング番号 | 021000021 |
金融機関を識別します。口座照合に使用されます。 |
| ACCTID | 口座番号 | 123456789 |
取引がどの口座に属するかを識別します。 |
| ACCTTYPE | 口座タイプ | CHECKING, SAVINGS, CREDITLINE |
QuickBooksが口座をどのように分類するかを決定します。 |
| NAME | 受取人名 | WHOLE FOODS MARKET |
QuickBooksに表示される取引の説明。最大32文字。 |
| MEMO | 追加の説明 | Grocery purchase |
追加の詳細。OFX仕様ではこちらも32文字に制限されています。 |
| CHECKNUM | 小切手番号 | 4521 |
オプション。小切手取引用に保持され、実際の小切手と照合できます。 |
最も重要なフィールドはFITIDです。一意で一貫したFITIDがないと、重複検出システム全体が機能しなくなります。各FITIDは、特定の銀行口座内で一意でなければなりません。2つの取引が同じFITIDを共有している場合、QuickBooksはそれらを同じ取引として扱い、2番目の取引をサイレントにスキップします。
QBOがCSVよりもQuickBooksに適している理由
QBOとCSVはどちらも取引データをQuickBooksに取り込むことができます。しかし、その体験は根本的に異なります。以下に比較を示します。
| 機能 | QBO | CSV |
|---|---|---|
| 重複検出 | FITIDによる自動検出 | なし --- 再インポートすると重複が発生する |
| 列マッピング | 不要 --- フィールドは事前定義済み | 必要 --- 日付、説明、金額を手動で割り当てる |
| 日付解析 | 曖昧さのないYYYYMMDD形式 | 地域設定に依存 --- MM/DDまたはDD/MMの混乱 |
| 金額処理 | 明確な符号規則で構造化 | 通貨記号を削除し、小数点区切り文字を修正する必要がある |
| 口座識別 | 内蔵(ルーティング番号、口座番号、タイプ) | 含まれていない |
| 残高検証 | 照合用に終了残高が含まれる | 利用不可 |
| 小切手番号 | CHECKNUMフィールドに保持 | 失われるか、別の列が必要になる場合がある |
| インポートワークフロー | アップロード、確認、完了 | アップロード、列マッピング、日付形式選択、検証、確認 |
| QuickBooks Desktop | Web Connect経由でフルサポート | 銀行取引インポートには非対応 |
重複検出が決定的な利点です。 QBOファイル内のすべての取引には、一意のFITIDが付与されています。QuickBooksは、処理したすべてのFITIDを永続的なレジストリに保存します。同じファイルを誤って2回インポートした場合、または2つの異なるファイルから重複する期間をインポートした場合、QuickBooksは重複をサイレントにスキップします。二重入力なし。クリーンアップ不要。
CSVでは、保護が全くありません。同じファイルを2回インポートすると、すべての取引が重複します。警告すら表示されません。それらの重複をクリーンアップするには、手動で1つずつ削除する必要があります。これは、回避しようとしていたまさにその面倒な作業です。
QuickBooks DesktopはQBOのみ対応です。 Desktopクライアントをサポートする企業にとって、CSVは銀行取引インポートの選択肢にすらなりません。Web Connect、つまりQBOファイルが主要なインポートパスです。これだけでも、Desktopクライアントをサポートするすべての企業にとってQBOが不可欠であることがわかります。
QBOファイルの入手元
QBOファイルには3つのソースがあり、過去10年間で状況は劇的に変化しました。
銀行(Web Connectダウンロード経由)。 これが元のソースでした。銀行はオンラインバンキングポータルから直接QBOファイルを生成していました。これはますます稀になっています。銀行がAPIベースのデータ共有に移行するにつれて、多くの銀行が直接ファイルダウンロードを完全に削除しました。まだ提供している銀行でも、エクスポートを90日に制限していることがよくあります。
銀行取引明細書コンバーター。 これが現在、ほとんどの会計専門家にとって主要なソースです。PDFSubのようなツールは、PDF銀行取引明細書(すべての銀行が依然として提供している形式)を取り込み、有効なFITID、正しい日付形式、正確なデビット/クレジット分類を備えた、適切に構造化されたQBOファイルに変換します。キャッチアップ会計、クローズドアカウント、国際銀行、履歴データの場合、コンバーターが唯一の実用的な選択肢です。
手動作成。 理論的には、テキストエディタでQBOファイルを自分で作成できます。しかし、タグの配置ミス、無効なFITID、エンコーディングエラーが1つでもあれば、QuickBooksはそのファイルを拒否します。手動作成は最後の手段であり、ワークフローではありません。
銀行提供のQBOダウンロードからの移行が、コンバーターを不可欠なものにしています。クライアントの銀行はPDF明細書を生成します。QuickBooksはQBOファイルを必要とします。コンバーターがそのギャップを埋めます。
QuickBooksへのQBOファイルのインポート方法
インポートプロセスは簡単です。QBOをCSVより使用する主な利点の1つです。
QuickBooks Online
- 銀行(または取引、次に銀行取引)に移動します。
- アカウントをリンクをクリックし、ファイルからアップロードを選択します。
.qboファイルを参照するか、ドラッグアンドドロップします。- QuickBooksがファイルを読み込み、口座情報を識別します。
- ファイルを既存の銀行口座にマッピングするか、QuickBooksに新しい口座を作成させます。
- プレビューで解析された取引を確認します。
- 完了をクリックしてインポートを完了します。
取引はレビュー対象タブに表示されます。そこから、各取引を分類し、既存のエントリと照合するか、帳簿に追加します。
QuickBooks Desktop
- ファイル > ユーティリティ > インポート > Web Connectファイルに移動します。
.qboファイルを選択します。- QuickBooksがファイル形式を検証します。
- ファイルを既存の銀行口座にマッピングするか、新しい口座を作成します。
- 取引は銀行フィードウィンドウに表示されます。
スクリーンショットとトラブルシューティングを含む完全な手順については、完全ガイド「QuickBooksに銀行取引明細書をインポートする方法」を参照してください。
よくあるQBOの問題と修正
QBOファイルは信頼性がありますが、定期的に発生する問題がいくつかあります。注意すべき点を以下に示します。
「金融機関を確認できません。」 ファイル内のINTU.BIDタグが、Intuitのディレクトリにある認識済みの銀行と一致しません。これは化粧的な問題です。インポート中に表示される銀行ロゴに影響しますが、取引のインポートを妨げるものではありません。プロンプトを受け入れて続行してください。
FITIDの重複によるスキップされた取引。 同じファイル内の2つの取引がFITIDを共有している場合、QuickBooksは最初のものだけをインポートし、2番目のものをサイレントにスキップします。これは、以前のインポートでQuickBooksが既に見たFITIDを持つファイルをインポートした場合にも発生します。各FITIDは、特定の口座内で一意でなければならず、一度見ると永久に記録されます。
エンコーディングエラーと文字化け。 受取人名やメモに含まれる非ASCII文字(アクセント付き文字、アンパサンド、山括弧)は、SGMLパーサーを破損させる可能性があります。アンパサンドは&としてエンコードされ、山括弧はエスケープされる必要があります。適切に構築されたコンバーターはこれを自動的に処理します。
「ファイルを読み込めません」エラー。 通常は、SGMLの形式が不正であること(閉じタグの欠落、タグ値内の余分な改行、本文形式と一致しないヘッダー)が原因です。テキストエディタでファイルを開き、構造的な問題を確認してください。ヘッダーバージョン(VERSION:102)は、本文のOFXバージョンと一致する必要があります。
QuickBooksのバージョン互換性。 3年より古いQuickBooks Desktopバージョンは、Web Connect機能を失います。クライアントがQuickBooks Desktop 2022を実行している場合、QBOファイルをインポートできない可能性があります。解決策は、QuickBooksをアップグレードするか、QuickBooks Onlineに切り替えることです。
クレジットカードが銀行口座としてインポートされる。 クレジットカード明細書がBANKMSGSRSV1タグではなくCREDITCARDMSGSRSV1タグでラップされている場合、QuickBooksは口座をクレジットカードではなく銀行口座として作成します。QBOファイルには、口座タイプに適したメッセージラッパーが必要です。
QBO vs QFX vs OFX:違いは何ですか?
これらの3つの形式は、内部的にはほぼ同一であるため、常に混乱を引き起こします。
| 形式 | 拡張子 | 基づくもの | 対象ソフトウェア | 主な違い |
|---|---|---|---|---|
| OFX | .ofx |
Open Financial Exchange標準 | ユニバーサル --- Xero、Wave、GnuCashなど | オープンスタンダード。ベンダー固有のタグなし。 |
| QBO | .qbo |
OFX + Intuitメタデータ | QuickBooks | QuickBooksでの銀行識別用のINTU.BIDを追加。 |
| QFX | .qfx |
OFX + Intuitメタデータ | Quicken | QBOと同じですが、QuickBooksの代わりにQuickenを対象としています。 |
基本的な取引構造は、これらすべてで同一です。.ofxファイルを.qboにリネームしても、QuickBooksはほとんどの場合読み込みます。INTU.BIDタグが唯一意味のあるIntuitの追加機能です。これはインポート中に表示される銀行ロゴを制御します。
実際には: QuickBooksには.qbo、Quickenには.qfx、XeroやWaveなどの他の会計プラットフォームには.ofxを使用します。内部の取引データは同じです。
PDF銀行取引明細書からQBOファイルを作成する方法
ほとんどの会計士は、QBOファイルを1つの状況で目にします。PDF銀行取引明細書を持っており、そのデータをQuickBooksに取り込む必要がある場合です。PDFをQBOファイルにする必要があります。
PDFSubの銀行取引明細書コンバーターは、この変換をエンドツーエンドで処理します。PDF銀行取引明細書をアップロードすると、PDFSubは取引(日付、金額、説明、残高)を抽出し、以下を備えた適切にフォーマットされたQBOファイルを生成します。
- 有効で一意なFITID(すべての取引に対して)--- QuickBooksの重複検出が正しく機能するように
- 正しいTRNTYPE分類 --- デビット、クレジット、小切手、預金、振替が自動的に識別される
- 適切なSGMLエンコーディング --- 特殊文字のエスケープ、YYYYMMDD形式の日付、正しい符号の金額
- 口座メタデータ --- 口座タイプ(当座、普通、クレジットカード)の検出と適切なQBOメッセージラッパー
- 終了残高 --- 明細書の終了残高から入力された
LEDGERBALタグ
このコンバーターは、130以上の言語で20,000以上の銀行からの明細書に対応しています。デジタルPDF(テキストベースの明細書)は完全にブラウザ内で処理されます --- ファイルはコンピュータから離れません。スキャンされたPDFや画像が多いPDFは、サーバーサイドのAI抽出を使用します。
プランは月額$10から、銀行取引明細書変換は月額$29(ビジネスプラン+BSCアドオン、500ページ)です。すべての有料プランには7日間の無料トライアルが含まれています。
よくある質問
QBOファイルを開いて中身を確認できますか?
はい。QBOファイルはプレーンテキストです。テキストエディタ(Windowsのメモ帳、Macのテキストエディット、VS Code、Sublime Textなど)で開くと、SGML形式の取引データが表示されます。日付、金額、受取人名、FITID、口座番号、終了残高など、すべてのフィールドが人間が読める形式です。
QBOファイルはOFXファイルと同じですか?
ほぼ同じです。QBOはOFX標準に基づいていますが、Intuit固有のタグ(主に銀行識別用のINTU.BID)が追加されています。取引構造、フィールド名、データ形式は同じです。.ofxファイルを.qboにリネームしても、QuickBooksは通常受け入れます。
QuickBooksでQBOファイルをインポートすると、一部の取引がスキップされるのはなぜですか?
QuickBooksは、過去に処理したすべてのFITIDを追跡します。取引のFITIDが以前のインポートまたは銀行フィードから既に存在する場合、QuickBooksは重複を防ぐためにサイレントにスキップします。これはバグではなく機能です。取引を再インポートする必要がある場合は、新しい一意のFITIDを持つファイルが必要です。
同じQBOファイルは、QuickBooks OnlineとDesktopの両方で機能しますか?
はい。QBOファイル形式は両方のバージョンで同一です。インポートプロセスは異なります(Onlineは銀行 > ファイルからアップロード、Desktopはファイル > ユーティリティ > インポート > Web Connectファイルを使用)が、ファイル自体は同じです。
1つのQBOファイルにはいくつの取引を含めることができますか?
OFX仕様に厳密な制限はありません。ただし、QuickBooks Onlineはファイルアップロードを約350KBに制限しており、これは説明の長さによって約1,000〜1,500件の取引に相当します。より大きなインポートの場合は、ファイルを月または四半期ごとに分割してください。
CSVまたはExcelスプレッドシートからQBOファイルを作成できますか?
はい、ただし変換ツールが必要です。QBO形式には、特定のSGMLマークアップ、有効なFITID、OFX準拠の日付形式、および適切なヘッダー情報が必要です。手動での変換はエラーが発生しやすいです。PDFSubなどのツールはフォーマットを自動的に処理します。
QBOファイルはQuickBooks以外の会計ソフトウェアでも機能しますか?
QBOファイルは主にQuickBooks向けに設計されています。しかし、QBOはOFX標準に基づいているため、他の一部の会計ソフトウェアは.qboファイルを読み取ることができるか、.ofxにリネームすると受け入れる場合があります。XeroやWaveなどの非QuickBooksソフトウェアの場合は、標準の.ofx拡張子が推奨されます。
QBOファイルでの受取人名の最大文字数はいくつですか?
OFX仕様では、NAMEフィールドは32文字、MEMOフィールドは255文字に制限されていますが、QuickBooksは表示中に長いメモ値を切り捨てる場合があります。受取人名が32文字を超える場合、切り捨てられます。優れたコンバーターは、説明の最も有用な部分を保持するために、単語の境界で切り捨てます。