マイナンバーを検証する gem を作った
tl;dr
開発中のサービス SmartHR で必要になったので、マイナンバー、法人番号の validator を作りました。
こんな感じで検証できます。
# マイナンバーの検証
validates :digits, my_number: { strict: true, allow_blank: true }
# 法人番号の検証
validates :digits, corporate_number: { strict: true, allow_blank: true }
(あんま需要なさそうですが)マイナンバー関連のシステムを構築する際などにご活用ください。
チェックディジットについて
12 桁で構成されているマイナンバーのうち、最後尾の 1 桁は「チェックディジット」として利用されます。
この数値は最後尾の 1 桁を除く 11 桁の数値をもとに算出されます。
入力ミスを計算によって発見することができる、とても便利な仕組みです。
ちなみにマイナンバーのチェックディジット計算方法はこんな感じです。
ワザワザこのロジックを書くのは面倒ですね。
Tsubaki を利用すると、簡単にチェックディジットの検証を行うことができます!
法人番号
各企業に割り当てられる 13 桁の法人番号にもチェックディジットが付与されています。
マイナンバーが最後尾の 1 桁をチェックディジットとしている一方で、法人番号は先頭の 1 桁を利用します。また、マイナンバーとは計算方法も少々異なります。
法人番号に関するFAQ|社会保障・税社会保障・税番号制度FAQ|社会保障・税番号制度<マイナンバー>について|国税庁より
Tsubaki は法人番号の検証にも対応しています。
おまけ
検証用にランダムなマイナンバーや法人番号を生成するページを用意しました。
テスト等にご利用ください。
Author And Source
この問題について(マイナンバーを検証する gem を作った), 我々は、より多くの情報をここで見つけました https://qiita.com/kakipo/items/e3f376e78a4a37374b32著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .