請求書の消費税が1円合わない|端数はどこで決まるか

請求書の消費税が1円合わない|端数はどこで決まるか

記事
ビジネス・マーケティング
請求書を出したあとで、先方から連絡が来る。金額が1円違います、と。慌てて控えを開くと、明細は1行ずつ全部合っている。品目も単価も数量も先方の言うとおりだ。違っているのは消費税の欄だけで、差は1円。

1円なのでその場は先方の数字に合わせて再発行し、それで終わる。ただ翌月も同じことが起きる。相手が変われば起きないこともある。合ったり合わなかったりするので、どちらが間違っているのかが判定できない。これがいちばん気持ち悪い。

当方はExcelや紙で回している管理業務をWebアプリに移す仕事をしていて、請求まわりを作るときはこの話を先に確認している。原因は計算そのものではなく、端数をどこで落としたかにある。そして落とす場所は、誰かが決めない限り、作った人ごとにばらばらになります。

どこで丸めたかで、答えが変わる

消費税の計算そのものは難しくない。税抜の金額に税率を掛けるだけだ。問題は掛けた答えに小数が出ること。請求書に載せるのは円単位なので、小数はどこかで落とすことになる。その落とし方に2通りある。明細の1行ごとに落とすか、明細を全部足してから一度だけ落とすか。

並べてみる。税抜1,239円、2,450円、3,678円の3行、税率は10%とする。行ごとに税を出すと123.9円、245.0円、367.8円。円未満を切り捨てて足すと735円になる。いっぽう税抜の合計7,367円に10%を掛けると736.7円で、切り捨てて736円。同じ明細から、税額が1円ずれる

差の正体は、捨てた小数の量である。行ごとに落とすなら0.9と0.8で1.7円ぶんを捨てている。合計してから落とせば0.7円しか捨てない。この1.0円の違いが、そのまま1円の差になる。行が増えれば捨てる小数も積み上がるので、明細の多い請求書ほど差は開いていく。

切り捨てか、切り上げか、四捨五入か

落とす場所が決まっても、まだ決まっていないことがある。落とし方だ。切り捨て、切り上げ、四捨五入。同じ736.7円が736円にも737円にもなる。どれを選ぶかで請求額が変わるので、制度としてどう扱うべきかは税理士など専門家にご確認ください。当方は税務の判断はしません。

ここで書くのはその先の話になる。決めた規則を、システムのどこに書き、どこまで揃えるか。揃える先は請求書だけではない。会計に渡す数字、入金の突き合わせ、月次の売掛残高。このうち1か所だけ規則が違うと、1円の未入金が消えずに残り続ける

入金の消込で1円が残るのは地味に厄介だ。金額が完全には一致しないので自動では消えない。かといって放置すれば未入金の一覧に居座り続ける。担当者は毎月それを見て、毎月手で消す。原因はたいてい、請求を出す側と入金を照合する側で丸め方が違うことにある。

同じ明細で税額が動く

画面が丸めて、中身が丸まっていない

もうひとつ、よくある型がある。表示だけを丸めて、中の値は小数のまま持っているという状態だ。Excelの表示形式でも、アプリ側の表示桁の指定でも同じことが起きる。画面には整数が並んでいるので、丸まっているように見える。

ところが合計は、丸める前の小数を足している。画面の数字を上から順に足しても合計欄に届かない。1円足りない、あるいは1円多い。目視で検算する人がいちばん先に気づくのがこれで、しかも計算式を追っても原因が出てこない。式のほうは正しいからだ。
画面に出ている数字を全部足したのに、合計の欄と1円合わない
見分け方は簡単で、表示桁を増やしてみればいい。整数に見えていた値から小数が出てきたら、丸めているのは表示だけである。作り直すときは、保存する時点で丸めた値を確定させておく。画面に出ている値と保存されている値が一致していれば、この型のずれは起きません。

値引きと、税率が混ざるとき

ここまでは明細か合計かの2択だったが、実務ではもう少し場所が増える。端数が生まれる箇所が、請求書の作りによって枝分かれしていくからだ。方式を決めたつもりでも、決めた場所の外側に丸めが残っていることがある。増える事情はだいたい3つある。

ひとつは値引き。請求書の一番下で全体から5,000円引くとき、その5,000円を明細に按分すると小数が出る。按分の時点でまた丸めが要る。しかも値引き前に税を計算するか、引いた後に計算するかで税額が動く。どちらで出すかを決めていない請求書は、作る人によって答えが変わる。

ふたつめは単価そのものに小数があるとき。単価1,234.5円の3個は3,703.5円で、ここで落とすのか行の合計まで小数で持つのかで結果が変わる。みっつめは税率が2つ混ざる請求書で、丸める箇所が税率のぶんだけ増える。どの単位でまとめるかは制度の側にも定めがあるので、確認したうえで、決まった形をそのまま仕様に落とします。

端数が生まれる場所

請求書の税額と、会計に渡す税額

請求書はアプリで作り、会計は別のソフトを使う。この構成自体は珍しくない。危ないのは、渡す側と受ける側がそれぞれ税額を計算し直しているときだ。丸め方が一段違えば、そこで1円が生まれる。しかも生まれた差は、月末の残高が合わなくなって初めて表に出る。

防ぎ方はひとつで、税額を計算する場所を1か所に決める。そこで出した数字を、請求書にも、会計に渡すCSVにも、入金の照合にも配る。同じ値を2か所で別々に計算しない。片方だけ直したときに直した側と直していない側で差が出る、という事故もこれで消える。

もう1つ、税率を計算式に直接書かないほうがいい。書いてしまうと、税率が変わったときに過去の請求書まで今の税率で計算し直される。去年発行した控えを今日開くと金額が違う、という状態になる。税率も単価も「いつ時点のものか」を持たせて、いちど確定した請求書の金額は後から動かない形にしておく。

規則は、一行の仕様として残す

最後は、決めた規則を書き残すこと。口で伝えたものは、担当が変わった時点で消える。「税額は税率ごとに、明細の税抜合計に対して1回だけ計算し、円未満は切り捨てる」。この一行があれば、請求書の画面も、会計に渡すCSVも、入金の照合も同じ実装になる。無ければ作った人ごとに違う実装になり、どれが正しいのか後から誰にも分からなくなる。

繰り返しになるが、何を選ぶかは税理士など専門家にご確認ください。当方がやるのは、決まった規則を全部の場所で同じにすること、そして、いつどの規則で計算したのかを後から確かめられる形にすることだ。1円を探すあの時間は、たいていここが決まっていないところから生まれている。

当方は元金融系のシステムエンジニアで、金額の丸め方と締めの扱いを先に決めてから作るのは、そこで身についたものです。ココナラでは、Excel・紙で回している請求や売掛の管理を、月額のかからない買い切りのWebアプリにする仕事を受けています。いまお使いのExcelを見せていただければ、端数がどこで生まれているかも含めてお見積りできますので、ココナラのメッセージからご相談ください。
サービス数40万件のスキルマーケット、あなたにぴったりのサービスを探す