业务流程:
积分扣减接交易:
第1步,调用客户余额查询接口
第2步,调用积分扣减接口
积分扣减撤销交易:
第1步,调用积分扣减查证接口
第2步,调用积分扣减撤销接口
(1)请求参数
参数 | 是否必输 | 说明 |
---|---|---|
appid | 是 | 合作方唯一凭证 |
sign_type | 是 | 签名算法类型,例:SHA256 |
encrypt_data | 是 | 加密数据 |
sign | 是 | 合作方签名串,32位随机字符串,用于签名、加密、HMAC等 |
timestamp | 是 | 时间戳,格式:yyyy-MM-dd HH:mm:ss |
biz_data | 是 | 请求参数合集 |
encrypt_type | 是 | 加密算法类型,例:AES |
deviceid | 否 | 设备编号 |
nonce | 是 | 与时间戳结合防止重放攻击 |
(2)返回参数
参数 | 说明 |
---|---|
code | 网关返回码 |
msg | 网关返回描述 |
biz_encrypt | 返回加密内容 |
biz_content | 返回内容 |
sign | 网关签名串 |
responseid | 响应日志号 |
通用响应码
响应码 | 备注 |
---|---|
"4001" | 无效的请求路径/后台无此接口 |
"4002" | 应用无权限访问此接口 |
"4003" | 应用访问此接口的权限异常 |
"4004" | 无效的appid,请开发者检查appid的正确性 |
"5001" | 签名验签失败 |
"5002" | 不支持的加密方法 |
"5003" | 重放请求报错 |
"5004" | 请求报文字段缺失 |
"5005" | 请求报文必输字段为空 |
API名称 | 请求入口 |
---|---|
信用卡积分扣减 | https://openbank.abchina.com/GateWay/openabc/api/creditcard/reducepoints/v1 |
信用卡积分扣减撤销 | https://openbank.abchina.com/GateWay/openabc/api/creditcard/cancelreducepoints/v1 |
信用卡积分扣减查证 | https://openbank.abchina.com/GateWay/openabc/api/creditcard/reducecheck/v1 |
信用卡客户积分查询 | https://openbank.abchina.com/GateWay/openabc/api/creditcard/querypoints/v1 |
接口描述:满足信用卡客户在合作方渠道积分消费需求。1.客户在合作方渠道,合作方调用积分消费接口,系统对签名信息及积分消费信息正确性进行校验;2.验证通过后,将积分消费结果信息返回给合作方。
请求入口:https://openbank.abchina.com/GateWay/openabc/api/creditcard/reducepoints/v1
沙盒测试请求入口: https://openbank.abchina.com/GateWay/SandBox/openabc/api/creditcard/reducepoints/v1
通用请求参数:见1.1节
特定请求参数:
参数 | 是否必输 | 说明 |
---|---|---|
reqDate | 是 | 请求日期 |
reqTime | 是 | 请求时间 |
sysCode | 是 | 系统简称,合作方和平台商议后确定 |
custCIF | 是 | CIF编号 |
cardNo | 是 | 卡号, 16位:贷记卡 19位:借记卡 |
cardType | 是 | 卡种类, 0:贷记卡 1:借记卡 |
reduceLevel | 是 | 扣减级别, 0:客户级 1:账户级 |
tradeType | 是 | 交易类型,合作方和平台商议后确定 |
amtTotal | 是 | 消费积分,最大9位数字 |
oriTranDate | 是 | 原交易日期,用于撤销、查证 ,非必输 |
oriTranSeq | 否 | 原交易请求流水号,用于撤销、查证 |
reqId | 是 | 请求编码,合作方和平台商议后确定渠道需保证每个reqId下的请求流水号唯一性 |
tranSeq | 是 | 请求流水号 |
prep1 | 否 | 预留字段1,留空 |
prep2 | 否 | 预留字段2,留空 |
返回参数
参数 | 说明 |
---|---|
Channel | 调用渠道 |
respCode | 结果代码, 0000 成功 0996 系统错误 其他 失败代码 |
respDESC | 错误描述,成功时为空 |
respDate | 应答日期 |
respTime | 应答时间 |
respSeq | 应答流水号 |
tranSeq | 请求流水号 |
amtBalTotal | 客户级剩余积分,最大9位数字 |
请求的JSON格式:
encrypt_data的加密结构示例:
响应的JSON格式:
biz_encrypt的解密结构示例:
接口描述:积分扣减撤销接口
请求入口:https://openbank.abchina.com/GateWay/openabc/api/creditcard/cancelreducepoints/v1
沙盒测试请求入口: https://openbank.abchina.com/GateWay/SandBox/openabc/api/creditcard/cancelreducepoints/v1
通用请求参数:见1.1节
特定请求参数:
参数 | 是否必输 | 说明 |
---|---|---|
reqDate | 是 | 请求日期 |
reqTime | 是 | 请求时间 |
sysCode | 是 | 系统简称,合作方和平台商议后确定 |
custCIF | 是 | CIF编号 |
cardNo | 是 | 卡号, 16位:贷记卡 19位:借记卡 |
cardType | 是 | 卡种类, 0:贷记卡 1:借记卡 |
reduceLevel | 是 | 扣减级别, 0:客户级 1:账户级 |
tradeType | 是 | 交易类型,合作方和平台商议后确定 |
amtTotal | 是 | 消费积分,最大9位数字 |
oriTranDate | 是 | 原交易日期,用于撤销、查证 ,非必输 |
oriTranSeq | 是 | 原交易请求流水号,用于撤销、查证,非必输 |
reqId | 是 | 请求编码,合作方和平台商议后确定渠道需保证每个reqId下的请求流水号唯一性 |
tranSeq | 是 | 请求流水号 |
prep1 | 否 | 预留字段1,留空 |
prep2 | 否 | 预留字段2,留空 |
返回参数
参数 | 说明 |
---|---|
Channel | 调用渠道 |
respCode | 结果代码, 0000 成功 0996 系统错误 其他 失败代码 |
respDESC | 错误描述,成功时为空 |
respDate | 应答日期 |
respTime | 应答时间 |
respSeq | 应答流水号 |
tranSeq | 请求流水号 |
amtBalTotal | 客户级剩余积分,最大9位数字 |
请求的JSON格式:
encrypt_data的加密结构示例:
响应的JSON格式:
biz_encrypt的解密结构示例:
接口描述:积分扣减查证接口
请求入口:https://openbank.abchina.com/GateWay/openabc/api/creditcard/reducecheck/v1
沙盒测试请求入口: https://openbank.abchina.com/GateWay/SandBox/openabc/api/creditcard/reducecheck/v1
通用请求参数:见1.1节
特定请求参数:
参数 | 是否必输 | 说明 |
---|---|---|
reqDate | 是 | 请求日期 |
reqTime | 是 | 请求时间 |
sysCode | 是 | 系统简称,合作方和平台商议后确定 |
custCIF | 是 | CIF编号 |
cardNo | 是 | 卡号, 16位:贷记卡 19位:借记卡 |
cardType | 是 | 卡种类, 0:贷记卡 1:借记卡 |
reduceLevel | 是 | 扣减级别, 0:客户级 1:账户级 |
tradeType | 是 | 交易类型,合作方和平台商议后确定 |
amtTotal | 是 | 消费积分,最大9位数字 |
oriTranDate | 是 | 原交易日期,用于撤销、查证 ,非必输 |
oriTranSeq | 是 | 原交易请求流水号,用于撤销、查证,非必输 |
reqId | 是 | 请求编码,合作方和平台商议后确定渠道需保证每个reqId下的请求流水号唯一性 |
tranSeq | 是 | 请求流水号 |
prep1 | 是 | 预留字段1,留空 |
prep2 | 是 | 预留字段2,留空 |
返回参数
参数 | 说明 |
---|---|
Channel | 调用渠道 |
respCode | 结果代码, 0000 成功 0996 系统错误 其他 失败代码 |
respDESC | 错误描述,成功时为空 |
respDate | 应答日期 |
respTime | 应答时间 |
respSeq | 应答流水号 |
tranSeq | 请求流水号 |
transStatusCode | 原交易状态,查证时使用 0交易成功 1交易部分撤销 2交易已撤销 |
transStatueDesc | 原交易描述,查证时使用 |
请求的JSON格式:
encrypt_data的加密结构示例:
响应的JSON格式:
biz_encrypt的解密结构示例:
接口描述:通过卡号或者证件号查询客户级余额
1.卡号&卡片类型,证件号&证件类型,任选一种输入,如果两种都输入了以卡号为准。输出结果为一个客户余额列表,列出了该客户下所有不同合并级别的积分数。第三方的积分消费行为,仅能使用查询结果中用合并级别为00的积分。
2.当通过借记卡查询客户级积分余额时,如果该借记卡产生过积分,则返回所有客户级积分(包所有括贷记卡、借记卡)。如果该借记卡未产生过积分,则返回返回码“0001”“借记卡卡号不存在或未产生过积分”(即使客户下其他卡有积分)。
请求入口:https://openbank.abchina.com/GateWay/openabc/api/creditcard/querypoints/v1
沙盒测试请求入口: https://openbank.abchina.com/GateWay/SandBox/openabc/api/creditcard/querypoints/v1
通用请求参数:见1.1节
特定请求参数:
参数 | 是否必输 | 说明 |
---|---|---|
reqDate | 是 | 请求日期 |
reqTime | 是 | 请求时间 |
sysCode | 是 | 系统名称 |
cardNo | 是 | 卡号,与证件号证件类型选输一项 |
cardType | 是 | 卡片类型, 0 贷记卡 1 借记卡 |
pid | 是 | 证件号,与卡号卡片类型选输一项 |
pidType | 是 | 证件类型,证件类型为“CIF”的时候pid输入客户CIF号可以直接使用CIF号查询客户级余额。 |
返回参数
参数 | 说明 |
---|---|
channel | 调用渠道 |
respCode | 结果代码, 0000 成功 0996 系统错误 其他 失败代码 |
respDESC | 错误描述,成功时为空 |
respDate | 应答日期 |
respTime | 应答时间 |
客户积分列表 (一般来说只需要看00级别积分,非00级是用于区分特殊的联名卡之类的情况) custCIF 客户CIF号 char(16) custName 客户姓名 char(60) mergeLevel 合并级别 00普通积分 非00单独计算 char(2) mergePoints 可用积分余额 decimal(12) pid 证件号 char(40) |
请求的JSON格式:
其中:cardNo,cardType和pid,pidType选输其中一类即可,都输入以前者为准
encrypt_data的加密结构示例:
响应的JSON格式:
biz_encrypt的解密结构示例:
响应码 | 描述 |
---|---|
"0000" | 交易成功 |
"0998" | 交易失败 |
"0996" | 系统错误 |
"0001" | 记录不存在 |
"0002" | 日期错误 |
"0003" | 数据库错误 |
"0004" | 该服务不支持此卡 |
"0005" | 锁定码错误 |
"0006" | 输入错误 |
"0007" | 礼品不足 |
"0008" | 不支持此服务 |
"0009" | 积分余额不足 |
"4005" | 已兑换年费 |