回调服务
TripLink 支持在多个业务场景回调客户接口,客户可以在回调接口实现自己的业务逻辑。
回调基于HTTP/HTTPS协议的POST方法,所有请求体都是JSON格式,所有字符都使用UTF-8编码。
回调过程发生如下情况均视为失败:请求失败;请求超时;响应状态码非2XX。
回调分为同步与异步,同步请求必须及时响应,没有重试机制;异步请求无需及时响应,存在重试机制。
回调列表
| 名称 | 方式 | 响应时间 | 重试次数 | 重试间隔 |
|---|---|---|---|---|
| 授权决策回调 | 同步 | 3s | N/A | N/A |
| 授权结果通知 | 异步 | 9s | 20 | N × 2min |
| 充值结果通知 | 异步 | 9s | 20 | N × 2min |
| 清算结果通知 | 异步 | 9s | 20 | N × 2min |
| 开卡结果通知 | 异步 | 9s | 20 | N × 2min |
| 销卡结果通知 | 异步 | 9s | 20 | N × 2min |
客户端可以勾选想要被通知的项,只有勾选了才会被通知。

授权决策回调
TripLink 在批准授权请求之前回调此客户接口,客户可以以此实现自己的风控和授权决策。
回调失败则会降级,即 TripLink 会为客户使用的默认决策结果,参考回调参数。
连续失败10次后系统会不再请求客户接口,直接降级,客户需手动再次开启。
请求体
| 名称 | 类型 | 描述 | 备注 |
|---|---|---|---|
bizContent | String | 实际报文 | 需要通过JSON反序列化。详见 AuthorizationDecision。 |
sign | String | 签名 | 对bizContent原文签名,验签 RSA 公钥同 API。详见准备工作。 |
AuthorizationDecision
| 名称 | 类型 | 描述 | 备注 |
|---|---|---|---|
authId | String | 交易唯一 ID | 全局唯一。 |
transactionId | String | 交易 ID | 授权交易与对应冲正交易的transactionId相同。 |
cardLogId | String | 卡 ID | TripLink 专用卡标识。 |
localDate | String | 交易当地日期 | 当地时区,格式yyyyMMdd。 |
localTime | Sreing | 交易当地时间 | 当地时区,格式HHmmss。 |
occurTime | String | 交易发生时间 | 卡时区,格式yyyy-MM-dd HH:mm:ss。 |
messageType | String | 交易类型 | 枚举值,4位数字,详见授权类型下拉框。 |
messageTypeDesc | String | 交易类型描述 | 详见授权类型下拉框。 |
transCurrency | String | 交易币种 | ISO 4217货币编号,3位数字。 |
transCurrencyAmt | String | 交易金额 | 小数,对应交易币种。 |
localCurrency | String | 卡币种 | ISO 4217货币编号,3位数字。 |
localCurrencyAmt | String | 卡交易金额 | 小数,对应卡币种。 退款交易卡交易金额为 0 |
cardAvailableBalance | String | 卡可用余额 | 小数,对应卡币种。 |
merchantId | String | 商户 ID | |
merchantName | String | 商户名称 | |
merchantCategoryCode | String | 商户 MCC | ISO 18245商户类别,4位数字。 |
merchantCountry | String | 商户所在国家 | (未标准化) |
isoMerchantCountryCode | String | 商户所在国家 | ISO 3166国家代码,3位字母。参考ISO 3166。 (可能为空值) |
merchantCity | String | 商户所在城市 | |
acquirerId | String | 收单行 ID | |
useRef1Txt | String | 用户自定义字段 1 | |
useRef2Txt | String | 用户自定义字段 2 | |
useRef3Txt | String | 用户自定义字段 3 | |
useRef4Txt | String | 用户自定义字段 4 | |
useRef5Txt | String | 用户自定义字段 5 |
| messageType | messageTypeDesc | 描述 |
|---|---|---|
6810 | Authorization Approval | 消费授权 |
6510 | Auth Refund Approval | 退款授权 |
6820 | Authorization Query | 授权查询 |
响应体
客户必须通过响应体中的code字段标识授权决策结果:0:授权通过;非0:授权拒绝。
| 名称 | 类型 | 必填 | 描述 | 备注 |
|---|---|---|---|---|
code | String | Y | 结果码 | 0:授权通过;非0:授权拒绝。 |
msg | String | N | 结果码描述 |
授权结果通知
TripLink 会在授权完成后以异步的方式发送授权结果至此客户接口。
通知失败会重试,重试次数达上限后不再发送本条通知,其他通知不影响。
请求体
| 名称 | 类型 | 描述 | 备注 |
|---|---|---|---|
noticeType | String | 通知类型 | auth。 |
bizContent | String | 实际报文 | 需要通过JSON反序列化。详见 AuthorizationNotification。 |
sign | String | 签名 | 对bizContent原文签名,验签 RSA 公钥同 API。详见准备工作。 |
AuthorizationNotification
| 名称 | 类型 | 描述 | 备注 |
|---|---|---|---|
authId | String | 交易唯一 ID | 全局唯一。 |
transactionId | String | 交易 ID | 授权交易与对应冲正交易的transactionId相同。 |
cardLogId | String | 卡 ID | TripLink 专用卡标识。 |
occurTime | String | 交易发生时间 | 卡时区,格式yyyy-MM-dd HH:mm:ss。 |
messageType | String | 交易类型 | 枚举值,4位数字,详见授权类型下拉框。 |
messageTypeDesc | String | 交易类型描述 | 详见授权类型下拉框。 |
reversalType | String | 冲正类型 | 仅授权类型为6930或6940时有值。0:系统冲正;1:非系统冲正。 |
respCode | String | 交易响应码 | 枚举值,4位数字,详见授权响应码下拉框。 |
respCodeDesc | String | 交易响应码描述 | 详见授权响应码下拉框。 |
approveCode | String | 授权码 | 随机6位数字。 |
transCurrency | String | 交易币种 | ISO 4217货币编号,3位数字。 |
transCurrencyAmt | String | 交易金额 | 小数,对应交易币种。 |
localCurrency | String | 卡币种 | ISO 4217货币编号,3位数字。 |
localCurrencyAmt | String | 卡交易金额 | 小数,对应卡币种。 |
cardAvailableBalance | String | 卡可用余额 | 小数,对应卡币种。 |
merchantId | String | 商户 ID | |
merchantName | String | 商户名称 | |
merchantCategoryCode | String | 商户 MCC | ISO 18245商户类别,4位数字。 |
merchantCountry | String | 商户所在国家 | (未标准化) |
isoMerchantCountryCode | String | 商户所在国家 | ISO 3166国家代码,3位字母。参考ISO 3166。 (可能为空值) |
merchantCity | String | 商户所在城市 | |
acquirerId | String | 收单行 ID | |
crossBorderType | String | 交易是否跨境 | 0:境内;1:境外。 |
useRef1Txt | String | 用户自定义字段 1 | |
useRef2Txt | String | 用户自定义字段 2 | |
useRef3Txt | String | 用户自定义字段 3 | |
useRef4Txt | String | 用户自定义字段 4 | |
useRef5Txt | String | 用户自定义字段 5 |
| messageType | messageTypeDesc | 描述 |
|---|---|---|
6810 | Authorization Approval | 消费授权(通过) |
6890 | Authorization Decline | 消费授权(拒绝) |
6510 | Auth Refund Approval | 退款授权(通过) |
6590 | Auth Refund Decline | 退款授权(拒绝) |
6930 | Authorization Reversal Approval | 消费授权冲正 |
6940 | Auth Refund Reversal Approval | 退款授权冲正 |
6820 | Authorization Query | 授权查询 |
| respCode | respCodeDesc | 备注 |
|---|---|---|
0000 | Authorization Approval | 授权成功。 |
| respCode | respCodeDesc | 备注 |
|---|---|---|
1002 | High Risk Transaction | 高风险的交易。 |
1003 | Invalid Account | 无效账号。 |
1101 | Abnormal Customer Status | 客户状态异常。 |
1102 | Card canceled | 卡片已注销。 |
1103 | Authorization Amount Error | 授权金额错误。 |
1104 | VAN Amount Limit Error | 账户余额不足。 |
1105 | Invalid Expiry Date | 无效的有效期。 |
1106 | Transaction Count Over Limit | 交易次数超过上限。 |
1107 | Invalid CVV2 | 无效的CVV2安全码。 |
1108 | VAN Amount Limit Error | 账户余额不足。 |
1110 | Trans Currency Not Allowed | 交易币种不支持。 |
1111 | MCC Error | MCC商户类别错误。 |
1112 | VAN credit limit greater than max Limit | 卡片授权金额超出最高限额。 |
1113 | VAN credit limit less than min Limit | 卡片授权金额低于最小限额。 |
1114 | Transaction Date before card activeDate | 交易日期早于卡片有效期。 |
1115 | Transaction Date after card inactiveDate | 交易日期晚于卡片失效日期。 |
1116 | Auth Amount greater than available VAN credit limit | 授权金额超出卡片可用余额。 |
1117 | Auth Amount greater than available account credit limit | 授权金额超出账户可用余额。 |
1118 | Limited usage with abnormal card status | 卡片状态异常暂不可用。 |
1201 | Authorization already in process, please wait until the last authorization completed | 授权过于频繁。 |
1203 | Not support 3ds | 卡不支持3DS交易。 |
2012 | Cardholder cancels identity verification | 持卡人取消身份验证。 |
2014 | Cardholder fails to complete identity verification within the specified time | 持卡人未能在规定时间内完成身份验证。 |
2019 | Cardholder fails to complete identity verification within the specified number of attempts | 持卡人未能在规定的尝试次数内完成身份验证。 |
2022 | Merchant requests invalid information | 商户请求信息不合法。 |
2222 | Authorization decision reject | 授权决策拒绝。 |
2299 | Authorization decision downgrade reject | 授权决策降级后拒绝。 |
3004 | Abnormal Card Scheme Network | 卡组网络异常。 |
9000 | Unknow Error | 未知的错误。 |
| respCode | respCodeDesc | 备注 |
|---|---|---|
0000 | Authorization Approval | 授权成功。 |
响应体
客户必须通过响应体中的code字段标识通知接收结果:0:接收成功;非0:接收失败。
| 名称 | 类型 | 必填 | 描述 | 备注 |
|---|---|---|---|---|
code | String | Y | 结果码 | 0:接收成功;非0:接收失败。 |
msg | String | N | 结果码描述 |
清算结果通知
TripLink 会在清算完成后以异步的方式发送清算结果至此客户接口。
通知失败会重试,重试次数达上限后不再发送本条通知,其他通知不影响。
请求体
| 名称 | 类型 | 描述 | 备注 |
|---|---|---|---|
noticeType | String | 通知类型 | clearing。 |
bizContent | String | 实际报文 | 需要通过JSON反序列化。详见 SettlementNotification。 |
sign | String | 签名 | 对bizContent原文签名,验签 RSA 公钥同 API。详见准备工作。 |
SettlementNotification
| 名称 | 类型 | 描述 | 备注 |
|---|---|---|---|
serialNo | String | 交易唯一 ID | 全局唯一。 |
occurDateTime | String | 交易发生时间 | 格式yyyy-MM-dd HH:mm:ss。 |
postingDateTime | String | 入账处理时间 | 格式yyyy-MM-dd HH:mm:ss。 |
postingSysTime | String | 入账系统时间 | 格式yyyy-MM-dd。 |
transactionCode | String | 交易类型 | 枚举值,4位数字,详见清算类型下拉框。 |
transactionType | String | 交易类型描述 | 详见清算类型下拉框。 |
approvalCode | String | 授权码 | 随机6位字母与数字。 |
isCredit | String | 借贷记 | DEBT:借记,CRED:贷记。 |
originalTransactionCurrency | String | 交易币种 | ISO 4217 货币编号,3位数字。 |
originalTransactionAmount | Number | 交易金额 | 小数,对应交易币种。 |
cardTransactionCurrency | String | 卡币种 | ISO 4217 货币编号,3位数字。 |
cardTransactionAmount | Number | 卡交易金额 | 小数,对应卡币种。 |
accountCurrency | String | 清算币种 | ISO 4217 货币编号,3位数字。 |
billAccountAmount | Number | 清算金额 | 小数,对应账户币种。 |
posMerchantID | String | 商户 ID | |
posMerchantName | String | 商户名称 | |
posMerchantClassCode | String | 商户 MCC | ISO 18245商户类别,4位数字。 |
posMerchantCountry | String | 商户所在国家 | (未标准化) |
isoMerchantCountryCode | String | 商户所在国家 | ISO 3166 国家代码,3位字母。(可能为空值) |
posMerchantCity | String | 商户所在城市 | |
posAcquirerID | String | 收单行 ID | |
transactionId | String | 交易关联 ID | 关 联同笔交易的关联 ID |
cardLogId | String | 卡 ID | TripLink 专用卡标识。 |
customerId | String | 客户 ID | |
useRef1Txt | String | 用户自定义字段 1 | |
useRef2Txt | String | 用户自定义字段 2 | |
useRef3Txt | String | 用户自定义字段 3 | |
useRef4Txt | String | 用户自定义字段 4 | |
useRef5Txt | String | 用户自定义字段 5 | |
useRef6Txt | String | 用户自定义字段 6 | |
useRef7Txt | String | 用户自定义字段 7 | |
useRef8Txt | String | 用户自定义字段 8 | |
useRef9Txt | String | 用户自定义字段 9 | |
useRef10Txt | String | 用户自定义字段 10 | |
useRef11Txt | String | 用户自定义字段 11 | |
useRef12Txt | String | 用户自定义字段 12 | |
useRef13Txt | String | 用户自定义字段 13 | |
useRef14Txt | String | 用户自定义字段 14 | |
useRef15Txt | String | 用户自定义字段 15 | |
useRef16Txt | String | 用户自定义字段 16 | |
useRef17Txt | String | 用户自定义字段 17 | |
useRef18Txt | String | 用户自定义字段 18 | |
useRef19Txt | String | 用户自定义字段 19 | |
useRef20Txt | String | 用户自定义字段 20 |
| transactionCode | transactionType | 描述 | 借贷记 | 金额数值 |
|---|---|---|---|---|
2010 | Purchase | 消费 | DEBT | 正 |
2110 | Refund | 消费退款 | CRED | 负 |
响应体
客户必须通过响应体中的code字段标识通知接收结果:0:接收成功;非0:接收失败。
| 名称 | 类型 | 必填 | 描述 | 备注 |
|---|---|---|---|---|
code | String | Y | 结果码 | 0:接收成功;非0:接收失败。 |
msg | String | N | 结果码描述 |
充值结果通知
TripLink 会在充值完成后以异步的方式发送充值结果至此客户接口。
通知失败会重试,重试次数达上限后不再发送本条通知,其他通知不影响。
请求体
| 名称 | 类型 | 描述 | 备注 |
|---|---|---|---|
noticeType | String | 通知类型 | deposit。 |
bizContent | String | 实际报文 | 需要通过JSON反序列化。详见 DepositNotification。 |
sign | String | 签名 | 对bizContent原文签名,验签 RSA 公钥同 API。详见准备工作。 |
DepositNotification
| 名称 | 类型 | 描述 | 备注 |
|---|---|---|---|
orderId | String | TripLink 内部订单号 | 全局唯一。 |
orderType | String | 订单类型 | Topup。 |
creditAccountNo | String | 贷方账号 | |
creditAccountName | String | 贷方账户名 | |
debitAccountNo | String | 借方账号 | |
debitAccountName | String | 借方账户名 | |
currency | String | 币种 | ISO 4217货币编号,3位字母。 |
amount | String | 金额 | |
transactionTime | String | 交易时间 | 格式yyyy-MM-dd HH:mm:ss。 |
remark | String | 备注 |
响应体
客户必须通过响应体中的code字段标识通知接收结果:0:接收成功;非0:接收失败。
| 名称 | 类型 | 必填 | 描述 | 备注 |
|---|---|---|---|---|
code | String | Y | 结果码 | 0:接收成功;非0:接收失败。 |
msg | String | N | 结果码描述 |
开卡结果通知
TripLink 会在开卡后以异步的方式发送开卡结果至此客户接口。
通知失败会重试,重试次数达上限后不再发送本条通知,其他通知不影响。
请求体
| 名称 | 类型 | 描述 | 备注 |
|---|---|---|---|
noticeType | String | 通知类型 | create。 |
bizContent | String | 实际报文 | 需要通过JSON反序列化。详见 CreateCardNotification。 |
sign | String | 签名 | 对bizContent原文签名,验签 RSA 公钥同 API。详见准备工作。 |
CreateCardNotification
| 名称 | 类型 | 描述 | 备注 |
|---|---|---|---|
cardLogId | String | 卡 ID | TripLink 专用卡标识。 |
requestId | String | 请求流水号 | 原始请求开卡的流水号 |
requestSource | String | 请求来源 | API 通过 API 请求的开卡Portal 通过客户端请求的开卡System 系统开卡。 |
createTime | String | 开卡时间 | 格式 yyyy-MM-dd HH:mm:ss |
returnCode | String | 结果码 | 枚举值,6位数字,详见结果码下拉框。(非 000000表示请求处理失败) |
errorMessage | String | 结果码描述 | 详见结果码下拉框。 |
cardCurrencyCode | String | 卡币种 | ISO 4217 货币编号,3位数字。 |
cardLimit | String | 额度 | 小数,对应卡币种。 |
| returnCode | errorMessage | 备注 |
|---|---|---|
000000 | Success | 成功。 |
100000 | Input parameter is incorrect(不固定) | 请求参数错误。 |
100001 | Reduplicative requestid | requestId重复。 |
200002 | Both MCC, MCC groups and [acquirerId,merchantId] are all empty | supportedMccGroup与(supportedMid或supportedAccquirerId)都为空。 |
200003 | Customer info not find | 客户信息不存在。 |
200007 | Global parameter not find | 客户全局配置不存在。 |
200008 | InactiveDate must be greater than activeDate | 不可交易日必须晚于可交易日。 |
200013 | Not find the mapping between the cardCurrency and settlementCurrency | 结算账户不存在。 |
200014 | AcquirerId/mid must not be empty | 收单行ID与商户ID必须同时存在。 |
200022 | Not find active pan number config | 卡号生成失败。 |
200029 | Card exists pending request | 其他操作执行中。 |
200036 | card bin not support | 卡品牌不支持。 |
200037 | InactiveDate must submit | 卡不可交易日生成失败。 |
200038 | cardCloseUsage not be null | cardCloseUsage格式不正确。 |
200040 | Invalid global parameter (indate) | 卡有效期配置不存在。 |
200043 | mcc group is empty | supportedMccGroup为空。 |
200044 | mcc group all is not supported | supportedMccGroup不可为all。 |
200048 | (不固定) | 发卡行处理失败。 |
200060 | (不固定) | 发卡行请求参数错误。 |
201000 | Card available balance exceeds the maximum limit | 卡可用额度超过限额。 |
300004 | mcc link channel group is empty | 发卡行MCC组为空。 |
300005 | Trading is risky | 高风险请求。 |
9XXXXX | (不固定) | 系统错误。 |
响应体
客户必须通过响应体中的code字段标识通知接收结果:0:接收成功;非0:接收失败。
| 名称 | 类型 | 必填 | 描述 | 备注 |
|---|---|---|---|---|
code | String | Y | 结果码 | 0:接收成功;非0:接收失败。 |
msg | String | N | 结果码描述 |
销卡结果通知
TripLink 会在预销卡完成后以异步的方式发送预销卡通知至此客户接口。
通知失败会重试,重试次数达上限后不再发送本条通知,其他通知不影响。
请求体
| 名称 | 类型 | 描述 | 备注 |
|---|---|---|---|
noticeType | String | 通知类型 | close。 |
bizContent | String | 实际报文 | 需要通过JSON反序列化。详见 CloseCardNotification。 |
sign | String | 签名 | 对bizContent原文签名,验签 RSA 公钥同 API。详见准备工作。 |
CloseCardNotification
| 名称 | 类型 | 描述 | 备注 |
|---|---|---|---|
cardLogId | String | 卡 ID | TripLink 专用卡标识。 |
requestId | String | 请求流水号 | 原始请求开卡的流水号 |
requestSource | String | 请求来源 | API 通过 API 请求的开卡Portal 通过客户端请求的开卡System 系统开卡。 |
cancelTime | String | 销卡时间 | 格式 yyyy-MM-dd HH:mm:ss |
closedReason | String | 销卡原因 | 枚举值,6位数字,详见销卡原因下拉框。 |
cardStatus | String | 卡状态 | CLOP:预销卡 |
| closedReason | 备注 |
|---|---|
100001 | 客户通过Portal端或API主动销卡。 |
100002 | 到达客户设置的关卡百分比,自动销卡。 |
100003 | 单次卡已被使用,自动销卡。 |
100005 | 风险卡,风控 自动销卡。 |
响应体
客户必须通过响应体中的code字段标识通知接收结果:0:接收成功;非0:接收失败。
| 名称 | 类型 | 必填 | 描述 | 备注 |
|---|---|---|---|---|
code | String | Y | 结果码 | 0:接收成功;非0:接收失败。 |
msg | String | N | 结果码描述 |
结果通知查询与重发
客户可以在商户系统(交易管理 - 通知查询)查询所有结果通知,并支持重发(单条/批量)。

SDK 验签示例
TRIPLINK_PUBLIC_KEY:TripLink RSA 公钥。