首图支付网关
  1. 对外提供支付相关接口
首图支付网关
  • 对外提供支付相关接口
    • POS机扫码支付后通知接口
      POST
    • 根据工作台编码查询商户号接口
      POST
    • 根据馆藏地编码查询商户号接口
      POST
    • OpenAPI-支付统一下单接口(测试)
      POST
    • OpenAPI-查询支付订单接口(测试)
      POST
    • OpenAPI-支付统一下单接口(正式)
      POST
    • 支付统一下单接口
      POST
    • 查询支付订单接口
      POST
    • 支付记录分页列表查询接口
      POST
    • 支付通知回调
      POST
  • 对外提供退款相关接口
    • OpenAPI-退款接口(测试)
      POST
    • OpenAPI-查询退款订单接口(测试)
      POST
    • 退款接口
      POST
    • 查询退款订单接口
      POST
    • 退款记录分页查询接口
      POST
    • 退款通知回调
      POST
  • 对外提供发票相关接口
    • 读者发票抬头管理
      • 增加
      • 根据id删除
      • 修改
      • 查询读者的发票抬头
    • 开票相关接口
      • 申请开票接口
      • 查询开票状态
      • 再次发送电子发票到邮箱
  1. 对外提供支付相关接口

OpenAPI-支付统一下单接口(正式)

开发中
POST
/gateway-starter/api/gateway/240502241824770

请求参数

Header 参数
lk-appid
string 
必需
示例值:
240479585243137
lk-time
string 
必需
示例值:
2025-04-08 16:29:13
lk-nonce
string 
必需
示例值:
9f96ac1ff4fa4595862f5709abce5eff
lk-sign
string 
必需
示例值:
a37e073f77cde8428da6a9bf7750fac9
Body 参数application/json
appId
string 
应用Id
必需
业务系统的应用Id
tenantId
string 
租客Id
必需
租客Id
mchOrderNo
string 
商户订单号
必需
业务系统这一笔支付记录的唯一编号
channelCode
string 
支付渠道编码
必需
用的是工行聚合支付还是对公支付或者其他
payMode
string 
支付方式
必需
支付方式,9-微信;10-支付宝;13-云闪付。适用于移动端,若是PC端则传递0。
accessType
string 
收单接入方式
必需
收单接入方式,5-APP,7-微信公众号,8-支付宝生活号,9-微信小程序。适用于移动端,若是PC端则传递0。
deviceInfo
string 
设备号
必需
设备号,适用于移动端,若是PC端则传0
amount
string 
支付金额
必需
单位是分
subject
string 
商品名称
必需
商品名称
body
string 
商品描述
必需
商品描述
invoiceFlag
string 
是否可开票标记
可选
是否可开票标记:NO-不可开;YES-可开;FINISH-已开票,若不填则默认YES
notifyUrl
string 
异步通知地址
可选
支付结果异步回调URL,只有传了该值才会发起回调
returnUrl
string 
跳转通知地址
可选
支付结果同步跳转通知URL
openId
string 
微信用户的标识
可选
微信用户的标识,在微信小程序或公众号唤起微信支付必填
unionId
string 
支付宝用户的标识
可选
支付宝用户的标识,在支付宝小程序或生活号唤起支付宝支付时必填
channelExtra
string 
支付渠道参数
可选
特定渠道发起的额外参数,json格式字符串。(工行聚合支付没有)
当 payChannelCode=AUTO_BAR 或 payChannelCode=ALI_BAR 或 payChannelCode=WX_BAR 或 payChannelCode=YSF_BAR 时,payChannelExtra必须传auth_code,为用户的付款码值,payChannelExtra示例数据如:{"auth_code": "13920933111042"}
当 payChannelCode=ALI_JSAPI 时,payChannelExtra必须传buyerUserId,为支付宝用户ID,payChannelExtra示例数据如:{"buyerUserId": "2088702585070844"}
当 payChannelCode=WX_JSAPI 或 payChannelCode=WX_LITE 时,payChannelExtra必须传openid,payChannelExtra示例数据如:{"openid": "o6BcIwvSiRpfS8e_UyfQNrYuk2LI"}
当 payChannelCode=QR_CASHIER 或 payChannelCode=ALI_QR 或 payChannelCode=WX_NATIVE 时,payChannelExtra可以传payDataType设置返回支付数据支付类型。此时payDataType可以为:codeUrl-二维码地址,codeImgUrl-二维码图片地址,不传payDataType默认返回codeUrl类型, payChannelExtra示例数据如:{"payDataType": "codeImgUrl"}
当 payChannelCode=ALI_WAP 时,payChannelExtra可以传payDataType设置返回支付数据支付类型。此时payDataType可以为:form-返回自动跳转的支付表单,codeImgUrl-返回一个二维码图片URL,payUrl-返回支付链接,不传payDataType默认返回payUrl类型, payChannelExtra示例数据如:{"payDataType": "form"}
当 payChannelCode=ALI_PC 时,payChannelExtra可以传payDataType设置返回支付数据支付类型。此时payDataType可以为:form-返回自动跳转的支付表单,payUrl-返回支付链接,不传payDataType默认返回payUrl类型, payChannelExtra示例数据如:{"payDataType": "form"}
extJsonb
string 
扩展参数
必需
商户扩展参数,回调时会原样返回
{
"readerCardNo" : "读者证号",
"readerIDNumber":"读者身份证号或护照号或其他唯一标识这个人的编号",
"readerName": "读者姓名",
"readerPhone":"读者联系电话",
"readerEmail":"读者邮箱"
"libCode": "读者所属分馆编码",
"feeType":"费用类别",
"operator":"操作人用户名"
"mchNo":"工行线上商户号",
"mchNoBranch":"工行线上商户号分支",
"wechatAppId":"商户在微信开放平台注册的APPID",
"orderApdInf":"订单附加信息"
}
注意:费用类别必填,Aleph费用支付费用类型默认“BORROW_FEE”,自主文印费用支付默认“AUTO_PRINT_FEE”;对于需要关联读者的业务,读者证号、读者身份证号或护照号或其他唯一标识这个人的编号必填、读者姓名是必需的;读者联系电话、读者邮箱选填;操作人用户名选填;读者所属分馆编码选填;工行线上商户号选填,填了就按这个商户号去下单,不填就按系统默认配置的;工行线上商户号分支、商户在微信开放平台注册的APPID同“工行商户号”。
payDetail
array [object {12}] 
支付明细
必需
本笔支付订单的支付明细集合
businessId
string 
业务系统费用明细Id
必需
业务系统费用明细Id
feeName
string 
费用名称
必需
费用名称
feeDesc
string 
费用描述
可选
费用描述
feeType
string 
费用类型
必需
业务系统中的费用类型
creditDebit
string 
收支标记
必需
D:为读者支付图书馆的款项(Debit);C:为图书馆应支付读者的款项(Credit),一般是指给读者减免的费用
feeAmount
integer 
费用金额
必需
单位分
extJsonb
string 
扩展参数
可选
商户扩展参数,回调时会原样返回,这个示例是Aleph里的
{"title" : "书刊名称","barCode": "图书条码","callNo":"索书号","author":"作者","imprint":"出版社","isbnIssn":"isbn和issn","sequence":"费用信息的序列号,相当于主键","subLibrary":"费用所属馆代码","date":"费用日期","type":"费用类型","creditDebit":"支付方向,D代表读者付给图书馆;C代表图书馆付给读者也就是减免","sum":"总的费用金额","paymentCataloger":"收款操作员的用户名","paymentTarget":"费用支付目标馆代码","paymentReceiptNumber":"付款收据编号","description":"费用描述"}
workbench
string 
工作台
可选
服务点的编码,流通系统逾期费等相关支付请必填
locInstitution
string 
馆藏地-机构
可选
馆藏地-机构编码,流通系统逾期费等相关支付请必填
locCampus
string 
馆藏地-校园
可选
馆藏地-校园的编码,流通系统逾期费等相关支付请必填
locLibrary
string 
馆藏地-图书馆
可选
馆藏地-图书馆的编码,流通系统逾期费等相关支付请必填
location
string 
馆藏地-馆藏地
可选
馆藏地-馆藏地的编码,流通系统逾期费等相关支付请必填
示例
{
    "appId": "90060",
    "mchOrderNo": "20160427210604000490",
    "channelCode": "ICBC_AGGREGATE_PAY",
    "amount": "5000",
    "subject": "ALeph费用支付",
    "body": "ALeph费用支付",
    "notifyUrl": "https://www.xxxx.com/notify.htm",
    "returnUrl": "https://www.xxx.com/return.htm",
    "channelExtra": "{\"openid\": \"o6BcIwvSiRpfS8e_UyfQNrYuk2LI\"}",
    "extJsonb": {
        "readerCardNo": "TJLD00000273204",
        "readerIDNumber": "130603198806250014",
        "readerName": "读者姓名",
        "readerPhone": "18000000000",
        "readerEmail": "test123@163.com",
        "libCode": "读者所属分馆编码",
        "feeType": "BORROW_FEE",
        "operator": "wx11",
        "mchNo": "02010111",
        "mchNoBranch": "020101110201",
        "wechatAppId": "wxd8jky89132kl",
        "orderApdInf": "城图"
    },
    "payDetail": [
        {
            "businessId": "40",
            "feeName": "逾期费支付",
            "feeDesc": "逾期费支付",
            "feeType": "逾期费",
            "feeAmount": 3000,
            "extJsonb": {
                "title": "财务手册",
                "barCode": "1111122"
            }
        }
    ]
}

示例代码

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
请求示例请求示例
Shell
JavaScript
Java
Swift
curl --location --request POST '/gateway-starter/api/gateway/240502241824770' \
--header 'lk-appid: 240479585243137' \
--header 'lk-time: 2025-04-08 16:29:13' \
--header 'lk-nonce: 9f96ac1ff4fa4595862f5709abce5eff' \
--header 'lk-sign: a37e073f77cde8428da6a9bf7750fac9' \
--header 'Content-Type: application/json' \
--data-raw '{
    "appId": "90060",
    "mchOrderNo": "20160427210604000490",
    "channelCode": "ICBC_AGGREGATE_PAY",
    "amount": "5000",
    "subject": "ALeph费用支付",
    "body": "ALeph费用支付",
    "notifyUrl": "https://www.xxxx.com/notify.htm",
    "returnUrl": "https://www.xxx.com/return.htm",
    "channelExtra": "{\"openid\": \"o6BcIwvSiRpfS8e_UyfQNrYuk2LI\"}",
    "extJsonb": {
        "readerCardNo": "TJLD00000273204",
        "readerIDNumber": "130603198806250014",
        "readerName": "读者姓名",
        "readerPhone": "18000000000",
        "readerEmail": "test123@163.com",
        "libCode": "读者所属分馆编码",
        "feeType": "BORROW_FEE",
        "operator": "wx11",
        "mchNo": "02010111",
        "mchNoBranch": "020101110201",
        "wechatAppId": "wxd8jky89132kl",
        "orderApdInf": "城图"
    },
    "payDetail": [
        {
            "businessId": "40",
            "feeName": "逾期费支付",
            "feeDesc": "逾期费支付",
            "feeType": "逾期费",
            "feeAmount": 3000,
            "extJsonb": {
                "title": "财务手册",
                "barCode": "1111122"
            }
        }
    ]
}'

返回响应

🟢200成功
application/json
Body
code
integer 
返回码
必需
返回码
cost
integer 
响应速度
必需
响应速度
data
object 
返回数据
必需
返回下单数据,json格式数据
code
string 
返回状态
可选
COMMON_200-处理成功,其他-处理有误,详见msg
msg
string 
返回信息
可选
具体错误原因,例如:签名失败、参数格式校验错误
data
object 
返回数据
可选
返回支付数据,json格式数据
msg
string 
必需
responseTime
string 
响应时间
必需
响应时间
success
boolean 
成功与否
必需
成功与否
traceLogId
string 
日志ID
必需
日志ID
示例
{
    "code": 200,
    "cost": 1110,
    "data": {
        "msg": "SUCCESS",
        "code": "COMMON_200",
        "data": {
            "mchOrderNo": "2025040340200000004",
            "errCode": null,
            "errMsg": null,
            "channelOrderNo": "P202504081730447325821",
            "payState": "PAYMENT_IN_PROGRESS",
            "payDataType": "PAY_URL",
            "payData": "https://qr.95516.com/01020001/wcqr?f=ICBCqr&X=5&T=3&P=13&I=79fbeac9170412847958bc197d55a9e8&N=f13ddc749e8c52bda13a03dfdfe93be6&L=330e032bb00ce48ca6328017e21d69aaac580b97e76691df7c1544a0a7b09c9c7e3acf1f300dfee4cd88981b3eddf5f3&K=integrationQrCode&J=independentPCQrCode",
            "expiredTime": "1744104825245"
        }
    },
    "msg": "OK",
    "responseTime": "2025-04-08 17:30:45",
    "success": true,
    "traceLogId": "240510455320576"
}
修改于 2025-06-11 07:15:57
上一页
OpenAPI-查询支付订单接口(测试)
下一页
支付统一下单接口
Built with