聚美智数


发票开具

<p>[TOC]</p> <h3>1 使用流程</h3> <h4>1.1 第一步 -- 登录税局</h4> <p>发票开具需先调用登录接口去登录税局,然后调用获取token接口获取token,开票接口需要传入token 详见:[登录相关接口](<a href="https://www.showdoc.com.cn/p/a63fe7d73087fbebd612aef11dab8b9e">https://www.showdoc.com.cn/p/a63fe7d73087fbebd612aef11dab8b9e</a> &quot;登录相关接口&quot;) &gt; 获取token之后,如果token未过期,可一直发起开票任务,如果token过期则需要再次获取token &gt; 如果登录过期则需要再次调用登录接口</p> <h4>1.2 第二步 -- 实名认证</h4> <p>开票需要开票人实名认证,步骤如下:</p> <ol> <li>调用获取人脸识别认证二维码接口获取二维码</li> <li>用<strong>个税App</strong>或<strong>税务App</strong>扫码进行人脸识别</li> <li>再调用获取人脸识别认证结果接口获取认证结果</li> </ol> <h4>1.3 第三步 -- 开票</h4> <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> <ul> <li>公共请求参数</li> </ul> <table> <thead> <tr> <th>名称</th> <th>类型</th> <th>必须</th> <th>&lt;div style=&quot;width:420px;&quot;&gt;说明&lt;/div&gt;</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>签名,详见&lt;a href=&quot;#签名算法&quot;&gt;签名算法说明&lt;/a&gt;</td> </tr> </tbody> </table> <p>&lt;a name=&quot;签名算法&quot;&gt;&lt;/a&gt;</p> <ul> <li>签名算法说明</li> </ul> <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 = &amp;quot;xyzxy2121zxyz&amp;quot;; String timestamp = &amp;quot;1555378976238&amp;quot;; String appSecret = &amp;quot;efcefcef1121cefcefc1212121&amp;quot;; String str = appId + appSecret + timestamp; String sign = sha256(str);</code></pre> <h4>2.4 返回说明</h4> <p>所有接口均返回以下公共字段:</p> <table> <thead> <tr> <th>字段名</th> <th>&lt;div style=&quot;width:420px&quot;&gt;说明&lt;/div&gt;</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>计费标志 true为计费,false为不计费</td> </tr> <tr> <td>taskNo</td> <td>本次请求号</td> </tr> <tr> <td>data</td> <td>返回具体结果,object类型,详见data返回字段描述</td> </tr> </tbody> </table> <p>&lt;a name=&quot;code返回码说明&quot;&gt;&lt;/a&gt;</p> <ul> <li>code返回码说明</li> </ul> <table> <thead> <tr> <th>code</th> <th>&lt;div style=&quot;width:420px;&quot;&gt;说明&lt;/div&gt;</th> </tr> </thead> <tbody> <tr> <td>200</td> <td>成功标识,具体接口以实际返回为准</td> </tr> <tr> <td>202</td> <td>任务正在进行中,请稍后再试</td> </tr> <tr> <td>301</td> <td>用户名或手机号在电局不存在</td> </tr> <tr> <td>302</td> <td>未登录或登录已失效,请重新登录</td> </tr> <tr> <td>303</td> <td>token已失效,请重新获取token</td> </tr> <tr> <td>311</td> <td>未完成扫脸</td> </tr> <tr> <td>312</td> <td>实名认证过期,重新获取二维码进行人脸识别</td> </tr> <tr> <td>399</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>501</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>606</td> <td>调用超限,请稍候再试</td> </tr> <tr> <td>607</td> <td>ip不在白名单</td> </tr> <tr> <td>609</td> <td>请求过于频繁,请稍候再试</td> </tr> </tbody> </table> <hr /> <h3>3 实名认证</h3> <h4>3.1 获取认证二维码</h4> <p>获取实名认证二维码,用<strong>个税App</strong>或<strong>税务App</strong>扫码进行人脸识别</p> <ul> <li>请求地址</li> </ul> <p><code>https://api.jumdata.com/tax/v3/makeout/auth/qrcode</code></p> <ul> <li>业务参数</li> </ul> <table> <thead> <tr> <th>名称</th> <th>类型</th> <th>必须</th> <th>&lt;div style=&quot;width:420px;&quot;&gt;说明&lt;/div&gt;</th> </tr> </thead> <tbody> <tr> <td>nsrsbh</td> <td>String</td> <td>是</td> <td>纳税人识别号</td> </tr> <tr> <td>dq</td> <td>String</td> <td>是</td> <td>地区编码</td> </tr> <tr> <td>gryhm</td> <td>String</td> <td>是</td> <td>登录账号,该值可为:居民身份证/手机号/用户名</td> </tr> <tr> <td>token</td> <td>String</td> <td>是</td> <td>查询登录token接口返回的token</td> </tr> <tr> <td>app</td> <td>String</td> <td>是</td> <td>扫码app。1-个税app, 2-税局app</td> </tr> </tbody> </table> <ul> <li>成功返回样例</li> </ul> <pre><code class="language-json">{ &amp;quot;code&amp;quot;: 200, &amp;quot;msg&amp;quot;: &amp;quot;&amp;quot;, &amp;quot;taskNo&amp;quot;: &amp;quot;526782409178028997165459&amp;quot;, &amp;quot;data&amp;quot;: { &amp;quot;authId&amp;quot;: &amp;quot;857cbe76be841e98bfd&amp;quot;, // 认证id &amp;quot;qrcodeImageBase64&amp;quot;: &amp;quot;&amp;quot;, // 二维码图片base64 &amp;quot;qrcodeImageUrl&amp;quot;: &amp;quot;&amp;quot; // 二维码图片url } }</code></pre> <ul> <li>失败返回样例</li> </ul> <pre><code class="language-json">{ &amp;quot;code&amp;quot;: 301, &amp;quot;msg&amp;quot;: &amp;quot;用户名或手机号在电局不存在&amp;quot;, &amp;quot;taskNo&amp;quot;: &amp;quot;526782409178028997165459&amp;quot; }</code></pre> <h4>3.2 获取认证结果</h4> <ul> <li>请求地址</li> </ul> <p><code>https://api.jumdata.com/tax/v3/makeout/auth/result</code></p> <ul> <li>业务参数</li> </ul> <table> <thead> <tr> <th>名称</th> <th>类型</th> <th>必须</th> <th>&lt;div style=&quot;width:420px;&quot;&gt;说明&lt;/div&gt;</th> </tr> </thead> <tbody> <tr> <td>nsrsbh</td> <td>String</td> <td>是</td> <td>纳税人识别号</td> </tr> <tr> <td>dq</td> <td>String</td> <td>是</td> <td>地区编码</td> </tr> <tr> <td>gryhm</td> <td>String</td> <td>是</td> <td>登录账号,该值可为:居民身份证/手机号/用户名</td> </tr> <tr> <td>token</td> <td>String</td> <td>是</td> <td>查询登录token接口返回的token</td> </tr> <tr> <td>authId</td> <td>String</td> <td>是</td> <td>获取认证二维码返回的authId</td> </tr> <tr> <td>app</td> <td>String</td> <td>是</td> <td>扫码app。1-个税app, 2-税局app</td> </tr> </tbody> </table> <ul> <li>成功返回样例</li> </ul> <pre><code class="language-json">{ &amp;quot;code&amp;quot;: 200, &amp;quot;msg&amp;quot;: &amp;quot;通过&amp;quot;, &amp;quot;taskNo&amp;quot;: &amp;quot;526782409178028997165459&amp;quot; }</code></pre> <ul> <li>未完成扫脸返回样例</li> </ul> <pre><code class="language-json">{ &amp;quot;code&amp;quot;: 311, &amp;quot;msg&amp;quot;: &amp;quot;未完成扫脸&amp;quot;, &amp;quot;taskNo&amp;quot;: &amp;quot;526782409178028997165459&amp;quot; }</code></pre> <ul> <li>扫脸过期,重新获取二维码</li> </ul> <pre><code class="language-json">{ &amp;quot;code&amp;quot;: 312, &amp;quot;msg&amp;quot;: &amp;quot;扫脸过期,重新获取二维码&amp;quot;, &amp;quot;taskNo&amp;quot;: &amp;quot;526782409178028997165459&amp;quot; }</code></pre> <h3>4 蓝字发票</h3> <h4>4.1 蓝字发票开具</h4> <ul> <li>请求地址</li> </ul> <p><code>https://api.jumdata.com/tax/v3/makeout/blue-invoice/submit</code></p> <ul> <li>业务参数</li> </ul> <table> <thead> <tr> <th>名称</th> <th>类型</th> <th>必须</th> <th>&lt;div style=&quot;width:420px;&quot;&gt;说明&lt;/div&gt;</th> </tr> </thead> <tbody> <tr> <td>nsrsbh</td> <td>String</td> <td>是</td> <td>纳税人识别号</td> </tr> <tr> <td>dq</td> <td>String</td> <td>是</td> <td>地区编码</td> </tr> <tr> <td>gryhm</td> <td>String</td> <td>是</td> <td>登录账号,该值可为:居民身份证/手机号/用户名</td> </tr> <tr> <td>token</td> <td>String</td> <td>是</td> <td>查询登录token接口返回的token</td> </tr> <tr> <td>taskId</td> <td>String</td> <td>是</td> <td>开票任务id,同一张票使用同一个taskId 防止重复开票,taskId保存8小时,8小时之后失效</td> </tr> <tr> <td>invoiceData</td> <td>String</td> <td>是</td> <td>开票数据,json格式,详见:开票数据说明</td> </tr> </tbody> </table> <ul> <li> <p>开票数据说明</p> </li> <li>开具完成返回样例</li> </ul> <pre><code class="language-json">{ &amp;quot;code&amp;quot;: 200, &amp;quot;msg&amp;quot;: &amp;quot;开具成功&amp;quot;, &amp;quot;taskNo&amp;quot;: &amp;quot;526782409178028997165459&amp;quot;, &amp;quot;data&amp;quot;: { &amp;quot;fphm&amp;quot;: &amp;quot;25332000000456135731&amp;quot;, // 发票号码 &amp;quot;kprq&amp;quot;: &amp;quot;2025-10-15 10:37:23&amp;quot; // 开票日期 } }</code></pre> <ul> <li>开具任务进行中返回样例</li> </ul> <pre><code class="language-json">{ &amp;quot;code&amp;quot;: 202, &amp;quot;msg&amp;quot;: &amp;quot;任务正在进行中,请稍后再试&amp;quot;, &amp;quot;taskNo&amp;quot;: &amp;quot;526782409178028997165459&amp;quot; }</code></pre> <p>&gt; 此返回表示本taskId的开票任务未完成,等待税局执行完成。 可再次使用相同参数调用本接口,如果成功表示税局开票成功。</p> <h4>4.2 蓝字发票查询</h4> <p>查询已开具的蓝字发票</p> <ul> <li>请求地址</li> </ul> <p><code>https://api.jumdata.com/tax/v3/makeout/blue-invoice/query</code></p> <ul> <li>业务参数</li> </ul> <table> <thead> <tr> <th>名称</th> <th>类型</th> <th>必须</th> <th>&lt;div style=&quot;width:420px;&quot;&gt;说明&lt;/div&gt;</th> </tr> </thead> <tbody> <tr> <td>nsrsbh</td> <td>String</td> <td>是</td> <td>纳税人识别号</td> </tr> <tr> <td>dq</td> <td>String</td> <td>是</td> <td>地区编码</td> </tr> <tr> <td>gryhm</td> <td>String</td> <td>是</td> <td>登录账号,该值可为:居民身份证/手机号/用户名</td> </tr> <tr> <td>token</td> <td>String</td> <td>是</td> <td>查询登录token接口返回的token</td> </tr> <tr> <td>kprqq</td> <td>String</td> <td>是</td> <td>开票日期起,格式:yyyy-MM-dd</td> </tr> <tr> <td>kprqz</td> <td>String</td> <td>是</td> <td>开票日期止,格式:yyyy-MM-dd</td> </tr> <tr> <td>fphm</td> <td>String</td> <td>否</td> <td>发票号码</td> </tr> <tr> <td>zzfpdm</td> <td>String</td> <td>否</td> <td>纸质发票代码</td> </tr> <tr> <td>zzfphm</td> <td>String</td> <td>否</td> <td>纸质发票号码</td> </tr> <tr> <td>gxfxz</td> <td>String</td> <td>否</td> <td>购销方性质</td> </tr> <tr> <td>dfnsrmc</td> <td>String</td> <td>否</td> <td>对方纳税人名称</td> </tr> <tr> <td>dfnsrsbh</td> <td>String</td> <td>否</td> <td>对方纳税人识别号</td> </tr> </tbody> </table> <ul> <li>成功返回样例</li> </ul> <pre><code class="language-json">{ &amp;quot;code&amp;quot;: 200, &amp;quot;msg&amp;quot;: &amp;quot;成功&amp;quot;, &amp;quot;taskNo&amp;quot;: &amp;quot;526782409178028997165459&amp;quot;, &amp;quot;data&amp;quot;: { &amp;quot;pagenumber&amp;quot;: 1, &amp;quot;pagesize&amp;quot;: 50, &amp;quot;total&amp;quot;: 2, &amp;quot;list&amp;quot;: [ { &amp;quot;gjbq&amp;quot;: null, &amp;quot;fphm&amp;quot;: &amp;quot;24342000280347121212&amp;quot;, &amp;quot;zzfphm&amp;quot;: &amp;quot;&amp;quot;, &amp;quot;zzfpdm&amp;quot;: &amp;quot;&amp;quot;, &amp;quot;fplydm&amp;quot;: &amp;quot;2&amp;quot;, &amp;quot;fplxdm&amp;quot;: &amp;quot;82&amp;quot;, &amp;quot;fppzdm&amp;quot;: &amp;quot;02&amp;quot;, &amp;quot;fpkjfxlxdm&amp;quot;: null, &amp;quot;tdyslxdm&amp;quot;: null, &amp;quot;fpztdm&amp;quot;: &amp;quot;03&amp;quot;, &amp;quot;cezslxdm&amp;quot;: null, &amp;quot;sflzfp&amp;quot;: &amp;quot;Y&amp;quot;, &amp;quot;kjhzfpdydlzfphm&amp;quot;: null, &amp;quot;kpfnsrsbh&amp;quot;: &amp;quot;xxxx&amp;quot;, &amp;quot;xsfnsrsbh&amp;quot;: &amp;quot;xxxx&amp;quot;, &amp;quot;xsfmc&amp;quot;: &amp;quot;纳税人名称5658119&amp;quot;, &amp;quot;gmfnsrsbh&amp;quot;: &amp;quot;xxxx&amp;quot;, &amp;quot;gmfmc&amp;quot;: &amp;quot;&amp;quot;, &amp;quot;kprq&amp;quot;: &amp;quot;2024-09-20 17:31:02&amp;quot;, &amp;quot;hjje&amp;quot;: 73.26, &amp;quot;hjse&amp;quot;: 0.74, &amp;quot;bz&amp;quot;: null, &amp;quot;xsfssjswjgdm&amp;quot;: &amp;quot;1xxxx000000&amp;quot;, &amp;quot;xsfdsjswjgdm&amp;quot;: null, &amp;quot;xsfzgswjdm&amp;quot;: null, &amp;quot;gmfssjswjgdm&amp;quot;: null, &amp;quot;gmfdsjswjgdm&amp;quot;: null, &amp;quot;gmfzgswjdm&amp;quot;: null, &amp;quot;gmfssjswjgmc&amp;quot;: null, &amp;quot;fpkjfsdm&amp;quot;: &amp;quot;1&amp;quot;, &amp;quot;kpr&amp;quot;: null, &amp;quot;jazslxdm&amp;quot;: null, &amp;quot;sfzzfpbz&amp;quot;: null, &amp;quot;tspzdm&amp;quot;: null, &amp;quot;xhqdbz&amp;quot;: null, &amp;quot;jshj&amp;quot;: 74, &amp;quot;xsfzgswskfjdm&amp;quot;: null, &amp;quot;gmfzgswskfjdm&amp;quot;: null, &amp;quot;gmfjbr&amp;quot;: null, &amp;quot;xhfdjxh&amp;quot;: null, &amp;quot;gmfdjxh&amp;quot;: null, &amp;quot;gmfzrrbz&amp;quot;: null, &amp;quot;dbbkpbz&amp;quot;: null, &amp;quot;tdyslxmc&amp;quot;: &amp;quot;&amp;quot;, &amp;quot;sfxscxsq&amp;quot;: null, &amp;quot;hzqrxxuuid&amp;quot;: null, &amp;quot;xsfssjswjgmc&amp;quot;: &amp;quot;国家税务总局浙江省税务局&amp;quot;, &amp;quot;gmfzjhm&amp;quot;: null, &amp;quot;tdysmxlist&amp;quot;: null, &amp;quot;hzsq&amp;quot;: null, &amp;quot;kjhzfpdyzzfpdm&amp;quot;: null, &amp;quot;kjhzfpdyzzfphm&amp;quot;: null } ] } }</code></pre> <h3>5 红字发票</h3> <p>红票开具是需要先开具确认单-开具确认单存在情况如下: 1、  如果能够直接开具成功-则返回开具红票信息; 2、  如果未直接开具,则需要使用确认单uuid开具红票或撤销开票; 3、 如果需要对方确认,则通过使用确认单uuid同意并开票或拒绝;</p> <h4>5.1 红字发票开具-信息提交</h4> <ul> <li>请求地址</li> </ul> <p><code>https://api.jumdata.com/tax/v3/makeout/red-invoice/submit</code></p> <ul> <li>业务参数</li> </ul> <table> <thead> <tr> <th>名称</th> <th>类型</th> <th>必须</th> <th>&lt;div style=&quot;width:420px;&quot;&gt;说明&lt;/div&gt;</th> </tr> </thead> <tbody> <tr> <td>nsrsbh</td> <td>String</td> <td>是</td> <td>纳税人识别号</td> </tr> <tr> <td>dq</td> <td>String</td> <td>是</td> <td>地区编码</td> </tr> <tr> <td>gryhm</td> <td>String</td> <td>是</td> <td>登录账号,该值可为:居民身份证/手机号/用户名</td> </tr> <tr> <td>token</td> <td>String</td> <td>是</td> <td>查询登录token接口返回的token</td> </tr> <tr> <td>lzfphm</td> <td>String</td> <td>是</td> <td>蓝字发票号码</td> </tr> <tr> <td>lzkprq</td> <td>String</td> <td>是</td> <td>蓝字开票日期,格式:yyyy-MM-dd HH:mm:dd</td> </tr> <tr> <td>chyydm</td> <td>String</td> <td>是</td> <td>红冲原因:01-开票有误; 02-销货退回; 03-服务中止; 04-销售折让</td> </tr> <tr> <td>hzmx</td> <td>String</td> <td>否</td> <td>部分冲红时,请传入冲红明细行,JsonArray格式:[{},...],为空表示全部冲红</td> </tr> </tbody> </table> <ul> <li>成功返回样例</li> </ul> <pre><code class="language-json">{ &amp;quot;code&amp;quot;: 200, &amp;quot;msg&amp;quot;: &amp;quot;开具成功&amp;quot;, &amp;quot;taskNo&amp;quot;: &amp;quot;518091345199211978770098&amp;quot;, &amp;quot;data&amp;quot;: { } }</code></pre> <ul> <li>没有可冲红金额返回样例</li> </ul> <pre><code class="language-json">{ &amp;quot;code&amp;quot;: 399, &amp;quot;msg&amp;quot;: &amp;quot;蓝票没有可红冲的金额,不可再次红冲!&amp;quot;, &amp;quot;taskNo&amp;quot;: &amp;quot;518091345199211978770098&amp;quot; }</code></pre> <h4>5.2 红字发票开具-查询结果</h4> <ul> <li>请求地址</li> </ul> <p><code>https://api.jumdata.com/tax/v3/makeout/red-invoice/result</code></p> <ul> <li>业务参数</li> </ul> <table> <thead> <tr> <th>名称</th> <th>类型</th> <th>必须</th> <th>&lt;div style=&quot;width:420px;&quot;&gt;说明&lt;/div&gt;</th> </tr> </thead> <tbody> <tr> <td>nsrsbh</td> <td>String</td> <td>是</td> <td>纳税人识别号</td> </tr> <tr> <td>dq</td> <td>String</td> <td>是</td> <td>地区编码</td> </tr> <tr> <td>gryhm</td> <td>String</td> <td>是</td> <td>登录账号,该值可为:居民身份证/手机号/用户名</td> </tr> <tr> <td>token</td> <td>String</td> <td>是</td> <td>查询登录token接口返回的token</td> </tr> <tr> <td>uuid</td> <td>String</td> <td>是</td> <td>红字确认单uuid</td> </tr> <tr> <td>xsfnsrsbh</td> <td>String</td> <td>是</td> <td>销售方纳税人识别号</td> </tr> </tbody> </table> <ul> <li>开具成功返回样例</li> </ul> <pre><code class="language-json">{ &amp;quot;code&amp;quot;: 200, &amp;quot;msg&amp;quot;: &amp;quot;开具成功&amp;quot;, &amp;quot;taskNo&amp;quot;: &amp;quot;518091345199211978770098&amp;quot;, &amp;quot;data&amp;quot;: { &amp;quot;xsfmc&amp;quot;: &amp;quot;杭州yyyy有限公司&amp;quot;, // 销售方名称 &amp;quot;xsfnsrsbh&amp;quot;: &amp;quot;913LR64M4330105MK&amp;quot;, // 销售方纳税人识别号 &amp;quot;gmfmc&amp;quot;: &amp;quot;杭州xxx有限公司&amp;quot;, // 购买方名称 &amp;quot;gmfnsrsbh&amp;quot;: &amp;quot;94330105M134XNA2KE&amp;quot;, // 购买方纳税人识别号 &amp;quot;fphm&amp;quot;: &amp;quot;25332000000460594162&amp;quot;, // 发票号码 &amp;quot;fppzdm&amp;quot;: &amp;quot;02&amp;quot;, // 发票种类:01-专票;02-普票 &amp;quot;kprq&amp;quot;: &amp;quot;2025-10-17 14:50:51&amp;quot;, // 开票日期 &amp;quot;jshj&amp;quot;: -50, // 价税合计 &amp;quot;gmfzrrbz&amp;quot;: &amp;quot;N&amp;quot;, &amp;quot;tdyslxdm&amp;quot;: &amp;quot;&amp;quot; } }</code></pre> <ul> <li>正在开具返回样例</li> </ul> <pre><code class="language-json">{ &amp;quot;code&amp;quot;: 202, &amp;quot;msg&amp;quot;: &amp;quot;任务正在进行中,请稍后再试&amp;quot;, &amp;quot;taskNo&amp;quot;: &amp;quot;518091345199211978770098&amp;quot; }</code></pre> <h4>5.3 红字发票查询</h4> <p>查询已开的红字发票</p> <ul> <li>请求地址</li> </ul> <p><code>https://api.jumdata.com/tax/v3/makeout/red-invoice/query</code></p> <ul> <li>业务参数</li> </ul> <table> <thead> <tr> <th>名称</th> <th>类型</th> <th>必须</th> <th>&lt;div style=&quot;width:420px;&quot;&gt;说明&lt;/div&gt;</th> </tr> </thead> <tbody> <tr> <td>nsrsbh</td> <td>String</td> <td>是</td> <td>纳税人识别号</td> </tr> <tr> <td>dq</td> <td>String</td> <td>是</td> <td>地区编码</td> </tr> <tr> <td>gryhm</td> <td>String</td> <td>是</td> <td>登录账号,该值可为:居民身份证/手机号/用户名</td> </tr> <tr> <td>token</td> <td>String</td> <td>是</td> <td>查询登录token接口返回的token</td> </tr> <tr> <td>kprqq</td> <td>String</td> <td>是</td> <td>开票日期起,格式:yyyy-MM-dd</td> </tr> <tr> <td>kprqz</td> <td>String</td> <td>是</td> <td>开票日期止,格式:yyyy-MM-dd</td> </tr> <tr> <td>pageNumber</td> <td>String</td> <td>否</td> <td>默认 1</td> </tr> <tr> <td>pageSize</td> <td>String</td> <td>否</td> <td>默认 10</td> </tr> </tbody> </table> <ul> <li>成功返回样例</li> </ul> <pre><code class="language-json">{ &amp;quot;code&amp;quot;: 200, &amp;quot;msg&amp;quot;: &amp;quot;成功&amp;quot;, &amp;quot;taskNo&amp;quot;: &amp;quot;518091345199211978770098&amp;quot;, &amp;quot;data&amp;quot;: { &amp;quot;total&amp;quot;: 1, &amp;quot;pagesize&amp;quot;: 10, &amp;quot;pagenumber&amp;quot;: 1, &amp;quot;list&amp;quot;: [ { &amp;quot;xsfmc&amp;quot;: &amp;quot;杭州xxx有限公司&amp;quot;, // 销售方名称 &amp;quot;xsfnsrsbh&amp;quot;: &amp;quot;9133011C64LR0MA64M&amp;quot;, // 销售方纳税人识别号 &amp;quot;gmfmc&amp;quot;: &amp;quot;杭州yyy科技有限公司&amp;quot;, // 购买方名称 &amp;quot;gmfnsrsbh&amp;quot;: &amp;quot;91E4330105MA2KXN43&amp;quot;, // 购买方纳税人识别号 &amp;quot;dfnsrmc&amp;quot;: &amp;quot;杭州yyy科技有限公司&amp;quot;, &amp;quot;dfnsrsbh&amp;quot;: &amp;quot;91330105N4MA2KE4X3&amp;quot;, &amp;quot;kjhzfpdydlzfphm&amp;quot;: &amp;quot;25332000000456135731&amp;quot;, // 冲红的蓝字发票号码 &amp;quot;kprq&amp;quot;: &amp;quot;2025-10-17 14:50:51&amp;quot;, // 开票日期 &amp;quot;fphm&amp;quot;: &amp;quot;25332000000460594162&amp;quot;, // 红字发票号码 &amp;quot;fplydm&amp;quot;: &amp;quot;2&amp;quot;, &amp;quot;fplxdm&amp;quot;: &amp;quot;82&amp;quot;, &amp;quot;hjje&amp;quot;: -47.17, &amp;quot;hjse&amp;quot;: -2.83, &amp;quot;zzfpdm&amp;quot;: &amp;quot;&amp;quot;, &amp;quot;sflzfp&amp;quot;: &amp;quot;N&amp;quot;, &amp;quot;zzfphm&amp;quot;: &amp;quot;&amp;quot; } ] } }</code></pre> <h4>5.4 红字确认单-查询</h4> <ul> <li>请求地址</li> </ul> <p><code>https://api.jumdata.com/tax/v3/makeout/red-confirmation/query</code></p> <ul> <li>业务参数</li> </ul> <table> <thead> <tr> <th>名称</th> <th>类型</th> <th>必须</th> <th>&lt;div style=&quot;width:420px;&quot;&gt;说明&lt;/div&gt;</th> </tr> </thead> <tbody> <tr> <td>nsrsbh</td> <td>String</td> <td>是</td> <td>纳税人识别号</td> </tr> <tr> <td>dq</td> <td>String</td> <td>是</td> <td>地区编码</td> </tr> <tr> <td>gryhm</td> <td>String</td> <td>是</td> <td>登录账号,该值可为:居民身份证/手机号/用户名</td> </tr> <tr> <td>token</td> <td>String</td> <td>是</td> <td>查询登录token接口返回的token</td> </tr> </tbody> </table> <ul> <li>成功返回样例</li> </ul> <pre><code class="language-json">{ &amp;quot;code&amp;quot;: 200, &amp;quot;msg&amp;quot;: &amp;quot;成功&amp;quot;, &amp;quot;taskNo&amp;quot;: &amp;quot;518091345199211978770098&amp;quot;, &amp;quot;data&amp;quot;: { &amp;quot;total&amp;quot;: 1, &amp;quot;pagesize&amp;quot;: 10, &amp;quot;pagenumber&amp;quot;: 1, &amp;quot;list&amp;quot;: [ { &amp;quot;xsfmc&amp;quot;: &amp;quot;杭州xxx有限公司&amp;quot;, // 销售方名称 &amp;quot;xsfnsrsbh&amp;quot;: &amp;quot;9133011C64LR0MA64M&amp;quot;, // 销售方纳税人识别号 &amp;quot;gmfmc&amp;quot;: &amp;quot;杭州yyy科技有限公司&amp;quot;, // 购买方名称 &amp;quot;gmfnsrsbh&amp;quot;: &amp;quot;91E4330105MA2KXN43&amp;quot; // 购买方纳税人识别号 } } }</code></pre> <h4>5.5 红字确认单-详细信息</h4> <ul> <li>请求地址</li> </ul> <p><code>https://api.jumdata.com/tax/v3/makeout/red-confirmation/detail</code></p> <ul> <li>业务参数</li> </ul> <table> <thead> <tr> <th>名称</th> <th>类型</th> <th>必须</th> <th>&lt;div style=&quot;width:420px;&quot;&gt;说明&lt;/div&gt;</th> </tr> </thead> <tbody> <tr> <td>nsrsbh</td> <td>String</td> <td>是</td> <td>纳税人识别号</td> </tr> <tr> <td>dq</td> <td>String</td> <td>是</td> <td>地区编码</td> </tr> <tr> <td>gryhm</td> <td>String</td> <td>是</td> <td>登录账号,该值可为:居民身份证/手机号/用户名</td> </tr> <tr> <td>token</td> <td>String</td> <td>是</td> <td>查询登录token接口返回的token</td> </tr> <tr> <td>uuid</td> <td>String</td> <td>是</td> <td>红字确认单uuid</td> </tr> <tr> <td>xsfnsrsbh</td> <td>String</td> <td>是</td> <td>销售方纳税人识别号</td> </tr> </tbody> </table> <ul> <li>成功返回样例</li> </ul> <pre><code class="language-json">{ &amp;quot;code&amp;quot;: 200, &amp;quot;msg&amp;quot;: &amp;quot;成功&amp;quot;, &amp;quot;taskNo&amp;quot;: &amp;quot;518091345199211978770098&amp;quot;, }</code></pre> <h4>5.6 红字确认单-确认开具</h4> <p>若红字发票开具-信息提交接口,提交后立即开具的,则无需调用本接口</p> <ul> <li>请求地址</li> </ul> <p><code>https://api.jumdata.com/tax/v3/makeout/red-confirmation/confirm</code></p> <ul> <li>业务参数</li> </ul> <table> <thead> <tr> <th>名称</th> <th>类型</th> <th>必须</th> <th>&lt;div style=&quot;width:420px;&quot;&gt;说明&lt;/div&gt;</th> </tr> </thead> <tbody> <tr> <td>nsrsbh</td> <td>String</td> <td>是</td> <td>纳税人识别号</td> </tr> <tr> <td>dq</td> <td>String</td> <td>是</td> <td>地区编码</td> </tr> <tr> <td>gryhm</td> <td>String</td> <td>是</td> <td>登录账号,该值可为:居民身份证/手机号/用户名</td> </tr> <tr> <td>token</td> <td>String</td> <td>是</td> <td>查询登录token接口返回的token</td> </tr> <tr> <td>uuid</td> <td>String</td> <td>是</td> <td>红字确认单uuid</td> </tr> <tr> <td>xsfnsrsbh</td> <td>String</td> <td>是</td> <td>销售方纳税人识别号</td> </tr> </tbody> </table> <ul> <li>成功返回样例</li> </ul> <pre><code class="language-json">{ &amp;quot;code&amp;quot;: 200, &amp;quot;msg&amp;quot;: &amp;quot;成功&amp;quot;, &amp;quot;taskNo&amp;quot;: &amp;quot;518091345199211978770098&amp;quot;, }</code></pre> <h4>5.7 红字确认单-撤销</h4> <p>若红字发票开具-信息提交接口,提交后立即开具的,则无需调用本接口</p> <ul> <li>请求地址</li> </ul> <p><code>https://api.jumdata.com/tax/v3/makeout/red-confirmation/confirm</code></p> <ul> <li>业务参数</li> </ul> <table> <thead> <tr> <th>名称</th> <th>类型</th> <th>必须</th> <th>&lt;div style=&quot;width:420px;&quot;&gt;说明&lt;/div&gt;</th> </tr> </thead> <tbody> <tr> <td>nsrsbh</td> <td>String</td> <td>是</td> <td>纳税人识别号</td> </tr> <tr> <td>dq</td> <td>String</td> <td>是</td> <td>地区编码</td> </tr> <tr> <td>gryhm</td> <td>String</td> <td>是</td> <td>登录账号,该值可为:居民身份证/手机号/用户名</td> </tr> <tr> <td>token</td> <td>String</td> <td>是</td> <td>查询登录token接口返回的token</td> </tr> <tr> <td>uuid</td> <td>String</td> <td>是</td> <td>红字确认单uuid</td> </tr> <tr> <td>xsfnsrsbh</td> <td>String</td> <td>是</td> <td>销售方纳税人识别号</td> </tr> </tbody> </table> <ul> <li>成功返回样例</li> </ul> <pre><code class="language-json">{ &amp;quot;code&amp;quot;: 200, &amp;quot;msg&amp;quot;: &amp;quot;成功&amp;quot;, &amp;quot;taskNo&amp;quot;: &amp;quot;518091345199211978770098&amp;quot;, }</code></pre> <h4>5.8 红字确认单-对方操作-同意并开具</h4> <p>若红字发票开具-信息提交接口,提交后立即开具的,则无需调用本接口</p> <ul> <li>请求地址</li> </ul> <p><code>https://api.jumdata.com/tax/v3/makeout/red-confirmation/confirm</code></p> <ul> <li>业务参数</li> </ul> <table> <thead> <tr> <th>名称</th> <th>类型</th> <th>必须</th> <th>&lt;div style=&quot;width:420px;&quot;&gt;说明&lt;/div&gt;</th> </tr> </thead> <tbody> <tr> <td>nsrsbh</td> <td>String</td> <td>是</td> <td>纳税人识别号</td> </tr> <tr> <td>dq</td> <td>String</td> <td>是</td> <td>地区编码</td> </tr> <tr> <td>gryhm</td> <td>String</td> <td>是</td> <td>登录账号,该值可为:居民身份证/手机号/用户名</td> </tr> <tr> <td>token</td> <td>String</td> <td>是</td> <td>查询登录token接口返回的token</td> </tr> <tr> <td>uuid</td> <td>String</td> <td>是</td> <td>红字确认单uuid</td> </tr> <tr> <td>xsfnsrsbh</td> <td>String</td> <td>是</td> <td>销售方纳税人识别号</td> </tr> </tbody> </table> <ul> <li>成功返回样例</li> </ul> <pre><code class="language-json">{ &amp;quot;code&amp;quot;: 200, &amp;quot;msg&amp;quot;: &amp;quot;成功&amp;quot;, &amp;quot;taskNo&amp;quot;: &amp;quot;518091345199211978770098&amp;quot;, }</code></pre> <h4>5.9 红字确认单-对方操作-拒绝</h4> <p>若红字发票开具-信息提交接口,提交后立即开具的,则无需调用本接口</p> <ul> <li>请求地址</li> </ul> <p><code>https://api.jumdata.com/tax/v3/makeout/red-confirmation/confirm</code></p> <ul> <li>业务参数</li> </ul> <table> <thead> <tr> <th>名称</th> <th>类型</th> <th>必须</th> <th>&lt;div style=&quot;width:420px;&quot;&gt;说明&lt;/div&gt;</th> </tr> </thead> <tbody> <tr> <td>nsrsbh</td> <td>String</td> <td>是</td> <td>纳税人识别号</td> </tr> <tr> <td>dq</td> <td>String</td> <td>是</td> <td>地区编码</td> </tr> <tr> <td>gryhm</td> <td>String</td> <td>是</td> <td>登录账号,该值可为:居民身份证/手机号/用户名</td> </tr> <tr> <td>token</td> <td>String</td> <td>是</td> <td>查询登录token接口返回的token</td> </tr> <tr> <td>uuid</td> <td>String</td> <td>是</td> <td>红字确认单uuid</td> </tr> <tr> <td>xsfnsrsbh</td> <td>String</td> <td>是</td> <td>销售方纳税人识别号</td> </tr> </tbody> </table> <ul> <li>成功返回样例</li> </ul> <pre><code class="language-json">{ &amp;quot;code&amp;quot;: 200, &amp;quot;msg&amp;quot;: &amp;quot;成功&amp;quot;, &amp;quot;taskNo&amp;quot;: &amp;quot;518091345199211978770098&amp;quot;, }</code></pre> <h3>6 发票交付</h3> <h4>6.1 获取税局下载页面</h4> <ul> <li>请求地址</li> </ul> <p><code>https://api.jumdata.com/tax/v3/makeout/red-confirmation/page</code></p> <ul> <li>业务参数</li> </ul> <table> <thead> <tr> <th>名称</th> <th>类型</th> <th>必须</th> <th>&lt;div style=&quot;width:420px;&quot;&gt;说明&lt;/div&gt;</th> </tr> </thead> <tbody> <tr> <td>nsrsbh</td> <td>String</td> <td>是</td> <td>纳税人识别号</td> </tr> <tr> <td>dq</td> <td>String</td> <td>是</td> <td>地区编码</td> </tr> <tr> <td>gryhm</td> <td>String</td> <td>是</td> <td>登录账号,该值可为:居民身份证/手机号/用户名</td> </tr> <tr> <td>token</td> <td>String</td> <td>是</td> <td>查询登录token接口返回的token</td> </tr> <tr> <td>fphm</td> <td>String</td> <td>是</td> <td>发票号码</td> </tr> <tr> <td>kprq</td> <td>String</td> <td>是</td> <td>开票日期</td> </tr> </tbody> </table> <ul> <li>成功返回样例</li> </ul> <pre><code class="language-json">{ &amp;quot;code&amp;quot;: 200, &amp;quot;msg&amp;quot;: &amp;quot;成功&amp;quot;, &amp;quot;taskNo&amp;quot;: &amp;quot;518091345199211978770098&amp;quot;, &amp;quot;data&amp;quot;: { &amp;quot;url&amp;quot;: &amp;quot;&amp;quot; // 税局下载页面地址 } }</code></pre>

页面列表

ITEM_HTML