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

⑦ 发票开具

缴款确认后开具「报废产品收购」蓝字数电发票:上传票面(发票号码=接口⑤的预开票号码)并自动轮询上传结果至终态。数据类接口。

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

接口(数据类)

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

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

内置能力:发票上传后自动轮询上传结果至终态;特定要素固定 24-报废产品收购,蓝字标志默认 0 内部编排:BFCPSGFPSC + CXQDFPSCJG(轮询)

请求参数

参数必填说明
fphm必填发票号码=接口⑤返回的 ykfphm(20 位)
fppz选填发票票种:01 专票/02 普票,默认 02,须与接口⑤ ykfplx 一致
lzfpbz选填蓝字发票标志:0 蓝字(默认)/1 红字
kprq选填开票日期 yyyy-MM-dd HH:mm:ss,默认当天;须与预开为同一月份
kpr / kprzjlx / kprzjhm必填开票人姓名/证件类型(201)/证件号码
qyDm必填区域代码(如 371100 日照)
sfxszrrsygdbfcp必填Y 销售自己使用过的报废产品/N 销售收购的报废产品(与接口⑤ sfxszy 一致)
grsdsxm必填个人所得税项目:1 财产转让所得(销售自用)/2 经营所得
(票面明细行)必填货物名称/规格型号/单位/数量/单价/金额/税率/税额等,字段与原子接口 BFCPSGFPSC 参数表完全一致

返回参数(data)

参数说明
fphm发票号码(=ykfphm)
sllsh受理流水号(未终态时凭此续查)
result.status上传结果:00 上传成功/01 处理中/02 上传失败/03 发票号码已存在
result.message详细信息(失败原因)
hint处理指引

请求示例

{
  "fphm": "24371100000012345678", "fppz": "02", "lzfpbz": "0",
  "kpr": "张会计", "kprzjlx": "201", "kprzjhm": "370611198501010011",
  "qyDm": "371100", "sfxszrrsygdbfcp": "N", "grsdsxm": "2",
  "mxList": [ { "hwmc": "废钢铁", "ggxh": "重废", "dw": "吨", "sl": 4.8, "dj": 25000,
                "je": 120000, "zzssl": 0.01, "se": 1200 } ]
}

返回示例(成功)

{ "code": "CYT_00000", "msg": "success", "requestId": "cyt_xxx", "data": {
  "fphm": "24371100000012345678",
  "sllsh": "SL20260719000123",
  "result": { "status": "00", "message": "上传成功" },
  "hint": "发票以上传结果为准;未终态可继续用 sllsh 调原子接口 CXQDFPSCJG 查询"
} }

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

{ "code": "CYT_50200", "msg": "查验源暂时不可用,请稍后再试", "data": {
  "hint": "发票上传失败:该预开发票税费未缴纳"
} }   // 先调⑥确认 skjnjg=01 再开票

异常与报错

情形含义与处理
HTTP 502 · 上传失败常见:税费未缴清(先用接口⑥确认 01)、fphm 非接口⑤取得、开票月份与预开月份不一致
HTTP 200 · result.status=01乐企侧处理中(正常):凭 sllsh 调原子接口 CXQDFPSCJG 续查至终态
HTTP 200 · result.status=03该号码已开具过发票:勿重复提交,直接查历史结果

前端怎么用

const r = await post('/lqbiz/invoice/create', { fphm: order.ykfphm, kpr, kprzjlx, kprzjhm, qyDm,
  sfxszrrsygdbfcp: 'N', grsdsxm: '2', mxList });
if (r.data.result.status === '00') markInvoiced(order, r.data.fphm);   // 开票完成
else if (r.data.result.status === '01') pollBy(r.data.sllsh);          // 处理中续查

票面左上角自动标注「报废产品收购」特定要素;开票完成后发票文件经电子税务局/电票平台下载交付。