张瑾
随着各项税制改革的进行和税收征管自动化程度的加深,传统的审计方法已经不能满足地方税收征管审计需要,笔者利用AO计算机审计系统,通过外部数据,即对国土局、工商局等部门涉税信息进行采集,并与地税部门税收征管信息进行比对,跳出了地税征管信息这座“山”,初探地方税收征管情况的“真面目”。
一、计算机审计需要的数据
(一)基础表:纳税人基础信息。数据元素:纳税人电子档案号,纳税人名称,生产经营地址,行业代码,税务核准登记日期等。
(二)基础表:税款征收信息。数据元素:纳税人电子档案号,所属时期起,所属时期止,征收项目代码,征收品目代码,税款种类,税款属性,课税数量,税率,税额,入库日期,申报方式代码,征收方式代码等。
(三)基础表:税款申报信息。数据元素:征收项目代码,纳税人电子档案号,申报期限,延期申报期限,申报日期,填表日期,所属时期起,所属时期止,应纳税额等。
(四)基础表:土地证信息。数据元素:序号,单位名称,土地座落,土地证号,宗地面积,审批时间,土地用途等。
(五)基础表:企业工商登记信息。数据元素:负责人,企业名称,注册资金,住所,成立日期,企业类型等。
(六)基础表:土地出让信息表。数据元素:土地用途,土地面积(公顷),出让年限,成交价(万元),受让单位,合同签订时间等。
二、利用土地证信息审查城镇土地使用税征管情况
主要思路:根据有关规定,纳税人持有县以上人民政府核发的土地使用证书的按照证书确认的土地面积计算缴纳城镇土地使用税;因此比较土地证信息的土地面积与入库城镇土地使用税的课税面积,审查城镇土地使用税计税依据是否完整;比较土地证信息中单位名称与入库城镇土地使用税的纳税人名称,审查纳税人是否完整。
审计步骤:由于这项审计具有共性,为了提高审计效率,编写了计算机审计办法。计算机审计方法主要分为两个步骤,步骤1是审查城镇土地使用税课税面积的完整性,先按土地证信息中单位名称汇总实际宗地面积,再汇总其缴纳城镇土地使用税和课税面积情况,最后对以上进行比较分析,得到课税面积少于实际宗地面积的单位名单,以便延伸落实;步骤2是审查纳税人的完整性,查找土地证信息中单位名称不在入库城镇土地使用税的纳税人名称中的记录,得到应纳未纳城镇土地使用税的单位名单,以便延伸落实。审计方法语言如下:
步骤1
//审查课税面积完整性,找出实际宗地面积大于课税面积的单位
var sql1,sql2,sql3,sql4,sql5,bz;
begin //1、汇总各单位实际宗地面积
sql1:=′select 单位名称,sum(宗地面积)as 宗地面积和 from 土地证信息 where 审批时间<″2011-9-30″or 审批时间 is null group by 单位名称′;
CreateTempTable(′分单位的土地证信息表′,sql1);
//2、在税款征收信息中加入纳税人基础信息,并提出城镇土地使用税的相关情况
sql2:=′select a.*,b.纳税人名称, 生产经营地址,电话号码 from 税款征收信息 a join 纳税人基础信息 b on a.纳税人电子档案号=b.纳税人电子档案号 where 纳税人名称 is not null and 增加征收项目 like ″城镇土地使用税″′;
CreateTempTable(′带基础信息的城镇土地使用税税款征收信息表′,sql2);
//3、汇总各单位课税土地面积
sql4:=′select 纳税人名称,sum(课税数量)as 课税面积之和 from 带基础信息的城镇土地使用税税款征收信息表 where month(convert(date,所属时期止))=9 and year(convert(date,所属时期止))=2011 group by 纳税人名称′;
CreateTempTable(′分纳税人名称的征收面积信息表′,sql4);
//4、将带有土地面积和的两表连接,在土地证信息中找到未按实际宗地面积纳税的单位详细情况
sql3:=′select * from 土地证信息 where 单位名称 in(select 单位名称 from 分单位的土地证信息表 a join 分纳税人名称的征收面积信息表 b on a.单位名称=b.纳税人名称 where a.宗地面积和>b.课税面积之和)′;
CreateTempTable(′实际宗地面积大于课税面积单位信息表′,sql3);
Begin
sql5:=createq(′select * from 实际宗地面积大于课税面积单位信息表′,-1);
Bz:=Qeof(sql5);
while Bz<>1 do
begin
AddTransRslt(sql5,′进一步延伸单位信息′);
Bz:=Qmov(sql5,1);
Bz:=Qeof(sql5);
end;
TransBatch(sql5,′进一步延伸单位信息′);
end;
end.
步骤2
//审查应纳税人的完整性
var sql4,bz;
begin
sql4:=createq(′select * from 土地證信息 where 单位名称 not in(select 纳税人名称 from 带基础信息的城镇土地使用税税款征收信息表)′,-1);
Bz:=Qeof(sql4);
while Bz<>1 do
begin
AddTransRslt(sql4,′进一步延伸单位信息′);
Bz:=Qmov(sql4,1);
Bz:=Qeof(sql4);
end;
TransBatch(sql4,′进一步延伸单位信息′);
end.
三、利用企业工商登记信息审查税务登记情况
主要思路:根据有关规定,办理企业应在办理工商登记后一个月内申请办理税务登记,税务部门收到企业申请后应在一个月内为其办理税务登记,比较工商登记信息与纳税人基础信息,审查有无进行工商登记未办理纳税人登记的情况。
审计步骤:使用SQL查询分析器,在企业工商登记信息中查询某年10月31日前已进行工商登记,截至某年12月31日纳税人基础信息中没有相关信息的企业信息,生成疑点。由于SQL语句的写法比較简单,在此不再赘述。
四、利用土地出让信息审查契税、耕地占用税征管情况
主要思路:比较土地出让信息与纳税人申报信息、征收信息、土地证信息,审查契税和耕地占用税的计税依据是否完整,申报缴纳是否及时。
审计步骤:一是使用SQL查询分析器,根据土地出让信息中的土地成交价格、成交日期分别计算应申报缴纳耕契税金额、申报期限,生成应缴耕契两税及申报期限表。二是在税款申报信息表中加入纳税人名称,生成带纳税人名称的税款申报信息。三是对照带纳税人名称的税款申报信息表和应缴耕契两税及申报期限表,将不符合的情况生成疑点。SQL语句如下:
select 征收项目代码,纳税人名称,申报期限,sum(应纳税额)as 申报金额汇总 into 申报汇总表 from 带纳税人名称的税款申报信息 where 征收项目代码 like′74′ or 征收项目代码 like′75′ group by 征收项目代码 ,纳税人名称,申报期限。
同上,再对应缴耕契两税及申报期限表进行汇总。
select 受让单位,最晚耕地占用税缴纳期限,最晚契税申报期限,sum(应缴契税金额)应缴契税金额汇总,sum(应缴耕地占用税金额)应缴耕地占用税金额汇总 into 应申报耕契两税汇总 from 应缴耕契两税及申报缴纳期限表 group by 受让单位,最晚耕地占用税缴纳期限,最晚契税申报期限
然后对两表进行关联查询申报耕契两税不实、日期不符合规定的记录。
select 纳税人名称 from 申报汇总表 a join 应申报耕契两税汇总 b on b.受让单位=a.纳税人名称 where(convert(date,申报期限)>最晚耕地占用税缴纳期限 and 征收项目代码 like ′74′)or(convert(date,申报期限)>最晚契税申报期限 and 征收项目代码 like ′75′)or(应缴耕地占用税金额汇总>申报金额汇总 and 征收项目代码 like ′74′)or(应缴契税金额汇总>申报金额汇总 and 征收项目代码 like ′75′)。(作者单位:济南市长清区审计局)