跳到正文
开灵科技 - 北京开灵科技有限公司API百宝箱

④ 自然人开票校验

出售人(自然人)开票资格校验:查税局阻断名单标志,并返回月累计/年累计开票金额,内置 60 万(个税分档线)/180 万(预警线)/500 万(经营主体登记红线)三道年累计校验。建单前的第四道闸。数据类接口。

属「乐企联用 · 报废产品收购(9 个业务接口)」——底层编排 乐企原子接口,你只调这一个。

接口(数据类)

POST  https://openapi.kailingteck.com/api/v1/invoice/reverse/lqbiz/seller/check

鉴权:X-App-Key + X-Timestamp(Unix 秒) + X-Sign(= sha256(appKey + 时间戳 + 报文 + appSecret))。正式 AppKey/AppSecret 请联系开灵商务或您的开灵项目经理获取,联调期可先用演示密钥。

内置能力:内置 60 万/180 万/500 万三道年累计校验线 内部编排:CXZRRKPXX

请求参数

参数必填说明
zrrxm必填自然人姓名
sfzjhm必填身份证件号码
sfzjlx选填证件类型,默认 201 居民身份证

返回参数(data)

参数说明
allowedboolean,=非阻断名单 且 年累计未超 500 万
blockedFlagboolean,税局阻断反向开票自然人标志(zdfxkpzrrbz=Y)
monthTotal月累计开票总金额(一人式金额,含乐企/电票/税控三渠道)
yearTotal年累计开票金额(乐企普票+乐企专票+电票普票)
thresholds.over60w超 60 万:个税进入 0.5% 档(60 万内 0.25%,2026 年 12 号公告三流合一口径)
thresholds.over180w超 180 万:平台预警线,建议关注
thresholds.over500w超 500 万:红线,不得继续反向开票,应引导办理经营主体登记
detail乐企原始累计字段(lqfxkpppje/lqgsljje/yjgsljse 等,算税引擎同源取数)
hint分档结论文案,可直接展示

请求示例

{ "zrrxm": "李建国", "sfzjhm": "37061119790101001X" }

返回示例(成功)

{ "code": "CYT_00000", "msg": "success", "requestId": "cyt_xxx", "data": {
  "allowed": true, "blockedFlag": false,
  "monthTotal": 56000, "yearTotal": 420000,
  "thresholds": { "over60w": false, "over180w": false, "over500w": false },
  "detail": { "yljkpzje": 56000, "lqfxkpppje": 420000, "lqgsljje": 300000, "yjgsljse": 750 },
  "hint": "校验通过"
} }

返回示例(失败/业务拦截)

{ "code": "CYT_00000", "msg": "success", "data": {
  "allowed": false, "blockedFlag": false,
  "monthTotal": 260000, "yearTotal": 5230000,
  "thresholds": { "over60w": true, "over180w": true, "over500w": true },
  "hint": "年累计开票总额已超 500 万红线,应引导办理经营主体登记"
} }

异常与报错

情形含义与处理
HTTP 200 · allowed=falseblockedFlag=true 为税局阻断名单,不可开;over500w=true 引导办理经营主体登记转正向开票
HTTP 502 · CYT_50200查询失败;常见:姓名与证件号不一致

前端怎么用

const r = await post('/lqbiz/seller/check', { zrrxm, sfzjhm });
if (!r.data.allowed) return alert(r.data.hint);          // 阻断/超500万 → 拦截建单
if (r.data.thresholds.over60w) toast('该出售人年累计已超 60 万,本单个税按 0.5% 档');