e-Taxで「SCARD_E_TIMEOUT(0x8010000a)」エラーが出た場合の対処法

今回、e-Taxの「事前チェック」で申告書を作成する前に証書の確認をするところで、以下の様なエラーが出た。

SCardGetStatusChange NG
return :SCARD_E_TIMEOUT(0x8010000a)

検索してみるといくつかの解決策が見つかった。

1: カードリーダーの置く場所を変える

金属が周辺にあるとダメで、離せばOKになることがあるという報告がある。非接触で読む場合の電波の関係だろうか。区役所の方も「うちではゴムマットに貼り付けてます」と言っていた。

ref. SCardGetStatusChange NG - 道灌山田のブログ「SCardGetStatusChange NG」、「SCardConnect NG」-春霞

2: カードリーダーの端子部分を磨く

住基カードの金色の端子部分を布で磨くとOKになるという報告もある。カードを差し込む接触型のリーダーの場合は端子の接触不良が問題になるのだろう。

ref. @masatofujii: e-Tax申請、3年目

3: カードリーダーが内蔵されていた

上記の解決方法を試しても解決しなくて悩んでいたのだけど、よくよく考えると自分の使っていたラップトップはカードリーダー内蔵タイプだった。それを忘れて昨年までe-Taxに使っていたカードリーダーをUSB接続してそこに住基カードを指していた。

外付けのカードリーダーを外して、内蔵カードリーダーに住基カードを挿したらOKになった。

まとめ

内蔵カードリーダーがあるのに更に接続するという凡ミスで、しかもうっかり「証明書が失効している!」と勘違いして区役所に行ってしまい「証明書は失効してないですね」と職員の方を悩ませてしまった。解決方法から推測すると、これはカードリーダーがカードを読もうとして一定時間内にカードを見つけられなかったことを示すエラーと思われる。手元のカードリーダーの問題なのでこのエラーは区役所では解決できない。