跳到正文
开灵科技 - 北京开灵科技有限公司API百宝箱
开灵 × 银联 · 反向开票

银联商务 · 农产品反向开票接口

银联商务「农产品收购反向开票服务平台」全部接口已 1:1 封装为网关原子接口:统一 OPEN-BODY-SIG 签名、多租户、沙箱/生产环境切换。请求体原样透传、响应结构原样返回;未配银联凭证时自动走 mock。下方每个接口均列出请求参数 / 响应参数。

26 个接口 + 2 回调OPEN-BODY-SIG / HmacSHA256生产 jx-recycle.chinaums.com/tcc沙箱 jx-testrecycle.chinaums.com/tcc

调用时序图 · 业务闭环

从企业入驻、乐企授权,到现场收购、支付即开票、取票的完整调用时序。实线=接入方主动调用银联接口,虚线=银联异步回调本端。

业务方 企业 / 农户
开灵网关 接入方
银联商务
电局 · 乐企
一、准入与授权(一次性)
shbdsq商户绑定申请 → shbdbh▶
shxxDj商户信息登记(资质图片)▶
发起电局授权邀约 + 乐企能力授权▶
getShlqsqzt轮询授权状态(接入=4 / 白名单=1 / 能力=1)▶
getSqm取平台授权二维码▶
法人 / 财务负责人 电局 APP 扫码授权▶
bdKpy开票员绑定 → kpybdbh▶
二、现场收购交易(每单)
农户提交实名 + 收款卡▶
zrrSmdj自然人实名登记(四要素校验)▶
收购企业建收购单(商品明细)▶
createOrder创建待支付开票订单 → ddbh,ddzt=11 待农户确认▶
农户扫码确认订单(11 → 21)▶
payAndKpSubmit确认支付开票(02)· 支付即开票▶
备付金付农户 + 调税局开反向发票▶
◀callback/pay异步支付通知 → 回 SUCCESS
◀callback/invoice异步开票通知 → 回 SUCCESS
queryOrderInvoice取票 PDF / OFD / XML▶
三、售后与资金
orderRed作废红冲(线下退款后开红字票)▶
queryYe / withDrawals备付金余额查询 / 提现到对公▶

业务型接口

推荐

把 26 个原子接口编排成面向业务的动作,屏蔽准入五前置、待确认、异步回调等复杂度。业务流程与工商银行业务型对齐(动作 / 动词一致),换银行基本只换路径前缀;字段为银联原生。对外前缀 /api/v1/invoice/reverse/upbiz/。

⚠️ 唯一结构差异:银联有「待自然人确认」,故「转账并开票」拆两步 —— invoice/create 建单(待农户确认)→ 农户扫码确认 → invoice/pay 确认支付开票。
业务动作对外路径 · upbiz/编排的原子接口说明
企业开通enterprise/openshbdsq + shxxDj + getSqm绑定 + 登记 + 授权码,一步拿 shbdbh
查企业开通状态enterprise/statusqueryShbdzt + getShlqsqzt + queryKpy五前置聚合 → canInvoice 布尔
散户入驻seller/onboardzrrSmdj + bindZrrYhk四要素实名 + 农产品三证 + 绑卡
查散户状态seller/statuscxPlzrrSmdj批量实名结果
① 收购建单invoice/createcreateOrder(zfkpqrfs=02)返 ddbh,待农户确认
② 确认支付开票invoice/paypayAndKpSubmit农户确认后 · 支付即开票
查开票结果invoice/statusorderStatus + queryOrderInvoice业务态 + 发票(withInvoice)
下载发票invoice/downloadqueryOrderInvoicePDF / OFD / XML
红冲invoice/redorderRed已开票后开红字票
作废invoice/voidorderCancel确认支付前取消订单
散户改卡seller/update-cardbindZrrYhk绑新收款卡
散户注销seller/close—银联暂无接口,待补

调用约定

对外地址
POST openapi.kailingteck.com/api/v1/invoice/reverse/up/<slug>
客户端鉴权
X-App-Key / X-Timestamp / X-Sign = sha256(appKey+ts+body+appSecret)
产品权限
仅「反向开票」产品的密钥可调用
环境切换
按客户 environment 自动选沙箱 / 生产(与腾讯乐企同一套开关)
未配凭证
自动返回 mock 示例数据,便于前端联调

签名 · OPEN-BODY-SIG

与腾讯 / 极简数科不同:银联签名 只签报文体、不含 URL 路径。网关已内置,租户无需自行处理。

Authorization: OPEN-BODY-SIG AppId="<appId>", Timestamp="<yyyyMMddHHmmss>", Nonce="<随机数>", Signature="<签名>"

bodyHash  = SHA256_hex_lower(body)
signStr   = appId + timestamp + nonce + bodyHash
Signature = Base64( HmacSHA256(signStr, appKey) )

接口明细 · 26 个(含入参 / 出参)

管理 · 15

1

商户绑定申请

对外 POST /…/up/shbdsq银联 /wxtjr/api/shbdsq

拿到「商户绑定编号 shbdbh」,后续所有交易必带。返回 02/03 需继续调「商户信息登记」。

请求参数
名称类型必填描述
shshstring是商户税号 / 统一社会信用代码
shmcstring是企业名称
lxrmcstring是联系人姓名
lxrsjhstring是联系人手机号
lxrsfzjhmstring是联系人身份证号
ywlxstring是业务类型(见附录 4.3)
响应参数 (统一含 code=0 成功 / msg,下为 data)
名称描述
shbdbh商户绑定编号(后续交易必带)
sqjg申请结果:00 失败 / 01 已入网 / 02 未入网需登记 / 03 未开通此类型 / 04 已绑定
shddjxx待登记信息数组(sqjg=02/03 时返回)
2

商户信息登记

对外 POST /…/up/shxxDj银联 /wxtjr/api/shxxDj

补交 / 上传企业资质证明(图片 base64)。

请求参数
名称类型必填描述
shbdbhstring是商户绑定编号
shdzstring否商户地址
shdhstring否商户电话
frxmstring否法人姓名
frsfzhmstring否法人身份证号
dgyhzhstring否对公银行账号
dgyhhhstring否对公银行行号
jrzxstring否接入中心(1000 全国总中心,见附录 4.2)
yyzzbase64否营业执照
frsfzzm/frsfzfmbase64否法人身份证正 / 反面
khxkzbase64否开户许可证
qymtzbase64否企业门头照
kzdjxxobject否扩展登记(再生资源备案证 / 报废机动车资质 / 危废经营许可证)
响应参数 (统一含 code=0 成功 / msg,下为 data)
仅返回 code / msg,无 data。
3

商户绑定状态查询

对外 POST /…/up/queryShbdzt银联 /wxtjr/api/queryShbdzt
请求参数
名称类型必填描述
shbdbhstring是商户绑定编号
ywlxstring是业务类型
响应参数 (统一含 code=0 成功 / msg,下为 data)
名称描述
shbdbh商户绑定编号
bdzt绑定状态:00 成功 / 01 未入网 / 02 待补交 / 03 待审核 / 04 审核未过 / 05 已解绑
4

商户解绑申请

对外 POST /…/up/shjbSq银联 /wxtjr/api/shjbSq
请求参数
名称类型必填描述
shbdbhstring是商户绑定编号
ywlxstring否不指定则解绑该商户所有业务类型
响应参数 (统一含 code=0 成功 / msg,下为 data)
仅返回 code / msg,无 data。
5

商户乐企授权状态查询

对外 POST /…/up/getShlqsqzt银联 /wxtjr/api/getShlqsqzt

开票前置:接入状态=4、白名单=1、能力授权=1 才能开票;未授权需调「授权二维码」。

请求参数
名称类型必填描述
shbdbhstring是商户绑定编号
响应参数 (统一含 code=0 成功 / msg,下为 data)
名称描述
ztbm接入状态(4 确认通过,见附录 4.1)
lqdwid乐企 ID
ssjswjgDm/mc省市级税务机关代码 / 名称
zgswjgDm/mc主管税务机关代码 / 名称
dwgxDm与直连单位关系
nlsqqk[]能力授权:nlbm 能力编码 / nlmc / yxqq 起 / yxqz 止
sydwlqbmdktzt单位乐企白名单开通状态(1 启用)
sydwsqrzxx授权认证信息:sqrzbz(Y 已认证) / sqm 授权码 / sqrzyxqz
6

商户平台授权(授权二维码)

对外 POST /…/up/getSqm银联 /wxtjr/api/getSqm

返回二维码内容,接入方自行生成图片;有效期 10 分钟,电子税务局 APP 扫码;法人 / 财务负责人各扫各的。

请求参数
名称类型必填描述
shbdbhstring是商户绑定编号
sqrlxstring是授权人类型:01 法人 / 02 财务负责人
xmstring是姓名
jmsfzhmstring是居民身份证号
响应参数 (统一含 code=0 成功 / msg,下为 data)
名称描述
ewm授权二维码内容
7

开票员查询

对外 POST /…/up/queryKpy银联 /wxtjr/api/queryKpy

查电局乐企已授权、已确认的开票员;支持绑定多个。

请求参数
名称类型必填描述
shbdbhstring是商户绑定编号
kpyxmstring是开票员姓名
kpysfzjhmstring是开票员身份证号
响应参数 (统一含 code=0 成功 / msg,下为 data)
名称描述
kpyxx[]开票员信息:kpyid / kpyxm(脱敏) / kpysfzjhm(脱敏) / djzt 乐企状态(1 已确认可绑定) / bdbz 绑定标志 / kpybdbh
8

开票员绑定申请

对外 POST /…/up/bdKpy银联 /wxtjr/api/bdKpy

只有绑定过的开票员才能开票;两种入参方式任选其一。

请求参数
名称类型必填描述
shbdbhstring是商户绑定编号
kpyxm + jmsfzjhmstring否方式一:传开票员姓名 + 完整身份证号
kpyidstring否方式二:传「开票员查询」返回的开票员 ID
响应参数 (统一含 code=0 成功 / msg,下为 data)
名称描述
kpybdbh开票员绑定编号(建单必带)
9

开票员解绑申请

对外 POST /…/up/jbKpy银联 /wxtjr/api/jbKpy
请求参数
名称类型必填描述
shbdbhstring是商户绑定编号
kpybdbhstring是开票员绑定编号
响应参数 (统一含 code=0 成功 / msg,下为 data)
仅返回 code / msg,无 data。
10

商户账户余额查询

对外 POST /…/up/queryYe银联 /api/gl/shgl/v1/queryYe
请求参数
名称类型必填描述
shbdbhstring是商户绑定编号
响应参数 (统一含 code=0 成功 / msg,下为 data)
名称描述
zhye备付金账户余额(number 18,2)
11

商户账户提现

对外 POST /…/up/withDrawals银联 /api/gl/shgl/v1/withDrawals

从备付金账户提现到商户对公账户。

请求参数
名称类型必填描述
shbdbhstring是商户绑定编号
txjenumber是提现金额(18,2)
响应参数 (统一含 code=0 成功 / msg,下为 data)
仅返回 code / msg,无 data。
12

自然人实名登记

对外 POST /…/up/zrrSmdj银联 /api/zrr/v1/zrrSmdj

带银行卡则四要素实名校验(同步);手机号为银行预留手机号。

请求参数
名称类型必填描述
shbdbhstring是商户绑定编号
zrrxmstring是自然人姓名
zrrsfzjhmstring是身份证号
zrrskyhylsjhstring否收款卡预留手机号
zrrskyhzhstring否收款银行账号
khhszsfstring否开户银行所在省份(附录 4.4)
hkbhzybase64否户口本主页(农产品必传)
hkbbrybase64否户口本本人页(农产品必传)
cwhscjyzmbase64否村委会生产经营种植养殖证明·盖章(农产品必传)
响应参数 (统一含 code=0 成功 / msg,下为 data)
仅返回 code / msg,无 data。
13

自然人实名登记 · 批量

对外 POST /…/up/plzrrSmdj银联 /api/zrr/v1/plzrrSmdj

异步校验;查结果调「查询批量实名结果」。一次最多 1000 条。

请求参数
名称类型必填描述
shbdbhstring是商户绑定编号
pchstring是批次号(appid 下唯一)
zrrxx[]array是自然人信息:zrrxm / zrrsfzjhm / zrrskyhylsjh / zrrskyhzh / khhszsf
响应参数 (统一含 code=0 成功 / msg,下为 data)
名称描述
sllsh受理流水号
14

查询自然人批量实名结果

对外 POST /…/up/cxPlzrrSmdj银联 /api/zrr/v1/cxPlzrrSmdj
请求参数
名称类型必填描述
pchstring是批次号
sllshstring否受理流水号
响应参数 (统一含 code=0 成功 / msg,下为 data)
名称描述
cljd处理进度:0 完成 / 1 处理中
mxsl / cgsl / sbsl明细 / 成功 / 失败数量
jgmx[]结果明细:zrrxm / zrrsfzjhm / jgbs(0 成功) / sbyy 失败原因
15

自然人银行卡绑定

对外 POST /…/up/bindZrrYhk银联 /api/gl/v1/bindZrrYhk

一人可绑多张卡;添加时实时四要素实名校验。

请求参数
名称类型必填描述
shbdbhstring是商户绑定编号
zrrxmstring是自然人姓名
zrrsfzjhmstring是身份证号
zrrskyhzhstring是收款银行账号
zrrskyhkylsjhstring是收款卡预留手机号
khhszsfstring否开户省份
响应参数 (统一含 code=0 成功 / msg,下为 data)
仅返回 code / msg,无 data。

交易服务 · 9

16

创建待支付开票订单

对外 POST /…/up/createOrder银联 /api/fxkp/createOrder

交易核心。收款自然人未登记会做登记 + 四要素校验。ywddmx = 商品明细。

请求参数
名称类型必填描述
shbdbhstring是商户绑定编号
kpybdbhstring是开票员绑定编号
ywlxstring是业务类型
fppzDmstring是发票票种:01 增值税专票 / 02 普票
ywlshstring是业务流水号(32)
zfkpqrfsstring否支付开票确认方式:01 自动支付并开票(默认) / 02 需确认后支付
zrrxmstring是自然人姓名
zrrsfzjhmstring是身份证号
zrrsjhmstring是手机号
zrryhzhstring是收款银行账号
khhszsfstring否开户省份
zrrjzdzstring是自然人居住地址(行政区划 + 街道乡镇 + 详细地址)
jazslxDmstring否减按征税类型(再生资源:54 / 55 / 空)
sfcdfstring否税费承担方:01 自然人承担(默认) / 02 企业承担
grsdsxmstring否个税项目:01 经营所得 / 02 劳务报酬 / 03 稿酬 / 04 特许权 / 05 财产转让 / 06 其他
fpbzstring否发票备注
kptzhddz / zftzhddzstring否开票 / 支付通知回调地址(须域名)
ywddmx[]array是业务订单明细,子字段见下
— xmmcstring是项目名称
— sphfwssflhbbmstring是商品税收分类合并编码
— ggxh / dw / sl / djstring否规格 / 单位 / 数量 / 单价
— slvnumber是增值税率 / 征收率
— jenumber是金额(承担方 01=含税 / 02=不含税)
响应参数 (统一含 code=0 成功 / msg,下为 data)
名称描述
ddbh反向开票平台订单号
ywlsh业务流水号
ddcjrq订单创建日期
ddzt订单状态:11 待自然人确认 / 21 待付款 / 31 开票中 / 41 已完成蓝票 / 51 红票 / 61 已取消 / 81 免税 …
skxx[]税款信息(资源回收返回,农产品无)
17

批量创建待支付开票订单

对外 POST /…/up/batchCreateOrder银联 /api/fxkp/batchCreateOrder

≤1000 条;只做基本格式校验,批次结果走查询或异步通知。

请求参数
名称类型必填描述
pchstring是批次号(appid 下唯一)
plcjddjgtzhddzstring否批量结果通知回调
ywlxstring是业务类型
ddmx[]array是订单明细,每条同 createOrder 字段 + ywddmx
响应参数 (统一含 code=0 成功 / msg,下为 data)
名称描述
sllsh受理流水号
18

确认支付开票

对外 POST /…/up/payAndKpSubmit银联 /api/fxkp/payAndKpSubmit

「支付即开票」触发点;异步开票,结果走回调 / 状态查询。

请求参数
名称类型必填描述
ddbhstring是平台订单号
shbdbhstring是商户绑定编号
zfkpqrfsstring是固定传 02(确认支付)
响应参数 (统一含 code=0 成功 / msg,下为 data)
仅返回 code / msg,无 data。
19

订单状态查询

对外 POST /…/up/orderStatus银联 /api/fxkp/v2/orderStatus

平台未通知前可主动查询。ddbh / ywlsh 至少传其一。

请求参数
名称类型必填描述
ddbhstring否平台订单号(与 ywlsh 至少一个)
ywlshstring否业务流水号
ywlxstring否传业务流水查询时必传
shbdbhstring是商户绑定编号
响应参数 (统一含 code=0 成功 / msg,下为 data)
名称描述
ddbh / jylsh平台订单号 / 交易流水号
ddzt订单状态(编码同 createOrder)
sbyy失败原因
zrrInfo自然人信息(hkbhzy / hkbbry / cwhscjyzm)
skxx[]税款信息(资源回收)
20

取消订单

对外 POST /…/up/orderCancel银联 /api/fxkp/orderCancel

需确认支付的订单在确认前才可取消。

请求参数
名称类型必填描述
ddbhstring是平台订单号
shbdbhstring是商户绑定编号
响应参数 (统一含 code=0 成功 / msg,下为 data)
仅返回 code / msg,无 data。
21

获取发票

对外 POST /…/up/queryOrderInvoice银联 /api/fxkp/queryOrderInvoice
请求参数
名称类型必填描述
ddbhstring是平台订单号
shbdbhstring是商户绑定编号
响应参数 (统一含 code=0 成功 / msg,下为 data)
名称描述
xzdzPdf / xzdzOfd / xzdzXml发票 PDF / OFD / XML 下载地址
fphm发票号码
fppzDm票种
kprq开票日期
hjje / hjse / jshj合计金额 / 合计税额 / 价税合计
fpzt发票状态
sbyy开票失败原因
22

作废红冲

对外 POST /…/up/orderRed银联 /api/fxkp/orderRed

作废需企业与自然人线下完成货款退回,线上发起作废红冲、开红字发票。

请求参数
名称类型必填描述
ddbhstring是平台订单号
shbdbhstring是商户绑定编号
kptzhddzstring是开票通知回调地址
zdtsbzstring否自动退税标识:Y 自动退税(默认) / N 需调退税接口
响应参数 (统一含 code=0 成功 / msg,下为 data)
仅返回 code / msg,无 data。
23

重新提交支付(未开放)

对外 POST /…/up/zfRecommit银联 /api/fxkp/zfRecommit

支付失败重新提交支付请求。

请求参数
名称类型必填描述
shbdbhstring是商户绑定编号
fkidstring是付款 id
ywlxDmstring是业务类型代码
响应参数 (统一含 code=0 成功 / msg,下为 data)
仅返回 code / msg,无 data。
24

重新提交开票(未开放)

对外 POST /…/up/kpRecommit银联 /api/fxkp/kpRecommit

订单开票失败重新提交开票。

请求参数
名称类型必填描述
———文档未展开参数(未开放)
响应参数 (统一含 code=0 成功 / msg,下为 data)
仅返回 code / msg,无 data。

辅助服务 · 2

25

行政区划及街道乡镇码表(暂不提供)

对外 POST /…/up/queryXzqhAndJdxz银联 /api/v1/queryXzqhAndJdxz

查全国行政区划 / 街道乡镇代码,保存到本地,用于自然人居住地址。

请求参数
名称类型必填描述
cxlxstring是查询类型:0 行政区划 / 1 街道乡镇
xzqhjcstring否行政区划级次:1 省 / 2 市 / 3 区县(cxlx=0 时必传)
sjxzqhszDmstring否上级行政区划数字代码
qxxzqhszDmstring否区县代码(cxlx=1 必传)
ymnumber是页码
myslnumber是每页数量
响应参数 (统一含 code=0 成功 / msg,下为 data)
名称描述
cxsjzl查询数据总量
xzqhcxjgjh[]行政区划:xzqhszDm / xzqhmc / xzqhjc / sjxzqhszDm
jdxzcxjgjh[]街道乡镇:jdxzDm / jdxzmc / xzqhszDm
26

税收分类编码码表(路径待银联确认)

对外 POST /…/up/querySsflbm银联 /api/fxkp/querySsflbm

税收分类编码列表,非频繁变化,获取一次即可、可增量下载。文档未给接口路径,占位待银联确认。

请求参数
名称类型必填描述
shbdbhstring是商户绑定编号
响应参数 (统一含 code=0 成功 / msg,下为 data)
名称描述
sjc时间戳(增量下载用)
count总量
ssbmList[]编码列表:fjbm 父级 / sphfwssflhbbm 合并编码 / tdyslxdm 特定要素(11 农产品…) / cezs 差额征税 / bzs 不征税 / jzjtdm 即征即退 / sphfwmc 名称 / zzssl 增值税率 / zsl 征收率 …

回调端点(被调)

异步支付通知
POST /api/v1/invoice/reverse/up/callback/pay
异步开票通知
POST /api/v1/invoice/reverse/up/callback/invoice

form 表单;收到须回 SUCCESS;银联按 1/5/5/30/60/300/1800/1800/3600s 重试。请求头带 OPEN-BODY-SIG 签名,请求体含 ddbh / 发票信息等。

依据《农产品收购反向开票服务平台接口 接入指引 V2.018》整理 · 字段名以银联最新文档为准 · 部分「未开放」接口 / 税收分类码表路径待银联确认