目录
3.12.1 自定义账单请求(310031)
C:字符串
C (x,y):最小长度 x、最大长度 y 的字符串
N (x):固定 x 位整数
N (x,y):最小长度 x、最大长度 y 的整数
限制类型:M - 必填,C - 选填
(2)请求报文模块说明:
- INFO模块:包含交易基本信息,如交易代码、版本、数据格式等,为必填模块,用于标识和配置交易的基础参数。
- FASTTRX模块:包含商户信息、申请时间、业务代码、账户相关信息等,为必填模块,用于提供交易的核心业务数据和账户信息。
- LEDGERS/LEDGERDTL模块:包含分账相关信息,如记录序号、分账商户号、分账类型等,为选填模块,仅在需要分账时使用。
(3)响应报文模块说明:
- INFO模块:包含交易代码、版本、数据格式、交易批次号、返回代码、错误信息、签名信息等,用于返回交易的基础响应信息和处理结果状态。
- TRANSRET模块:包含返回码和错误文本,为选填模块,进一步补充说明交易处理的详细结果。
3.12.1.1接口功能
- 支持商户上送多个交易扣款金额,具体数量依据后台配置的最大轮扣次数确定,最多可上送 N+1 个(N 为后台配置的最大轮扣次数)。
- 针对失败的交易,系统会按照金额大小发起再扣款交易,最终结果只会是一笔扣款交易成功或者全部交易都失败。
- 商户开通该功能时需配置最大轮扣次数(最大 5 次,加上主交易,最多可进行 6 次扣款),且档次间隔最小金额和轮扣最小金额均需≥100 元。
- 系统会预检查商户上送的金额是否满足轮扣规则配置要求,若不满足,全部交易(包括主交易)都不会发送至渠道,并返回相应的失败原因。
- 当商户仅上送主交易金额时,无需进行轮扣规则校验。
- 接口返回的 0000 代码仅表示交易已受理,不代表最终交易结果,商户需通过通知或结果查询获取最终结果
3.12.1.2请求报文
|
接口 |
字段ID |
字段名称 |
类型 |
取值 |
限制 |
备注 |
|
INFO |
TRX_CODE |
交易代码 |
C(1, 20) |
310031 |
M |
|
|
VERSION |
版本 |
C(2) |
04 |
M |
||
|
DATA_TYPE |
数据格式 |
N(1) |
2:xml格式 |
M |
||
|
LEVEL |
处理级别 |
N(1) |
0-9 0优先级最低,默认为5 |
M |
||
|
MERCHANT_ID |
商户代码 |
C(15) |
商户ID |
M |
||
|
USER_NAME |
用户名 |
C(1,20) |
M |
|||
|
USER_PASS |
用户密码 |
M |
||||
|
REQ_SN |
交易批次号 |
C(40) |
M |
不重复流水 |
||
|
SIGNED_MSG |
签名信息 |
C |
M |
|||
|
FASTTRX |
MERCHANT_ID |
商户代码 |
C(15) |
商户号ID |
M |
|
|
SUBMIT_TIME |
申请时间 |
C (14) |
YYYYMMDDHHMMSS |
M |
||
|
BUSINESS_CODE |
业务代码 |
C(6) |
见附录A2业务代码 |
M |
||
|
AGRMNO |
协议号 |
C(22) |
签约时返回的协议号 |
C |
卡号和协议号其中一个必填,优先通过卡号匹配协议号 |
|
|
ACCOUNT_TYPE |
账号类型 |
C(2) |
00银行卡,02信用卡。不填默认为银行卡00。06:银联token账号 |
C |
||
|
BANK_CODE |
银行代码 |
C(8) |
银行代码,存折必须填写。参见附录A.3银行代码 |
C |
存折必填,银行卡视情况填写,详情见2.9.4银行代码说明针对账户类型传06的,必须上送银行代码 |
|
|
ACCOUNT_NO |
账号 |
N(1,32) |
借记卡或信用卡 |
C |
||
|
ACCOUNT_NAME |
账号名 |
C(1,60) |
银行卡或存折上的所有人姓名 |
M |
||
|
AMOUNT |
轮扣金额 |
C(12) |
轮扣金额用|分隔,第一个金额为账单金额,后续金额依次减少。单位分 |
M |
||
|
CURRENCY |
货币类型 |
C(3) |
人民币:CNY, 港元:HKD,美元:USD。不填时,默认为人民币。 |
C |
||
|
ID_TYPE |
开户证件类型 |
C(1) |
参考A.1证件类型 |
C |
||
|
ID |
证件号 |
C(1,22) |
C |
|||
|
TEL |
手机号/小灵通 |
C(1,13) |
C |
|||
|
CVV2 |
CVV2 |
C(3) |
信用卡时必填 |
C |
||
|
VALIDDATE |
有效期 |
C(4) |
信用卡时必填,格式MMYY(信用卡上的两位月两位年) |
C |
无需填写 |
|
|
CUST_USERID |
自定义用户号 |
C(1,128) |
商户自定义的用户号,开发人员可当作备注字段使用 |
C |
||
|
REMARK |
备注 |
C(1,50) |
供商户填入备注信息。 |
C |
||
|
SUMMARY |
交易附言 |
C(1,140) |
填入网银的交易备注,可以在网银明细中查询到该字段信息,但部分银行可能不支持 |
C |
||
|
NOTIFYURL |
通知地址 |
C(200) |
交易无论成功还是失败都会通知到上送的地址,通知格式参考3.8.3快捷单笔交易结果通知 |
C |
||
|
LEDGERS/ LEDGERDTL |
SN |
记录序号 |
C(1,4) |
不能重复 |
C |
|
|
MERCHANT_ID |
分账商户号 |
C(10,20) |
C |
|||
|
TYPE |
分账类型 |
C (1) |
1按比例分账 |
C |
3.12.1.2响应报文
自定义账单请求返回的0000表示已受理,不代表最终结果。最终结果请根据通知或者结果查询获取。
|
接口 |
字段ID |
字段名称 |
类型 |
取值 |
限制 |
备注 |
|
INFO |
TRX_CODE |
交易代码 |
C(1, 20) |
310031 |
M |
|
|
VERSION |
版本 |
C(2) |
03 |
M |
||
|
DATA_TYPE |
数据格式 |
N(1) |
2:xml格式 |
M |
||
|
REQ_SN |
交易批次号 |
C(40) |
M |
|||
|
RET_CODE |
C(4) |
参考附录B6 |
M |
|||
|
ERR_MSG |
错误信息 |
C(1,256) |
C |
|||
|
SIGNED_MSG |
签名信息 |
C |
M |
|||
|
TRANSRET |
RET_CODE |
返回码 |
C(4) |
参考附录B6 |
C |
|
|
ERR_MSG |
错误文本 |
C(1,256) |
C |
3.12.2 自定义账单退款(310033)
3.12.2.1接口功能
C:字符串
C (x,y):最小长度 x、最大长度 y 的字符串
N (x):固定 x 位整数
N (x,y):最小长度 x、最大长度 y 的整数
限制类型:M - 必填,C - 选填
(2)请求报文模块说明:
- INFO模块:包含交易代码、版本、数据格式、处理级别、商户代码、用户名、用户密码、交易批次号、签名信息等,为必填模块,用于标识交易、提供商户身份验证信息和配置交易基础参数。
- REFUND模块:包含商户代码、原批次号、退款金额、申请时间、业务代码、通知地址等,为必填模块,用于提供退款相关的核心业务数据,其中通知地址为选填项。
(3)响应报文模块说明:
- INFO模块:包含交易代码、版本、数据格式、交易批次号、返回代码、错误信息、签名信息等,用于返回退款交易的基础响应信息和处理结果状态。
- TRANSRET模块:包含返回码、错误文本、清算日期、银行流水号等,仅当头部返回码为0000时存在该模块,其中银行流水号仅在VERSION为06时返回,用于补充说明退款交易的详细结果。
接口功能
用于处理自定义账单的退款操作,退款金额必须为原交易的实扣金额。
商户发起退款请求时,需提供原自定义账单交易中的 REQ_SN 值作为原批次号,以关联原交易。
退款金额以分为单位,需填写整数
仅当响应报文头部的返回码为 0000 时,才会存在 TRANSRET 对象,提供更详细的退款处理结果
商户可通过指定通知地址,获取退款交易的结果通知(通知地址为选填)
3.12.2.1请求报文
|
接口 |
字段ID |
字段名称 |
类型 |
取值 |
限制 |
备注 |
|
INFO |
TRX_CODE |
交易代码 |
C(1, 20) |
310033 |
M |
|
|
VERSION |
版本 |
C(2) |
04 |
M |
||
|
DATA_TYPE |
数据格式 |
N(1) |
2:xml格式 |
M |
||
|
LEVEL |
处理级别 |
N(1) |
0-9 0优先级最低,默认为5 |
M |
||
|
MERCHANT_ID |
商户代码 |
C(15) |
商户ID |
M |
||
|
USER_NAME |
用户名 |
C(1,20) |
M |
|||
|
USER_PASS |
用户密码 |
M |
||||
|
REQ_SN |
交易批次号 |
C(40) |
M |
不重复流水 |
||
|
SIGNED_MSG |
签名信息 |
C |
M |
|||
|
REFUND |
MERCHANT_ID |
商户代码 |
C(15) |
M |
||
|
ORGBATCHID |
原批次 |
C(0,60) |
自定义账单交易中的REQ_SN的值 |
M |
||
|
AMOUNT |
退款金额 |
N(1,12) |
整数,单位分 |
M |
||
|
SUBMIT_TIME |
申请时间 |
C (14) |
YYYYMMDDHHMMSS |
M |
||
|
BUSINESS_CODE |
业务代码 |
C(6) |
见附录A2业务代码 |
M |
||
|
NOTIFYURL |
通知地址 |
C(200) |
C |
3.12.2.2响应报文
只有当头部返回码为0000时,才有TRANSRET对象。
|
接口 |
字段ID |
字段名称 |
类型 |
取值 |
限制 |
备注 |
|
INFO |
TRX_CODE |
交易代码 |
C(1, 20) |
310033 |
M |
|
|
VERSION |
版本 |
C(2) |
03 |
M |
||
|
DATA_TYPE |
数据格式 |
N(1) |
2:xml格式 |
M |
||
|
REQ_SN |
交易批次号 |
C(40) |
M |
|||
|
RET_CODE |
C(4) |
参考附录B6 |
M |
|||
|
ERR_MSG |
错误信息 |
C(1,256) |
C |
|||
|
SIGNED_MSG |
签名信息 |
C |
M |
|||
|
TRANSRET |
RET_CODE |
返回码 |
C(4) |
参考附录B6 |
C |
|
|
ERR_MSG |
错误文本 |
C(1,256) |
C |
|||
|
SETTLE_DAY |
清算日期 |
C(8) |
YYYYMMDD |
C |
||
|
VOUCHERNO |
银行流水号 |
C(1,46) |
C |
VERSION为06才返回该值 |
3.12.3 自定义账单结果查询(310032)
C:字符串
C (x,y):最小长度 x、最大长度 y 的字符串
N (x):固定 x 位整数
N (x,y):最小长度 x、最大长度 y 的整数
限制类型:M - 必填,C - 选填
(2)请求报文模块说明:
- INFO模块:包含交易代码、版本、数据格式、处理级别、商户代码、用户名、用户密码、交易批次号、签名信息等,为必填模块,用于标识查询交易、提供商户身份验证信息和配置查询基础参数。
- QTRANSREQ模块:包含交易流水号和商户号,为必填模块,用于指定需要查询的具体交易。
(3)响应报文模块说明:
- INFO模块:包含交易代码、版本、数据格式、交易批次号、返回代码、错误信息、签名信息等,用于返回查询交易的基础响应信息和查询结果状态。
- SMTDRET模块:包含原交易流水、交易类型、账单金额、实际发生金额、实扣次数、手续费、交易账户、商户自定义流水、摘要、交易完成时间、结算日期、返回码、错误文本等,仅当头部返回码为0000时存在该模块,用于展示查询到的交易详细信息,其中退款交易无账单金额和实扣次数字段。
3.12.3.1接口功能
用于查询自定义账单交易(包括原交易和退款交易)的详细结果信息
商户发起查询请求时,需提供要查询交易的交易流水号,以准确定位查询对象
当响应报文头部返回码为 1002 时,表示查询的该笔交易不存在
若查询成功(头部返回码为 0000),可获取到交易的多种详细信息,如原交易流水、实际发生金额、交易完成时间等;对于原自定义账单交易,还可获取账单金额和实扣次数;对于退款交易,可获取实际退款金额。
返回的交易账户信息经过脱敏处理,保障账户安全。
3.12.3.2请求报文
|
接口 |
字段ID |
字段名称 |
类型 |
取值 |
限制 |
备注 |
|
INFO |
TRX_CODE |
交易代码 |
C(1, 20) |
310032 |
M |
|
|
VERSION |
版本 |
C(2) |
04 |
M |
||
|
DATA_TYPE |
数据格式 |
N(1) |
2:xml格式 |
M |
||
|
LEVEL |
处理级别 |
N(1) |
0-9 0优先级最低,默认为5 |
M |
||
|
MERCHANT_ID |
商户代码 |
C(15) |
商户ID |
M |
||
|
USER_NAME |
用户名 |
C(1,20) |
M |
|||
|
USER_PASS |
用户密码 |
M |
||||
|
REQ_SN |
交易批次号 |
C(40) |
M |
不重复流水 |
||
|
SIGNED_MSG |
签名信息 |
C |
M |
|||
|
QTRANSREQ |
QUERY_SN |
交易流水号 |
C(60) |
交易流水号 |
M |
|
|
MERCHANT_ID |
商户号 |
C(15) |
M |
3.12.3.2响应报文
只有当头部返回码为0000时,才有SMTDRET对象。当头部返回码为1002时,表示该笔交易不存在。
|
接口 |
字段ID |
字段名称 |
类型 |
取值 |
限制 |
备注 |
|
INFO |
TRX_CODE |
交易代码 |
C(1, 20) |
310032 |
M |
|
|
VERSION |
版本 |
C(2) |
03 |
M |
||
|
DATA_TYPE |
数据格式 |
N(1) |
2:xml格式 |
M |
||
|
REQ_SN |
交易批次号 |
C(40) |
M |
|||
|
RET_CODE |
C(4) |
参考附录B6 |
M |
|||
|
ERR_MSG |
错误信息 |
C(1,256) |
C |
|||
|
SIGNED_MSG |
签名信息 |
C |
M |
|||
|
SMTDRET |
BATCHID |
原交易流水 |
C(60) |
原请求交易中的REQ_SN的值 |
||
|
TRXCODE |
交易类型 |
C(6) |
||||
|
BILLAMT |
账单金额 |
N(1,12) |
单位分 |
退款无 |
||
|
TRXAMT |
实际发生金额 |
N(1,12) |
单位分 |
原交易为自定义账单交易时表示实际成功金额;原交易为自定义账单退款时表示实际退款金额。 |
||
|
CNT |
实扣次数 |
N(1,3) |
退款无 |
|||
|
FEE |
手续费 |
N(1,12) |
单位分 |
|||
|
ACCOUNT_NO |
交易账户 |
C(1,32) |
脱敏账户 |
|||
|
CUST_USERID |
商户自定义流水 |
C (0,128) |
原代收付请求报文中的CUST_USERID字段 |
|||
|
SUMMARY |
摘要 |
C(1,140) |
||||
|
FINTIME |
交易完成时间 |
C(14) |
||||
|
SETTDAY |
结算日期 |
C(8) |
||||
|
RET_CODE |
返回码 |
C(4) |
参考附录B6 |
C |
||
|
ERR_MSG |
错误文本 |
C(1,256) |
C |
3.12.4 自定义账单交易结果通知
C:字符串
C (x,y):最小长度 x、最大长度 y 的字符串
N (x):固定 x 位整数
N (x,y):最小长度 x、最大长度 y 的整数
限制类型:M - 必填,C - 选填
(2)请求报文模块说明:
该接口为通联向商户指定URL发起的通知,请求参数以URL参数形式传递,包含返回码、错误信息、账号、订单金额、实扣金额、实扣笔数、清算日期、完成时间、提交时间、交易批次号、手续费、用户代码、商户号、交易类型、备注、签名等参数。其中返回码、账号、订单金额、实扣金额、实扣笔数、清算日期、完成时间、提交时间、交易批次号、用户代码、商户号、交易类型、签名为非空或必填参数,错误信息、手续费、备注为可空参数。签名使用SHA1withRSA算法,签名原始内容为账号|订单金额|实扣金额|实扣笔数|交易批次号|返回码|手续费。
(3)响应报文模块说明:
商户系统仅需返回一行内容,即“SUCCESS”或“ERROR”,用于告知通联通知是否已成功接收。
此交易通知由通联向商户指定的url发起,使用HTTP GET|POST方式提交到商户系统,url优先取商户上送,其次取系统配置
3.12.4.1接口功能
由通联主动向商户指定的 URL 发起通知,传递自定义账单交易(包括申请和退款)的结果信息。
通知方式支持 HTTP GET 或 POST 方式,URL 优先使用商户上送的地址,若商户未上送则使用系统配置的地址。/p>
通知参数包含交易的关键结果信息,如返回码、实扣金额、交易完成时间等,方便商户及时了解交易状态
通过签名机制(SHA1withRSA)保障通知参数的真实性和完整性,防止参数被篡改
商户系统接收到通知后,需返回 “SUCCESS” 或 “ERROR”,以确认是否成功接收通知,通联可根据返回结果判断是否需要重新发起通知。
3.12.4.12请求报文
|
URL参数名 |
说明 |
类型 |
取值 |
可空 |
备注 |
|
RETCODE |
返回码 |
C(4) |
非空 |
||
|
RETMSG |
错误信息 |
C(256) |
可空 |
||
|
ACCOUNT_NO |
账号 |
N(1,32) |
银行卡或存折号码 |
非空 |
|
|
AMOUNT |
订单金额 |
N(1,12) |
整数,单位分 |
非空 |
|
|
SUCCAMOUNT |
实扣金额 |
N(1,12) |
整数,单位分 |
非空 |
|
|
ACTUALCOUNT |
实扣笔数 |
N(1,12) |
整数 |
非空 |
|
|
SETTDAY |
清算日期 |
C(8) |
yyyyMMdd |
非空 |
|
|
FINTIME |
完成时间 |
C(14) |
yyyyMMddHHmmss |
非空 |
|
|
SUBMITTIME |
提交时间 |
C(14) |
yyyyMMddHHmmss |
非空 |
|
|
BATCHID |
交易批次号 |
C(40) |
原请求报文中的交易流水REQ_SN |
必填 |
|
|
POUNDAGE |
手续费 |
N(12) |
整数,单位分 |
可空 |
|
|
USERCODE |
用户代码 |
C(20) |
商户客户ID |
必填 |
|
|
MERID |
商户号 |
C(15) |
商户号 |
必填 |
|
|
TRXCODE |
交易类型 |
C(6) |
自定义账单申请:310031,自定义账单退款申请:310033 |
必填 |
|
|
REMARK |
备注 |
C(1,50) |
可空 |
||
|
SIGN |
签名 |
使用SHA1withRSA签名。签名原始内容为 账号|订单金额|实扣金额|实扣笔数|交易批次号|返回码|手续费 |
必填 |
3.12.4.2响应报文
商户系统返回一行内容
SUCCESS或者ERROR