「請求できていない」は引き算でしか出せない|請求もれと未入金を分けて数える設計
請求書を出せるようになると、次に出てくるのが「出したあとを追えていない」という課題です。
ここでよく混ざるのが、請求もれと未入金です。似ているようで、まったく別の引き算になります。片方の仕組みでもう片方を見ようとすると、どちらの一覧も信用されなくなります。
この記事では、2つを分けて数える設計と、顧客に出す明細の絞り込みを整理します。
なお、原価や工数をHubSpotのどこに持たせるかという設計そのものはHubSpotで案件別の原価・粗利を管理する方法で扱っています。この記事は持たせた行を帳票に出すときどう絞るか、そして請求と入金をどう追うかの側です。
帳票の発行から保存までの全体像はHubSpotで帳票を発行・管理する完全ガイドにまとめています。
1. 2つの別の問題として分ける
| 請求もれ | 未入金 | |
|---|---|---|
| 数えたいもの | 出していないもの(存在しない) | 出したが入金されていないもの(存在する) |
| 引き算 | 請求すべき明細 − 請求済みの明細 | 請求額 − 入金額 |
| 単位 | 明細行 | 請求書 |
| 見る人 | 営業と経理(請求の前) | 経理(請求の後) |
単位が違うのが決定的です。請求もれは明細行で見ないと出せず、未入金は請求書で見ないと出せません。1つの一覧で両方をまかなおうとすると、どちらも中途半端になります。
この2つがそろって、「受注 → 請求 → 入金」の抜けが閉じます。
2. 請求もれ:引き算の設計
2-1. 発行の記録だけでは数えられない
請求もれの検知が難しいのは、数えたいものが「無いもの」だからです。発行した帳票の記録しか持っていなければ、出していないものは数えようがありません。
数えられる形にするには、発行の時点で「どの明細行を、どの帳票で請求したか」を残します。そうすれば引き算で出せます。
請求すべき明細 − 請求済みの明細 = 未請求
ポイントは、記録する単位が帳票ではなく明細行だということです。1つの取引を分割して請求する場合、「この取引は請求済み」では足りません。どの行が済んでいて、どの行が残っているかを持つ必要があります。
2-2. 「請求済み」の定義が効く
引き算の右辺をどう定義するかで、一覧の信用が決まります。
請求済みに数えるのは、請求書として発行され、取り消されていない明細だけ。
やりがちな間違いが2つあります。
- 見積書を請求済みに数える。受注前の金額が請求済み側に入り、検知そのものが壊れます
- 取り消した請求書を請求済みのままにする。取り消したのに請求もれとして上がってこなくなります
領収書も同様に、請求済みの判定には使いません。
2-3. 左辺の絞り込みも大事
「請求すべき明細」のほうも、何を含めるかで一覧の使い物になるかが変わります。
| 含めるもの | 含めてはいけないもの |
|---|---|
| 受注済みの取引の売上明細 | 進行中の取引(まだ受注していない) 失注した取引 原価の明細・工数の明細 |
原価や工数の行が混ざると、請求もれの金額が実態より大きく出ます。一度でも「この数字おかしいよね」となると、その一覧は見られなくなります。絞り込みは4章で扱います。
HubSpot帳票 法令要件チェックシート(全24項目)
適格請求書の記載事項6項目、消費税額の端数処理、適格返還請求書、電子帳簿保存法の検索要件と7年保存まで、条文番号とQ&Aの問番号つきで一覧にしました。自社の帳票運用がどこまで満たせているかを点検できます。
3. 未入金:3つの状態と、1つの属性
3-1. 状態は3つ
| 状態 | 条件 | 督促でやること |
|---|---|---|
| 未入金 | 入金額が0 | 全額の督促 |
| 一部入金 | 入金額があり、残額も残っている | 残額の督促。いくら残っているかを伝える必要がある |
| 入金済み | 残額が0 | 対象外 |
3-2. 期日超過を4つ目の状態にしない
ここが設計のいちばんの分かれ目です。「未入金/一部入金/入金済み/期日超過」の4状態にしたくなりますが、期日超過は状態ではなく属性として別に持ちます。
理由は単純で、状態に畳むと「一部入金だが期日も過ぎている」が表現できなくなるからです。そしてこれは、督促の現場で一番多いケースです。
状態(3つのうち1つ) × 期日超過(はい/いいえ) + 超過日数
この持ち方なら「一部入金かつ期日超過15日、残額30万円」という絞り込みができます。
3-3. 入金の記録は消さない
会計上の記録なので、誤って記録した入金も削除しません。理由付きの取消で無効化します。
これは発行した帳票の取消と同じ考え方で、電子帳簿保存法が求める訂正・削除の履歴が残る状態ともつながります。詳しくはHubSpotに添付したPDFは「原本」なのかで扱っています。
4. 顧客に出す明細を絞り込む
4-1. 社内管理用の行が混ざっている
社内では1つの取引に、月次管理のための原価行や工数行を作っていることがあります。そのまま帳票にすると2つの問題が起きます。
- 顧客に原価が見える
- 金額が全月合算になり、その月の請求額にならない
絞り込みの順序は次のようになります。
商品項目(社内管理用の行を含む)
→ 工数の行を除く
→ 原価の行(単価0など)を除く
→ 個別の除外条件を適用
→ 対象月以外を除く
→ 顧客に出す明細
実データでは、27行あった商品項目が1行になるケースもあります。※この数値は実際の運用データに基づく記述です。公開範囲のご判断をお願いします。
4-2. 絞り込みで守るべき2つのこと
自動で絞り込む仕組みを作るときに、必ず入れておきたいルールが2つあります。
1つ目。除外した行とその理由を必ず画面に出す。黙って落とすと、落ちてはいけない行が落ちたときに誰も気づきません。「27行のうち26行を除外しました」と出たうえで、内訳が見られる状態にします。
2つ目。対象月が読み取れない行は残す。判定できないものを落とすと、請求書が空で出る事故が起きます。残して人が判断するほうが安全です。迷ったら残す、が原則です。
4-3. 既存のデータ設計との関係
この絞り込みが成立するには、そもそも原価行と売上行を区別できる形でデータを持っている必要があります。商品項目にフラグを持たせるのか、単価0を原価行の印にするのか、商品名の規則で判定するのか。
ここは帳票側ではなく、データ設計側の話です。HubSpotで案件別の原価・粗利を管理する方法で扱っているので、まだ決まっていない場合はそちらを先に読んでください。
5. 月次で回す
仕組みを作っても、見る習慣がなければ意味がありません。月次の締めに組み込むなら、次の順序になります。
| 順 | やること | 見るもの |
|---|---|---|
| 1 | 請求もれを潰す | 受注済みなのに請求していない明細。請求して0件にする |
| 2 | 期日超過を確認する | 状態を問わず期日を過ぎているもの。超過日数の長い順 |
| 3 | 一部入金を確認する | 残額のある請求書。金額を添えて督促する |
| 4 | 除外された明細を見る | 絞り込みで落ちた行。落ちてはいけないものが混ざっていないか |
4番目を入れておくのがコツです。絞り込みの精度は、落ちた側を見ないと上がりません。
なお、この一覧はExcelに転記して作らないでください。転記した時点で、元のデータと一覧がずれ始めます。この構造についてはHubSpotの数字をExcelに転記しないための設計で扱っています。月次の数字を経営の側から見る設計はHubSpotで事業管理・管理会計を実現する方法にまとめています。
まとめ
- 請求もれと未入金は別の引き算です。請求もれは明細行、未入金は請求書が単位になります
- 請求もれは発行記録だけでは数えられません。「どの明細行をどの帳票で請求したか」を残して引き算にします
- 「請求済み」は請求書として発行され取り消されていない明細だけ。見積書を含めると検知が壊れます
- 期日超過は状態ではなく属性。4つ目の状態にすると「一部入金だが期日超過」が表現できなくなります
帳票の発行から保存までを通して整理したい場合はHubSpotで帳票を発行・管理する完全ガイド、手段ごとの違いはHubSpotで帳票を出す4つの手段を比較をご覧ください。
HubSpot帳票 法令要件チェックシート(全24項目)
適格請求書の記載事項から電子帳簿保存法の検索要件、写しの7年保存まで、条文番号とQ&Aの問番号つきで一覧にしました。判定をプルダウンで選ぶと集計されるExcel形式です。
よくあるご質問
Q. 請求もれはどうすれば検知できますか?
発行した帳票の記録だけでは検知できません。数えたいのが「出していないもの」だからです。発行の時点で「どの明細行を、どの帳票で請求したか」を記録しておき、「請求すべき明細 − 請求済みの明細」の引き算にします。記録する単位が帳票ではなく明細行である点が重要で、分割請求がある場合に「この取引は請求済み」では足りません。どの行が済んでいて、どの行が残っているかを持つ必要があります。
Q. 「請求済み」には何を含めればよいですか?
請求書として発行され、取り消されていない明細だけです。よくある間違いが2つあります。1つは見積書を請求済みに数えることで、受注前の金額が請求済み側に入るため検知そのものが壊れます。もう1つは取り消した請求書を請求済みのままにすることで、取り消したのに請求もれとして上がってこなくなります。領収書も請求済みの判定には使いません。
Q. 未入金の状態は、期日超過を含めて4つではだめですか?
だめというより、使いにくくなります。期日超過を4つ目の状態にすると、「一部入金だが期日も過ぎている」が表現できなくなるためです。これは督促の現場で一番多いケースです。状態は未入金・一部入金・入金済みの3つにして、期日超過は属性として別に持ち、超過日数もあわせて保持してください。この持ち方なら「一部入金かつ期日超過15日、残額30万円」という絞り込みができます。
Q. 誤って記録した入金は削除してよいですか?
削除せず、理由付きの取消で無効化してください。会計上の記録だからです。これは発行した帳票の取消と同じ考え方で、電子帳簿保存法が求める訂正・削除の履歴が残る状態ともつながります。物理的に消してしまうと、なぜその金額になったのかを後から追えなくなります。
Q. 請求もれの一覧に、原価や工数の行が混ざってしまいます
「請求すべき明細」の定義に原価行や工数行が入っていることが原因です。含めるのは受注済みの取引の売上明細だけで、進行中の取引、失注した取引、原価の明細、工数の明細は含めません。混ざると請求もれの金額が実態より大きく出ます。一度でも数字がおかしいとなると、その一覧は見られなくなるので、最初の定義を丁寧に決めてください。
Q. 顧客に出す明細を自動で絞り込むとき、注意することは?
2つあります。1つは、除外した行とその理由を必ず画面に出すこと。黙って落とすと、落ちてはいけない行が落ちたときに誰も気づきません。もう1つは、対象月が読み取れない行は残すこと。判定できないものを落とすと、請求書が空で出る事故が起きます。迷ったら残して人が判断する、という原則にしてください。
Q. 月次でどう運用すればよいですか?
締めの作業に4つ組み込むとよいです。請求もれを潰して0件にする、状態を問わず期日を過ぎているものを超過日数の長い順に確認する、残額のある請求書を金額を添えて督促する、そして絞り込みで除外された明細を見る。4つ目を入れておくのがコツで、絞り込みの精度は落ちた側を見ないと上がりません。なお、これらの一覧をExcelに転記して作ると、その時点で元データとずれ始めます。