统一社会信用代码校验

营业执照上那串 18 位代码在填表时经常被打错一位,先在本地校验一遍,顺带看清它表示的是哪里的什么主体。

空格和连字符会自动忽略,小写会自动转成大写。允许出现的字符只有数字和 A 到 Z 里除 I、O、S、V、Z 之外的 22 个字母。

这 18 位分别在说什么

第 1 位是登记管理部门:1 是机构编制,5 是民政,9 是工商(现在叫市场监管),Y 是其他。第 2 位是机构类别,含义要看管理部门:工商这条线里 1 是企业、2 是个体工商户、3 是农民专业合作社;民政这条线里 1 是社会团体、2 是民办非企业单位、3 是基金会;机构编制这条线里 1 是机关、2 是事业单位、3 是群众团体。

第 3 到 8 位是登记机关的行政区划码,用的是身份证同一个 GB/T 2260 标准:前两位是省份,中间两位是市,后两位是县区。所以看到 91310101 就知道是上海市黄浦区的企业,看到 91440300 就是深圳市。

第 9 到 17 位是老的组织机构代码,9 位里最后一位是它自己的校验位,用 8 位本体按 3、7、9、10、5、8、4、2 加权求和后对 11 取模。第 18 位才是整串代码的主校验位,权重序列是 1、3、9、27、19、26、16、17、20、29、25、13、8、24、10、30、28,用 31 取模。

字符集里特意去掉了 I、O、S、V、Z 五个字母,因为它们容易和 1、0、5、U、2 看混。所以如果校验提示「不在字符集里」,多半是把数字 0 抄成了字母 O,或者把 1 抄成了字母 I。

两种校验都通过,只能说明这串代码本身没写错,不能证明主体真实存在。要确认企业是否登记在册,得去国家企业信用信息公示系统查;这里的解析结果也不代表登记机关的最终认定。