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

① 判断纳税人开票资格

收购企业开票资格校验:一次调用同时查纳税人基本信息与风险信息(信用等级/风险类型/预警级别),合并研判后直接给出 eligible 结论。建单前的第一道闸。数据类接口。

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

接口(数据类)

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

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

内置能力:基本信息与风险信息双查合并研判,一次调用出结论 内部编排:CXNSRJBXX + CXNSRFXXX

请求参数

参数必填说明
nsrsbh必填回收企业纳税人识别号/统一社会信用代码(18 位)

返回参数(data)

参数说明
eligibleboolean,是否具备开票资格=基本信息正常 且 未命中风险记录
base.nsrmc纳税人名称
base.djxh登记序号(接口②⑤要用,建议缓存)
base.nsrlx纳税人类型:1 一般纳税人/2 小规模/3 转登记小规模/4 辅导期一般人/5 自然人
base.fddbrxm法定代表人姓名
base.scjydz生产经营地址
risk.fxnsrbz风险纳税人标志:Y 风险/N 正常
risk.fxnsrlx风险类型:01 高/02 中/03 低,空=非风险
risk.nsrxydj纳税信用等级:A/B/C/D/M
risk.nsryjjb预警级别:01 红/02 黄/03 蓝,空=无预警
hint研判结论(可开票/建议人工复核)

请求示例

{ "nsrsbh": "91371100MA3XXXXX0X" }

返回示例(成功)

{ "code": "CYT_00000", "msg": "success", "requestId": "cyt_xxx", "data": {
  "eligible": true,
  "base": { "nsrsbh": "91371100MA3XXXXX0X", "nsrmc": "某再生资源回收有限公司", "djxh": "10113700000123456",
            "nsrlx": "2", "fddbrxm": "王某某", "scjydz": "山东省日照市某区某路 1 号" },
  "risk": { "fxnsrbz": "N", "fxnsrlx": "", "nsrxydj": "B", "nsryjjb": "" },
  "hint": "基本信息正常且无风险记录,可开票"
} }

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

{ "code": "CYT_00000", "msg": "success", "data": {
  "eligible": false,
  "risk": { "fxnsrbz": "Y", "fxnsrlx": "02", "nsrxydj": "D", "nsryjjb": "02" },
  "hint": "存在风险纳税人信息,建议人工复核后再开票"
} }

异常与报错

情形含义与处理
HTTP 502 · CYT_50200基本信息查询失败,data.hint 透传乐企 returnmsg;常见:税号有误、乐企凭证未配置
HTTP 200 · eligible=false命中风险纳税人:接口本身成功,按 hint 人工复核后决定是否放行开票

前端怎么用

const r = await post('/lqbiz/taxpayer/check', { nsrsbh });
if (!r.data.eligible) return alert(r.data.hint);   // 风险纳税人 → 人工复核
cache.djxh = r.data.base.djxh;                     // 登记序号存下来,②⑤要用

建议企业开通时调一次并缓存 djxh;风险状态会变,开票高峰期可每日复查。