发票开具-全电-按次计费
<p>[TOC]</p>
<h3>1 使用流程</h3>
<p>第一步:调到注册接口创建开票企业
第二步:调用登录接口登录税局
第三步:调用获取开票员人脸识别二维码接口获取二维码
第四步:开票员用个税app或税务app扫码进行人脸识别
第五步:调用开票接口开票(未必立即返回开票结果)
第六步:若第五步没有返回开票结果,需要调用获取开票结果接口获取开票结果</p>
<hr />
<h3>2 接口调用说明</h3>
<h4>2.1 请求方式</h4>
<p>如接口没有单独说明,均为:<strong>POST</strong></p>
<h4>2.2 请求格式</h4>
<p>如接口没有单独说明,均为:<strong>application/x-www-form-urlencoded</strong></p>
<h4>2.3 请求参数</h4>
<p>请求参数包括公共参数和业务参数(业务参数见具体接口说明)
调用接口时,需要把<strong>公共参数</strong>和<strong>业务参数</strong>一并放在<strong>请求参数</strong>中提交</p>
<h5>2.3.1 公共请求参数</h5>
<table>
<thead>
<tr>
<th>名称</th>
<th>类型</th>
<th>必须</th>
<th><div style="width:420px;">说明</div></th>
</tr>
</thead>
<tbody>
<tr>
<td>appId</td>
<td>String</td>
<td>是</td>
<td>服务商分配的唯一标识</td>
</tr>
<tr>
<td>timestamp</td>
<td>Long</td>
<td>是</td>
<td>当前时间戳(毫秒)</td>
</tr>
<tr>
<td>sign</td>
<td>String</td>
<td>是</td>
<td>签名,详见<a href="#签名算法">签名算法说明</a></td>
</tr>
</tbody>
</table>
<p><a name="签名算法"></a></p>
<h5>2.3.2 签名算法说明</h5>
<pre><code>sign = sha256(appId + appSecret + timestamp)</code></pre>
<p>用服务商分配的 <strong>appId</strong>、服务商分配的 <strong>appSecret</strong>,当前时间戳(毫秒) <strong>timestamp</strong>,按上述顺序拼接成字符串,再进行 <strong>sha256</strong> 哈希得到。如下:</p>
<pre><code class="language-java">String appId = &quot;xyzxy2121zxyz&quot;;
String timestamp = &quot;1555378976238&quot;;
String appSecret = &quot;efcefcef1121cefcefc1212121&quot;;
String str = appId + appSecret + timestamp;
String sign = sha256(str);</code></pre>
<h4>2.4 返回说明</h4>
<h5>2.4.1 返回字段说明</h5>
<p>所有接口均返回以下公共字段:</p>
<table>
<thead>
<tr>
<th>字段名</th>
<th><div style="width:420px">说明</div></th>
</tr>
</thead>
<tbody>
<tr>
<td>code</td>
<td>返回码,详见:公共code返回码说明</td>
</tr>
<tr>
<td>msg</td>
<td>code对应的描述</td>
</tr>
<tr>
<td>charge</td>
<td>计费标志</td>
</tr>
<tr>
<td>taskNo</td>
<td>本次请求号</td>
</tr>
<tr>
<td>data</td>
<td>返回具体结果,object类型,详见data返回字段描述</td>
</tr>
</tbody>
</table>
<h5>2.4.2 公共code返回码说明</h5>
<p>所有接口公共返回码如下:</p>
<table>
<thead>
<tr>
<th>code</th>
<th><div style="width:420px;">说明</div></th>
</tr>
</thead>
<tbody>
<tr>
<td>200</td>
<td>成功</td>
</tr>
<tr>
<td>201</td>
<td>查无数据</td>
</tr>
<tr>
<td>400</td>
<td>参数错误</td>
</tr>
<tr>
<td>404</td>
<td>接口地址不正确</td>
</tr>
<tr>
<td>500</td>
<td>系统维护,请稍候再试</td>
</tr>
<tr>
<td>601</td>
<td>接口未开通</td>
</tr>
<tr>
<td>602</td>
<td>账号停用</td>
</tr>
<tr>
<td>604</td>
<td>接口停用</td>
</tr>
<tr>
<td>607</td>
<td>ip不在白名单</td>
</tr>
<tr>
<td>609</td>
<td>请求过于频繁,请稍候再试</td>
</tr>
<tr>
<td>610</td>
<td>请求超时</td>
</tr>
<tr>
<td>999</td>
<td>其他,以实际返回为准</td>
</tr>
</tbody>
</table>
<p>> 各接口如有其他返回码,在具体接口中说明</p>
<hr />
<h3>3 开票企业注册</h3>
<ul>
<li>用于创建开票企业</li>
<li>返回企业的spid, 后续接口需要此参数,请本地保存</li>
</ul>
<h4>3.1 请求地址</h4>
<p><code>https://api.jumdata.com/tax/enterprise/register</code></p>
<h4>3.2 业务参数</h4>
<table>
<thead>
<tr>
<th>名称</th>
<th>类型</th>
<th>必须</th>
<th><div style="width:420px;">说明</div></th>
</tr>
</thead>
<tbody>
<tr>
<td>qymc</td>
<td>String</td>
<td>是</td>
<td>企业名称</td>
</tr>
<tr>
<td>qysh</td>
<td>String</td>
<td>是</td>
<td>企业税号</td>
</tr>
<tr>
<td>ssdq</td>
<td>String</td>
<td>是</td>
<td>所属省份代码,详见省份代码说明</td>
</tr>
</tbody>
</table>
<h4>3.3 返回说明</h4>
<pre><code class="language-json">{
&quot;code&quot;: 200, // 详见code返回码说明
&quot;msg&quot;: &quot;成功&quot;, // code对应的描述
&quot;taskNo&quot;: &quot;69564903663951243279&quot;, // 本次唯一请求号
&quot;charge&quot;: false, // 本接口不计费
&quot;data&quot;: {
&quot;spid&quot;:&quot;29bb1c929a19977d3b34ea1ebbc60544&quot; // 后续接口需要此参数,请本地保存
}
}
</code></pre>
<hr />
<h3>4 获取开票企业信息</h3>
<ul>
<li>根据企业税号,获取企业信息</li>
</ul>
<h4>4.1 请求地址</h4>
<p><code>https://api.jumdata.com/tax/enterprise/info</code></p>
<h4>4.2 业务参数</h4>
<table>
<thead>
<tr>
<th>名称</th>
<th>类型</th>
<th>必须</th>
<th><div style="width:420px;">说明</div></th>
</tr>
</thead>
<tbody>
<tr>
<td>qysh</td>
<td>String</td>
<td>是</td>
<td>企业税号</td>
</tr>
</tbody>
</table>
<h4>4.3 返回说明</h4>
<pre><code class="language-json">{
&quot;code&quot;: 200, // 详见code返回码说明
&quot;msg&quot;: &quot;成功&quot;, // code对应的描述
&quot;taskNo&quot;: &quot;69564903663951243279&quot;, // 本次唯一请求号
&quot;charge&quot;: false, // 本接口不计费
&quot;data&quot;: {
&quot;qymc&quot;: &quot;杭州安那其科技有限公司&quot;,
&quot;qysh&quot;: &quot;1212112321312321&quot;, // 企业税号
&quot;spid&quot;: &quot;aafd22eb4d2645a2af2286e07b42536a&quot;, // 后续接口需要此参数,请本地保存
&quot;dqdm&quot;: &quot;3300&quot;, // 地区代码
&quot;ssdq&quot;: &quot;浙江&quot;
}
}</code></pre>
<hr />
<h3>5 登录税局</h3>
<ul>
<li>用于登录税局</li>
</ul>
<h4>5.1 请求地址</h4>
<p><code>https://api.jumdata.com/tax/enterprise/login</code></p>
<h4>5.2 业务参数</h4>
<table>
<thead>
<tr>
<th>名称</th>
<th>类型</th>
<th>必须</th>
<th><div style="width:420px;">说明</div></th>
</tr>
</thead>
<tbody>
<tr>
<td>spid</td>
<td>String</td>
<td>是</td>
<td>注册后生成,也可通过获取开票企业信息获取</td>
</tr>
<tr>
<td>sflx</td>
<td>String</td>
<td>是</td>
<td>身份类型:<br> 01-法定代表人<br> 02-财务负责人<br> 03-办税员<br> 04-涉税服务人员<br> 05-管理员<br> 06-出口退税人员<br> 07-领票人<br> 08-社保经办人<br> 09-开票员<br> 10-销售人员 <br> 31-行政办事员<br> 99-其他人员</td>
</tr>
<tr>
<td>dzswjyh</td>
<td>String</td>
<td>是</td>
<td>税局账号</td>
</tr>
<tr>
<td>dzswjmm</td>
<td>String</td>
<td>是</td>
<td>密码</td>
</tr>
</tbody>
</table>
<h4>5.3 返回说明</h4>
<pre><code class="language-json">{
&quot;code&quot;: 200, // 详见code返回码说明
&quot;msg&quot;: &quot;成功&quot;, // code对应的描述
&quot;taskNo&quot;: &quot;69564903663951243279&quot;, // 本次唯一请求号
&quot;charge&quot;: false, // 本接口不计费
&quot;data&quot;: {
&quot;isSms&quot;: &quot;0&quot;, // 是否需要短信验证码: 0-不需要,1-需要
&quot;mobile&quot;: &quot;&quot;
}
}</code></pre>
<hr />
<h3>6 校验登录短信验证码</h3>
<ul>
<li>用于校验调用登录接口发送的短信验证码</li>
</ul>
<h4>6.1 请求地址</h4>
<p><code>https://api.jumdata.com/tax/enterprise/validate-smscode</code></p>
<h4>6.2 业务参数</h4>
<table>
<thead>
<tr>
<th>名称</th>
<th>类型</th>
<th>必须</th>
<th><div style="width:420px;">说明</div></th>
</tr>
</thead>
<tbody>
<tr>
<td>spid</td>
<td>String</td>
<td>是</td>
<td>注册后生成,也可通过获取开票企业信息获取</td>
</tr>
<tr>
<td>yzm</td>
<td>String</td>
<td>是</td>
<td>验证码</td>
</tr>
</tbody>
</table>
<h4>6.3 返回说明</h4>
<pre><code class="language-json">{
&quot;code&quot;: 200, // 详见code返回码说明
&quot;msg&quot;: &quot;成功&quot;, // code对应的描述
&quot;taskNo&quot;: &quot;69564903663951243279&quot;, // 本次唯一请求号
&quot;charge&quot;: false, // 本接口不计费
}</code></pre>
<hr />
<h3>7 判断登录状态</h3>
<ul>
<li>用于判断当前是否登录</li>
</ul>
<h4>7.1 请求地址</h4>
<p><code>https://api.jumdata.com/tax/enterprise/login-status</code></p>
<h4>7.2 业务参数</h4>
<table>
<thead>
<tr>
<th>名称</th>
<th>类型</th>
<th>必须</th>
<th><div style="width:420px;">说明</div></th>
</tr>
</thead>
<tbody>
<tr>
<td>spid</td>
<td>String</td>
<td>是</td>
<td>注册后生成,也可通过获取开票企业信息获取</td>
</tr>
</tbody>
</table>
<h4>7.3 返回说明</h4>
<ul>
<li>登录状态</li>
</ul>
<pre><code class="language-json">{
&quot;code&quot;: 200, // 正常登录状态
&quot;msg&quot;: &quot;正常登录状态&quot;, // code对应的描述
&quot;taskNo&quot;: &quot;69564903663951243279&quot;, // 本次唯一请求号
&quot;charge&quot;: false, // 本接口不计费
}</code></pre>
<ul>
<li>未登录状态</li>
</ul>
<pre><code class="language-json">{
&quot;code&quot;: 211, // 未登录,请调用登录税局接口
&quot;msg&quot;: &quot;未登录,请调用登录税局接口&quot;, // code对应的描述
&quot;taskNo&quot;: &quot;69564903663951243279&quot;, // 本次唯一请求号
&quot;charge&quot;: false, // 本接口不计费
}</code></pre>
<hr />
<h3>8 获取刷脸身份认证二维码</h3>
<ul>
<li>开票人开票前需要用个税app或税务进行人脸识别身份认证,可延长税局在线时间</li>
<li>此接口生成刷脸身份认证的二维码</li>
</ul>
<h4>8.1 请求地址</h4>
<p><code>https://api.jumdata.com/invoice/makeout/v1/face-qrcode</code></p>
<h4>8.2 业务参数</h4>
<table>
<thead>
<tr>
<th>名称</th>
<th>类型</th>
<th>必须</th>
<th><div style="width:420px;">说明</div></th>
</tr>
</thead>
<tbody>
<tr>
<td>spid</td>
<td>String</td>
<td>是</td>
<td>注册后生成,也可通过获取开票企业信息获取</td>
</tr>
<tr>
<td>smlx</td>
<td>String</td>
<td>否</td>
<td>扫脸通道: 0-税务app ,1-个税app。默认:1</td>
</tr>
</tbody>
</table>
<h4>8.3 返回说明</h4>
<pre><code class="language-json">{
&quot;code&quot;: 200, // 详见code返回码说明
&quot;msg&quot;: &quot;成功&quot;, // code对应的描述
&quot;taskNo&quot;: &quot;69564903663951243279&quot;, // 本次唯一请求号
&quot;charge&quot;: false, // 本接口不计费
&quot;data&quot;: {
&quot;IMG&quot;: &quot;&quot;, // 二维码图片base64
&quot;URL&quot;: &quot;https://file.jumdata.com/qrcode/login/20240626/103477823230278431745589.png&quot; // 二维码图片地址
}
}
</code></pre>
<hr />
<h3>9 发票开具</h3>
<ul>
<li>全电发票开具(含蓝字和红字发票)</li>
</ul>
<h4>9.1 请求地址</h4>
<p><code>https://api.jumdata.com/invoice/makeout/v1/submit-with-count</code></p>
<h4>9.2 业务参数</h4>
<table>
<thead>
<tr>
<th>名称</th>
<th>类型</th>
<th>必须</th>
<th><div style="width:420px;">说明</div></th>
</tr>
</thead>
<tbody>
<tr>
<td>spid</td>
<td>String</td>
<td>是</td>
<td>注册后生成,也可通过获取开票企业信息获取</td>
</tr>
<tr>
<td>xtlsh</td>
<td>String</td>
<td>是</td>
<td>单据号,由接入者自行定义,唯一,长度大于10,小于40。后续查询开票结果需要用到</td>
</tr>
<tr>
<td>data</td>
<td>String</td>
<td>是</td>
<td>开票内容,json格式,详见data说明</td>
</tr>
</tbody>
</table>
<h5>9.2.1 data说明</h5>
<p>> 注:节点全大写</p>
<pre><code>{
&quot;KHMC&quot;: &quot;客户名称&quot;,
&quot;KHSH&quot;: &quot;税号&quot;,
&quot;KHDZ&quot;: &quot;地址&quot;,
&quot;KHKHYHZH&quot;: &quot;客户银行账号&quot;,
&quot;FPZL&quot;: &quot;发票种类&quot;,
&quot;BZ&quot;: &quot;备注&quot;,
&quot;KPR&quot;: &quot;开票人&quot;,
&quot;SKR&quot;: &quot;收款人&quot;,
&quot;FHR&quot;: &quot;复核人&quot;,
&quot;QYKHYHZH&quot;: &quot;企业开户银行账号&quot;,
&quot;QYDZDH&quot;: &quot;企业地址电话&quot;,
&quot;YFPHM&quot;: &quot;红冲原发票号&quot;,
&quot;XXBBH&quot;: &quot;信息表编号&quot;,
&quot;QDBZ&quot;: &quot;清单标志&quot;,
&quot;KHYJ&quot;: &quot;客户邮件&quot;,
&quot;KHSJ&quot;: &quot;客户手机号&quot;,
&quot;JDC&quot;: &quot;机动车标识&quot;,
&quot;DBTS&quot;: &quot;代办退税标识&quot;,
&quot;ITEM&quot;: [{
&quot;CPMC&quot;: &quot;产品名称1&quot;,
&quot;CPXH&quot;: &quot;产品型号&quot;,
&quot;CPDW&quot;: &quot;产品单位&quot;,
&quot;SL&quot;: &quot;税率&quot;,
&quot;CPSL&quot;: &quot;数量&quot;,
&quot;BHSJE&quot;: &quot;不含税金额&quot;,
&quot;SE&quot;: &quot;税额&quot;,
&quot;FLBM&quot;: &quot;分类编码&quot;,
&quot;XSYH&quot;: &quot;税率优惠&quot;,
&quot;KCJE&quot;:&quot;0&quot;
}, ... ]
}
</code></pre>
<ul>
<li>字段说明</li>
</ul>
<table>
<thead>
<tr>
<th>字段</th>
<th>是否必需</th>
<th><div style="width:420px;">说明</div></th>
</tr>
</thead>
<tbody>
<tr>
<td>KHMC</td>
<td>是</td>
<td>客户名称</td>
</tr>
<tr>
<td>KHSH</td>
<td>否</td>
<td>客户税号</td>
</tr>
<tr>
<td>KHDZ</td>
<td>否</td>
<td>客户地址</td>
</tr>
<tr>
<td>KHKHYHZH</td>
<td>否</td>
<td>开户银行账号</td>
</tr>
<tr>
<td>FPZL</td>
<td>是</td>
<td>发票种类 <br/>- 020 全电专票 <br>- 021 全电普票</td>
</tr>
<tr>
<td>KPR</td>
<td>否</td>
<td>开票人</td>
</tr>
<tr>
<td>SKR</td>
<td>否</td>
<td>收款人</td>
</tr>
<tr>
<td>FHR</td>
<td>否</td>
<td>复核人</td>
</tr>
<tr>
<td>QYKHYHZH</td>
<td>否</td>
<td>销方银行账号</td>
</tr>
<tr>
<td>QYDZDH</td>
<td>否</td>
<td>销方地址电话</td>
</tr>
<tr>
<td>YFPHM</td>
<td>条件是</td>
<td>红冲原发票号, 开具红字发票时必需,数电发票时,无需开具信息表,只需要传此值,自动产生信息表并自动产生红字发票</td>
</tr>
<tr>
<td>XXBBH</td>
<td>条件是</td>
<td>信息表编号,开具纸质专用发票以及电子专用发票时时必需</td>
</tr>
<tr>
<td>QDBZ</td>
<td>否</td>
<td>清单标志,默认为0</td>
</tr>
<tr>
<td>KHYJ</td>
<td>否</td>
<td>客户邮件,自动发邮件</td>
</tr>
<tr>
<td>KHSJ</td>
<td>否</td>
<td>客户手机</td>
</tr>
<tr>
<td>JDC</td>
<td>否</td>
<td>机动车标识,1为开具机动车专票</td>
</tr>
<tr>
<td>DBTS</td>
<td>否</td>
<td>代办退税标识,1为开具代办退税发票</td>
</tr>
<tr>
<td>BZ</td>
<td>否</td>
<td>备注</td>
</tr>
<tr>
<td>ITEM</td>
<td>是</td>
<td>明细,数组类型,详见ITEM字段说明</td>
</tr>
</tbody>
</table>
<ul>
<li>ITEM字段说明</li>
</ul>
<table>
<thead>
<tr>
<th>字段</th>
<th>是否必需</th>
<th><div style="width:420px;">说明</div></th>
</tr>
</thead>
<tbody>
<tr>
<td>CPMC</td>
<td>是</td>
<td>产品名称, 可需带分类编码简称,也可不带简称</td>
</tr>
<tr>
<td>FLBM</td>
<td>是</td>
<td>分类编码 必需到未级编码</td>
</tr>
<tr>
<td>CPXH</td>
<td>否</td>
<td>产品型号 如果是折扣行,此值为空</td>
</tr>
<tr>
<td>CPDW</td>
<td>否</td>
<td>产品单位 如果是折扣行,此值为空</td>
</tr>
<tr>
<td>SL</td>
<td>是</td>
<td>税率, 可传:13、0.13、13%、免税或不征税</td>
</tr>
<tr>
<td>CPSL</td>
<td>否</td>
<td>产品数量 数量,折扣时,此值为空或不传,红字发票时传负数</td>
</tr>
<tr>
<td>BHSJE</td>
<td>是</td>
<td>不含税金额, 红字发票时或折扣行时传负数</td>
</tr>
<tr>
<td>SE</td>
<td>是</td>
<td>税额,通常的计算方式:不含税金额X税率,红字发票或折扣行时传负数</td>
</tr>
<tr>
<td>XSYH</td>
<td>否</td>
<td>税收优惠: 1-有优惠1, 0-无优惠。 默认 0</td>
</tr>
<tr>
<td>KCJE</td>
<td>否</td>
<td>扣除金额, 差额开票时有用</td>
</tr>
</tbody>
</table>
<h4>9.3 返回样例</h4>
<ul>
<li>开具成功</li>
</ul>
<pre><code class="language-json">{
&quot;code&quot;: 200, //
&quot;msg&quot;: &quot;成功&quot;, // code对应的描述
&quot;taskNo&quot;: &quot;69564903663951243279&quot;, // 本次唯一请求号
&quot;charge&quot;: true,
&quot;data&quot;: {
&quot;XTLSH&quot;: &quot;001&quot;, // 单据号
&quot;KPJG&quot;: &quot;开票成功&quot;,// 开票结果
&quot;KPFK&quot;: &quot;pdf产生成功&quot;,// 开票反馈信息
&quot;FPZL&quot;: &quot;021&quot;,
&quot;FPDM&quot;: &quot;1233456789012&quot;, // 发票代码
&quot;FPHM&quot;: &quot;12345678&quot;, // 发票号码
&quot;JQBH&quot;: &quot;&quot;, // 机器编号
&quot;KPRQ&quot;: &quot;2024-01-12&quot;, // 开票日期
&quot;SKM&quot;: &quot;密文&quot;, // 密文
&quot;JYM&quot;: &quot;校验码&quot;, // 校验码
&quot;EWM&quot;: &quot;二维码&quot;, // 二维码
&quot;SKBHSJE&quot;: &quot;5&quot;, // 不含税金额
&quot;SKSE&quot;: &quot;0.3&quot;, // 税额
&quot;URL&quot;: &quot;&quot;,// 电子发票下载网址
&quot;SJURL_PDF&quot;: &quot;&quot;, // 税局PDF下载网址
&quot;SJURL_OFD&quot;: &quot;&quot;, // 税局OFD下载网址
&quot;SJURL_XML&quot;: &quot;&quot;, // 税局XML下载网址
}
}</code></pre>
<ul>
<li>已提交开具</li>
</ul>
<pre><code class="language-json">{
&quot;code&quot;: 202,
&quot;msg&quot;: &quot;&quot;,
&quot;taskNo&quot;: &quot;69564903663951243279&quot;,
&quot;charge&quot;: true,
}</code></pre>
<ul>
<li>同一单据,重复提交</li>
</ul>
<pre><code class="language-json">{
&quot;code&quot;: 202, //
&quot;msg&quot;: &quot;&quot;,
&quot;taskNo&quot;: &quot;69564903663951243279&quot;,
&quot;charge&quot;: false
}</code></pre>
<ul>
<li>提交失败</li>
</ul>
<pre><code class="language-json">{
&quot;code&quot;: 999,
&quot;msg&quot;: &quot;&quot;,
&quot;taskNo&quot;: &quot;69564903663951243279&quot;,
&quot;charge&quot;: false
}</code></pre>
<h4>9.4 code返回码说明</h4>
<table>
<thead>
<tr>
<th>code</th>
<th><div style="width:420px;">说明</div></th>
</tr>
</thead>
<tbody>
<tr>
<td>200</td>
<td>开具成功 (计费)</td>
</tr>
<tr>
<td>202</td>
<td>提交开票成功,请稍候调用查询开票结果接口查询开票结果 (计费)</td>
</tr>
<tr>
<td>203</td>
<td>此单据已经开过发票</td>
</tr>
<tr>
<td>211</td>
<td>未登录,请调用登录税局接口,再调用查询开票结果接口查询开票结果 (计费)</td>
</tr>
<tr>
<td>212</td>
<td>身份认证已超时,请用个税App扫码进行人脸识别,再调用查询开票结果接口查询开票结果 (计费)</td>
</tr>
</tbody>
</table>
<p>> 其他见:公共code返回码说明</p>
<hr />
<p><a name="发票开具结果查询"></a></p>
<h3>10 发票开具结果查询</h3>
<ul>
<li>查询发票开具结果</li>
</ul>
<h4>10.1 请求地址</h4>
<p><code>https://api.jumdata.com/invoice/makeout/v1/result</code></p>
<h4>10.2 业务参数</h4>
<table>
<thead>
<tr>
<th>名称</th>
<th>类型</th>
<th>必须</th>
<th><div style="width:420px;">说明</div></th>
</tr>
</thead>
<tbody>
<tr>
<td>spid</td>
<td>String</td>
<td>是</td>
<td>注册后生成,也可通过获取开票企业信息获取</td>
</tr>
<tr>
<td>xtlsh</td>
<td>String</td>
<td>是</td>
<td>单据号,即开具发票的传入的单据号</td>
</tr>
<tr>
<td>fpzl</td>
<td>String</td>
<td>是</td>
<td>发票种类 <br>- 020 全电专票 <br>- 021 全电普票</td>
</tr>
</tbody>
</table>
<h4>10.3 返回说明</h4>
<ul>
<li>开具成功</li>
</ul>
<pre><code class="language-json">{
&quot;code&quot;: 200, // 详见code返回码说明
&quot;msg&quot;: &quot;成功&quot;, // code对应的描述
&quot;taskNo&quot;: &quot;69564903663951243279&quot;, // 本次唯一请求号
&quot;charge&quot;: false, // 本接口不计费
&quot;data&quot;: {
&quot;XTLSH&quot;: &quot;001&quot;, // 单据号
&quot;FPHM&quot;: &quot;12345678&quot;, // 发票号码
&quot;KPRQ&quot;: &quot;2021-11-12 00:00:00.000&quot;, // 开票日期
&quot;MW&quot;: &quot;[ODA0NDw2KjYwMD]&quot;, // 发票密文, 前后都有中括号
&quot;XYM&quot;: &quot;57408721592&quot;,//校验码
&quot;JQBH&quot;: &quot;66180&quot;, //机器编号
&quot;SKBHSJE&quot;: &quot;5&quot;, // 不含税金额
&quot;SKSE&quot;: &quot;0.3&quot;, // 税额
&quot;URL&quot;: &quot;574087215921.PDF&quot;,//发票下载地址,
&quot;SJURL_PDF&quot;: &quot;&quot;, // 税局PDF下载网址
&quot;SJURL_OFD&quot;: &quot;&quot;, // 税局OFD下载网址
&quot;SJURL_XML&quot;: &quot;&quot;, // 税局XML下载网址
}
}
</code></pre>
<ul>
<li>开具失败</li>
</ul>
<pre><code class="language-json">{
&quot;code&quot;: 999,
&quot;msg&quot;: &quot;&quot;,
&quot;taskNo&quot;: &quot;69564903663951243279&quot;,
&quot;charge&quot;: false
}
</code></pre>
<h3>11 附录</h3>
<h4>11.1 地区代码</h4>
<table>
<thead>
<tr>
<th>省市代码</th>
<th>省市名称</th>
</tr>
</thead>
<tbody>
<tr>
<td>1100</td>
<td>北京</td>
</tr>
<tr>
<td>1200</td>
<td>天津</td>
</tr>
<tr>
<td>3100</td>
<td>上海</td>
</tr>
<tr>
<td>4403</td>
<td>深圳</td>
</tr>
<tr>
<td>5000</td>
<td>重庆</td>
</tr>
<tr>
<td>2102</td>
<td>大连</td>
</tr>
<tr>
<td>3702</td>
<td>青岛</td>
</tr>
<tr>
<td>3302</td>
<td>宁波</td>
</tr>
<tr>
<td>3502</td>
<td>厦门</td>
</tr>
<tr>
<td>3400</td>
<td>安徽</td>
</tr>
<tr>
<td>3500</td>
<td>福建</td>
</tr>
<tr>
<td>3600</td>
<td>江西</td>
</tr>
<tr>
<td>3700</td>
<td>山东</td>
</tr>
<tr>
<td>4100</td>
<td>河南</td>
</tr>
<tr>
<td>4200</td>
<td>湖北</td>
</tr>
<tr>
<td>4300</td>
<td>湖南</td>
</tr>
<tr>
<td>4400</td>
<td>广东</td>
</tr>
<tr>
<td>4500</td>
<td>广西</td>
</tr>
<tr>
<td>4600</td>
<td>海南</td>
</tr>
<tr>
<td>1400</td>
<td>山西</td>
</tr>
<tr>
<td>5100</td>
<td>四川</td>
</tr>
<tr>
<td>5200</td>
<td>贵州</td>
</tr>
<tr>
<td>5300</td>
<td>云南</td>
</tr>
<tr>
<td>5400</td>
<td>西藏</td>
</tr>
<tr>
<td>6100</td>
<td>陕西</td>
</tr>
<tr>
<td>6200</td>
<td>甘肃</td>
</tr>
<tr>
<td>6300</td>
<td>青海</td>
</tr>
<tr>
<td>6400</td>
<td>宁夏</td>
</tr>
<tr>
<td>6500</td>
<td>新疆</td>
</tr>
<tr>
<td>1500</td>
<td>内蒙</td>
</tr>
<tr>
<td>1300</td>
<td>河北</td>
</tr>
<tr>
<td>2100</td>
<td>辽宁</td>
</tr>
<tr>
<td>2200</td>
<td>吉林</td>
</tr>
<tr>
<td>2300</td>
<td>黑龙江</td>
</tr>
<tr>
<td>3200</td>
<td>江苏</td>
</tr>
<tr>
<td>3300</td>
<td>浙江</td>
</tr>
</tbody>
</table>