商户发送请求参数给首信易支付,并接收同步返回的支付信息,用支付信息拉起对应支付方式,并在订单终态后接收异步通知结果。
https://apis.5upay.com/onlinePay/order
参数名称 | 参数中文名称 | 类型& 长度 | 参数说明 | 是否必填 |
---|---|---|---|---|
merchantId | 商户编号 | varchar(9) | 商户在首信易系统的唯一id,可在商户后台查看 | M |
orderAmount | 订单金额 | varchar(18) | 单位:分,1元=100分 | M |
orderCurrency | 订单币种 | varchar(15) | 默认CNY(人民币) | M |
requestId | 订单号 | varchar(50) | 订单号为商户自行拟定,提交的订单号必须在自身平台交易中唯一。首信易支付系统已付或撤销的订单,商户平台不能以相同的订单号再次提交。 | M |
partnerId | 服务商id | varchar(9) | 服务商在首信易系统的唯一id,可在商户后台查看 | C |
notifyUrl | 通知地址 | varchar(200) | 服务器通知:当订单状态为终态后首信易服务器会向该地址发送通知,该地址可以带参数,如:http://www.5upay.com/callback.action?test=test。 | M |
callbackUrl | 回调地址 | varchar(200) | 页面回调:支付成功后会向该地址进行跳转,callbackUrl返回的参数只有:merchantId,requestId.
callbackUrl返回格式示例: https://demo.5upay.com/sdk/callback?requestId=1446633831896&merchantId=890000593 |
M |
remark | 备注 | varchar(300) | 商户在首信易为订单进行备注,通过支付结果返回商户 | O |
paymentModeCode | 支付方式编码 | varchar(50) | 非收银台模式需要传入此项,见产品编码 | C |
authCode | 授权码 | varchar(50) | 钱包账户的授权码,如:微信/支付宝付款码 | O |
appId | appId | varchar(100) | 此参数传商户自己的appId | C |
openId | openId | varchar(100) | 此参数传用户自己的微信openId,或者支付宝的buyer_id | C |
productDetails | 商品信息 | Json(数组) | 支付商品信息,见下表 | M |
splitMark | 分账标识 | 固定值 |
DO_SPLIT 分账 NOT_DO_SPLIT 不分帐 不传默认为不分帐 |
C |
payer | 身份信息 | Json | 此json可空,但不可将此参数整个去掉,可按以下格式传入接口: “payer”:{“idType“: ”IDCARD”},详见下表 | M |
clientIp | 客户端IP | varchar(100) | 传递客户端外网IP(需商户收集用户的ip) | M |
timeout | 订单超时时间 | Int(4) | 此参数用于设置订单的超时时间(需小于等于24小时),如:输入10,该订单将在10min后过期。应根据商户自身场景设置,分钟为单位 | O |
merchantUserId | 商户会员id | varchar(30) | 快捷支付可通过传入此参数进行绑卡,每个商户下面唯一,请给每个用户分配一个id用于传入此参数,以便用户下次支付时可用之前绑定过的卡 | O |
bindCardId | 绑卡id | varchar(50) | 本参数暂未启用 | O |
reportSerialNo | 报备序列号 | varchar(50) | 报备序列号(可咨询商务经理) | C |
reportTerminalNo | 报备终端号 | varchar(8) | 使用付款码交易时,此参数必传 | C |
limitAccType | 限定账户类型 | varchar(200) | 见下表,需要传多个枚举值时用半角 逗号“,”分隔 | O |
subsidyMark | 补贴标识 | 固定值 |
DO_SUBSIDY 补贴 NOT_DO_SUBSIDY 不补贴,默认为不补贴 |
O |
subsidyAmount | 补贴金额 | decimal(18) | 单位:分,1元=100分 | O |
needOpenLink | openLink标识 | varchar(1) |
1 需要返回openLink 0 不需要返回openLink 默认不需要返回openLink |
C |
payMerchantId | 付款商户商编 | varchar(9) | 使用企业账户付款时,此参数必传 | C |
hmac | 参数签名 | varchar(500) | 商户生成的参数签名结果,获取hmac的方法请参考请求加密流程 | M |
注意:以上参数值中不能包含以下特殊字符 ' " & < > ( ) 空格
参数名称 | 参数中文名称 | 类型& 长度 | 参数说明 | 是否必填 |
---|---|---|---|---|
name | 商品名称 | varchar(500) | 商品名称,需传递真实产品名称。 | M |
quantity | 商品数量 | long | 商品数量 | M |
amount | 商品单价 | long | 单位:分,1元=100分,此项为单个商品的价格。 | M |
receiver | 收款人 | varchar(200) | 收款人名称(如果为空的话自动取注册名称) | O |
description | 商品描述 | varchar(500) | 商品描述 | O |
参数名称 | 参数中文名称 | 类型& 长度 | 参数说明 | 是否必填 |
---|---|---|---|---|
name | 付款方名称 | varchar(100) | 付款方名称 | C |
phoneNum | 手机号码 | varchar(50) | 手机号码 | C |
idType | 证件类型 | varchar(20) | IDCARD 身份证 | C |
idNum | 证件号码 | varchar(100) | 目前只接受18位身份证号码 | C |
bankCardNum | 银行卡号 | varchar(100) | 银行卡号,银联wap支付方式可以选择传递此参数 | O |
邮箱 | varchar(50) | 邮箱 | O |
limitAccType 枚举 | 枚举说明 | 使用场景 |
---|---|---|
DISABLE_CREDIT_CARD | 禁止使用信用卡 | 微包支付、网关支付 |
ALIPAY_HB_FQ_NUM_3 | 花呗分期期数,3 期 | 支付宝花呗分期支付 |
ALIPAY_HB_FQ_NUM_6 | 花呗分期期数,6 期 | 支付宝花呗分期支付 |
ALIPAY_HB_FQ_NUM_12 | 花呗分期期数,12 期 | 支付宝花呗分期支付 |
WEBOX_BALANCE_PAY | 微包余额支付 | 微包支付 |
参数名称 | 参数中文名称 | 参数说明 |
---|---|---|
merchantId | 商户编号 | 同请求参数 |
requestId | 订单号 | 同请求参数 |
partnerId | 服务商Id | 同请求参数 |
status | 请求状态 | SUCCESS 成功,请求已接收 |
FAILED 失败 | ||
ERROR 错误(此状态的返回参数见异常情况说明) | ||
REDIRECT 重定向 | ||
realBankRequestNumber | 银行订单号 | 银行订单号 |
payeeInfo | 收款人信息 | 当status为SUCCESS,此项只有在支付方式为线下银行汇款时返回见下表payeeInfo |
redirectUrl | 重定向地址 | 当status为REDIRECT时,用户重定向访问的地址 |
walletId | 钱包Id | 微包钱包id(微包扫码支付时返回此参数) |
scanCode | Base64二维码 | 当status为SUCCESS,Base64格式的二维码,需商户转换成图片,此项为扫码直连返回的参数。 |
scanCodeUrl | 二维码链接 | 当status为SUCCESS,此项为扫码直连返回的参数 |
appParams | App调用码 | 当status为SUCCESS,此项只有app支付才会返回,利用此项调用移动端sdk。 |
jsString | 微信调起支付数据签名字段 | 此json数据为微信返回,预下单成功后会返回此json,利用此项调用微信支付。 |
wechatId | 微信原始ID | 当status为REDIRECT,此项在小程序非直连支付方式情况下返回,利用此项原始APP可唤起小程序支付。注:走渠道小程序支付才会返回,下单时不用传APPID参数 |
tradeNo | 支付宝交易号 | 当status为SUCCESS,此项在支付宝小程序、生活号预下单成功以后会返回,使用此项调用支付宝支付 |
token | 微包支付调用token | 当status为SUCCESS,此项在微包支付、微包扫码付或微包服务号支付预下单成功以后会返回,使用此项调用微包支付或微包服务号支付 |
openLink | openLink | 当status为REDIRECT,此项在微信小程序非直连支付方式且needOpenLink为1时返回,浏览器端的JavaScript通过执行location.href = openlink可唤起微信小程序支付 注:走渠道小程序支付才会返回,下单时不用传APPID参数 |
payMerchantId | 付款商户商编 | 使用企业账户支付时,返回此参数 |
hmac | 参数签名 | 首信易生成的参数签名结果,验签过程请参考解密流程 |
参数名称 | 参数中文名称 | 参数说明 |
---|---|---|
accountNumber | 收款人账号 | 收款人银行账号 |
bankUnionNumber | 联行号 | 联行号 |
branchBank | 开户行 | 开户行名称 |
payee | 收款人名称 | 收款人名称 |
postscriptNumber | 汇款附言 | 汇款附言 注:专属账号汇款不返回此参数 |
remittancesAddress | 汇入地址 | 汇入地址 |
注意:当订单为分账订单时,订单支付完成后将发送一次异步通知,可能不包含订单可分账金额。订单计费成功后将发送第二次异步通知,告知可分账金额。每次通知都将依赖结果通知机制说明进行响应,请注意返回响应结果
参数名称 | 参数中文名称 | 参数说明 |
---|---|---|
merchantId | 商户编号 | 同请求参数 |
requestId | 订单号 | 同请求参数 |
partnerId | 服务商Id | 同请求参数 |
serialNumber | 交易流水号 | 交易流水号 |
totalRefundCount | 已退款次数 | 该支付订单共计退款次数 |
totalRefundAmount | 已退款金额 | 该支付订单共计退款金额 |
orderCurrency | 订单币种 | 默认人民币CNY |
orderAmount | 订单金额 | 单位:分,1元=100分 |
status | 状态 | SUCCESS成功 |
CANCEL取消 | ||
FAILED失败 | ||
completeDateTime | 完成时间 | 支付完成时间 |
clearingOrg | 清算机构 | NUCC 网联 |
UNION_PAY 银联 | ||
paymentModeAlias | 支付方式 | B2C 个人网银 |
B2B 企业网银 | ||
UNION_SCANCODE_PAY 银联扫码 | ||
EXPRESS_PAY 快捷支付 | ||
CREDIT_EXPRESS_PAY 信用卡快捷支付 | ||
DEBIT_EXPRESS_PAY 借记卡快捷支付 | ||
ALI_SCANCODE_PAY 支付宝扫码支付 | ||
ALIPAY_OFFICIAL_PAY “支付宝生活号支付 | ||
WEIXIN_SCANCODE_PAY 微信扫码支付 | ||
WEIXIN_OFFICIAL_PAY 微信-公众号支付 | ||
MINIAPPS_WEIXIN_PAY 微信-小程序支付 | ||
APPLE_PAY 苹果支付 | ||
ALIPAY_WAP_PAY 支付宝-WAP | ||
APP_ALIPAY 支付宝APP支付 | ||
ALIPAY_B2C_PAY 支付宝B2C支付 | ||
MINIAPPS_ALI_PAY “支付宝-小程序支付 | ||
SCANCODE-EQRCODE_PAY-ALI 易码付-支付宝 | ||
SCANCODE-EQRCODE_PAY-WEIXIN 易码付-微信 | ||
SCANCODE-EQRCODE_PAY-WEBOX 易码付-微包 | ||
SCANCODE-EQRCODE_PAY-UNION 易码付-云闪付 | ||
AGREEMENT_PAY 协议支付 | ||
WAP 银联wap支付 | ||
APP_UNION 云闪付收银台支付 | ||
WEBOX_APP 微包app支付 | ||
WEBOX_CSP 微包扫码支付 | ||
WEBOX_SVC 微包服务号支付 | ||
APP_WEIXIN 微信APP支付 | ||
MERCHANT_ACCOUNT_PAY 企业账户支付 | ||
realBankSerialNumber | 银行流水号 | 银行流水号 |
realBankRequestNumber | 银行订单号 | 银行订单号 |
bindCardId | 绑卡id | 用户绑卡id |
orderSplitAmount | 可分账金额 | 该笔订单的总可分账金额,固定值,单位:分,当订单的计费类型为“实时”时,可分账金额=订单金额-手续费, 当订单的计费类型非“实时”时,可分账金额=订单金额 |
canSplitAmount | 未分账金额 | 该笔订单当前的剩余可分账金额,单位:分 未分账金额=可分账金额-已分账金额-待分账资金归集退款金额 |
payMerchantId | 付款商户商编 | 使用企业账户支付时,返回此参数 |
errorMessage | 错误信息 | 错误信息 |
remark | 备注 | 在下单请求中提交的备注信息,返回给商户 |
hmac | 参数签名 | 首信易生成的参数签名结果,验签过程请参考解密流程 |