交易类接口列表
- 银行卡收单
- 实体卡权益积分兑换
- 二维码支付或兑换
- 交易结果查询
- 当日撤销
- 隔日退款
- 撤销或退款结果查询(接口处于设计开发中请勿对接)
- 卡余额或权益查询
- 电子凭证查询
- 电子凭证预核销
- 电子凭证批量核销
- 批量核销结果查询
- 会员资产查询接口
- 会员集点
- 活动产品选项
- 收单交易结果通知
银行卡收单
-
接口用途
- 银行卡收单
- 预付费卡消费
接口地址
https://ebuywebposp-test.e-buychina.com/ebuyweb-posp/api/cardPayment
action
cardPayment
请求参数,中件间===>易百后台
字段 类型 是否必填 字段意义 备注 traceNo String 是 收银机流水号 不允许重复,必须以yyyyMMdd(当天)作为流水号开头+递增序列 onlineTid String 否 线上对接使用的统一终端号 对接前需提前和易百技术沟通 totalAmount Price 是 交易总金额 单位:元 undiscountAmount Price 是 不可打折金额 单位:元 activityProductNo String 否 活动产品编号 二次交互时填写 orderSubject String 否 订单标题 最长256 orderDescription String 否 订单描述 最长256 acquirer String 是 收单机构 如:citicCashpay表示中信收单 request8583 String 否 请求报文HEX MIS-POS灌其他机构密钥,需要组包并填写该域 goodsDetail List<goodsDetail> 是 产品明细 验证产品明细时必填 cardInfo Object<cardInfo> 是 卡信息 memberDetail Object<memberDetail> 否 会员信息 会员支付时必填 请求报文举例
{ "traceNo": "9900000910001011820150201", "totalAmount": 40.8, "undiscountAmount": 0, "activityProductNo": "HDCP00000000001234", "acquirer": "citicCashpay", "goodsDetail": [ { "goodsCategory": "001", "goodsId": "P00001", "goodsName": "牙膏", "price": 8, "quantity": 2, "rebateCode": "000" }, { "goodsCategory": "101", "goodsId": "P00002", "goodsName": "洗发水", "price": 24.8, "quantity": 1, "rebateCode": "000" } ], "cardInfo": { "cardNo": "", "password": "", "valid": "", "track1": "", "track2": "", "track3": "", "cardSn": "", "icData": "" }, "memberDetail": { "memberId": "M000001545", "memberName": "TONY", "grade": "1", "status": "1", "balance": 1000.00, "pointBalance": 30000 } }返回参数,易百后台===>中件间
- 可能返回活动产品选项,需要进行选择
字段 类型 是否必填 字段意义 备注 traceNo String 是 收银机流水号 不允许重复,必须以yyyyMMdd(当天)作为流水号开头+递增序列 orderNo String 是 交易订单号 易百生成 transDate String 是 交易时间 格式为:yyyyMMddHHmmss returnCode String 是 返回码 00表示交易成功,其他表示失败 returnDesc String 是 返回信息 交易结果描述或错误原因 paidAmount Price 是 支付成功总金额 面值,单位:元 receiptAmount Price 否 商户实收金额 净值,单位:元 invoiceAmount Price 否 商户开票金额 单位:元 exchangeRate Number(8,6) 否 汇率 1外币等于多少人民币 currency String 否 货币类型 例如:CNY discountCode String 否 折扣编码 由收银机分配,用于入账计折扣类型 discountNum Number 否 固定金额折扣数量 用于入账计折扣类型的数量 tenderCode String 否 支付方式编码 由收银机分配,用于入账计支付方式 activityProductNo String 否 活动产品编号 activityProductName String 否 活动产品名称 needSameCard Boolean 否 同一张卡支付 如满额立减类活动,需要同一张银行卡支付剩余金额 response8583 String 否 返回报文HEX MIS-POS灌其他机构密钥,后台透传该域。(部分收单业务占用此字段下发pos指令) goodsDetail List<goodsDetail> 否 折抵产品明细 返回后台已抵扣成功的产品明细 fundChannel List<fundChannel> 否 资金渠道 printDetail Object<printDetail> 否 打印信息 如需要在收银小票上打印信息时必填 cardInfo Object<cardInfo> 否 卡信息 如果是IC卡,需要返回IC卡数据信息,用于IC卡检验 memberDetail Object<memberDetail> 否 会员信息 返回本次交易的会员信息 voucherDetail List<voucherDetail> 否 优惠券信息 返回本次交易的优惠券信息 cashBank String 否 收单机构编号 收单机构编号,详情参考收单标识说明 cashOrderNo String 否 收单机构订单号 反交易时下发 cashAmount Price 否 收单实际金额 pos机请求收单机构时使用的金额 purchaseOrder List<purchaseOrder> 否 收单签购单内容 签购单信息 返回报文举例
{ "traceNo": "9900000910001011920150201", "orderNo": "171698602301", "transDate": "20161231120533", "returnCode": "00", "returnDesc": "SUCCESS", "paidAmount": 40.8, "receiptAmount": 40.8, "invoiceAmount": 40.8, "exchangeRate": 6.0939, "currency": "CNY", "discountCode": "0001", "discountNum": 20, "tenderCode": "8001", "activityProductNo": "00000000089349", "activityProductName": "中信365权益", "needSameCard": true, "goodsDetail": [ { "goodsCategory": "001", "goodsId": "P00001", "goodsName": "牙膏", "price": 8, "quantity": 2, "rebateCode": "000", "activityNo": "2016123101", "memo": "100123456789" }, { "goodsCategory": "101", "goodsId": "P00002", "goodsName": "洗发水", "price": 24.8, "quantity": 1, "rebateCode": "000", "activityNo": "2016123101", "memo": "100123456789" } ], "fundChannel": [ { "channelNo": "001", "channelName": "用户实付现金", "channelAmount": "20.8" }, { "channelNo": "002", "channelName": "用户积分支付", "channelAmount": "20" } ], "printDetail": { "cardNo64": "622562****8888", "bank": "中信银行", "paymentOrderNo": "201612315689412157458787", "pointSale": "20000", "qrCode1": "htt://www.api-location-url.com/url", "qrCode2": "", "qrCode3": "", "barCode1": "12345679", "barCode2": "", "barCode3": "" }, "cardInfo": { "cardNo": "", "password": "", "valid": "", "track1": "", "track2": "", "track3": "", "cardSn": "", "icData": "" }, "memberDetail": { "memberId": "M000001545", "memberName": "TONY", "grade": "1", "status": "1", "balance": 1000.00, "pointBalance": 30000 }, "voucherDetail": [ { "voucherId": "001", "voucherName": "现金优惠券", "voucherType": "现金", "voucherCode": "123456789", "channelAmount": "20.8" }, { "voucherId": "002", "voucherName": "买一赠一优惠券", "voucherType": "买赠", "voucherCode": "1232136781", "channelAmount": "20.8" } ] }
实体卡权益积分兑换
接口用途
- 银行积分兑换
- 银行积分兑换+现金支付
- 银行权益验证
- 银行权益验证+现金支付
- 会员卡消费
接口地址
https://ebuywebposp-test.e-buychina.com/ebuyweb-posp/api/cardRedemption
action
cardRedemption网关查询当前卡号下允许参加的积分、权益活动列表cardPoint网关查询当前卡号下允许参加的积分活动列表cardAuth网关查询当前卡号下允许参加的权益活动列表
请求参数,中件间===>易百后台
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| traceNo | String | 是 | 收银机流水号 | 不允许重复,必须以yyyyMMdd(当天)作为流水号开头+递增序列 |
| onlineTid | String | 否 | 线上对接使用的统一终端号 | 对接前需提前和易百技术沟通 |
| totalAmount | Price | 是 | 交易总金额 | 单位:元 |
| pointAmount | Price | 否 | 积分抵扣金额 | 单位:元,默认与totalAmount一致表示整单金额采用积分抵扣 |
| orderSubject | String | 否 | 订单标题 | 最长256 |
| orderDescription | String | 否 | 订单描述 | 最长256 |
| undiscountAmount | Price | 是 | 不可打折金额 | 单位:元 |
| activityProductNo | String | 否 | 活动产品编号 | 二次交互时填写 |
| goodsDetail | List<goodsDetail> | 是 | 产品明细 | 验证产品明细时必填 |
| cardInfo | Object<cardInfo> | 是 | 卡信息 | |
| memberDetail | Object<memberDetail> | 否 | 会员信息 | 会员支付时必填 |
| extendData | Object | 否 | 扩展信息 | 特殊场景填值需与易百技术沟通(目前只在星巴克商户用到透传goodsTag) |
请求报文举例
{
"traceNo": "99000009100010101732123",
"totalAmount": 40.8,
"undiscountAmount": 0,
"activityProductNo": "HDCP00000000001234",
"goodsDetail": [
{
"goodsCategory": "001",
"goodsId": "P00001",
"goodsName": "牙膏",
"price": 8,
"quantity": 2,
"rebateCode": "000"
},
{
"goodsCategory": "101",
"goodsId": "P00002",
"goodsName": "洗发水",
"price": 24.8,
"quantity": 1,
"rebateCode": "000"
}
],
"cardInfo": {
"cardNo": "",
"password": "",
"valid": "",
"track1": "",
"track2": "",
"track3": "",
"cardSn": "",
"icData": ""
},
"memberDetail": {
"memberId": "M000001545",
"memberName": "TONY",
"grade": "1",
"status": "1",
"balance": 1000.00,
"pointBalance": 30000
}
}
返回参数,易百后台===>中件间
- 可能返回活动产品选项,需要进行选择
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| traceNo | String | 是 | 收银机流水号 | 不允许重复 |
| orderNo | String | 是 | 交易订单号 | 易百生成 |
| transDate | String | 是 | 交易时间 | 格式为:yyyyMMddHHmmss |
| returnCode | String | 是 | 返回码 | 00表示交易成功,其他表示失败 |
| returnDesc | String | 是 | 返回信息 | 交易结果描述或错误原因 |
| paidAmount | Price | 是 | 支付成功总金额 | 面值,单位:元 |
| receiptAmount | Price | 否 | 商户实收金额 | 净值,单位:元 |
| invoiceAmount | Price | 否 | 商户开票金额 | 单位:元 |
| exchangeRate | Number(8,6) | 否 | 汇率 | 1外币等于多少人民币 |
| currency | String | 否 | 货币类型 | 例如:CNY |
| discountCode | String | 否 | 折扣编码 | 由收银机分配,用于入账计折扣类型 |
| discountNum | Number | 否 | 固定金额折扣数量 | 用于入账计折扣类型的数量 |
| tenderCode | String | 否 | 支付方式编码 | 由收银机分配,用于入账计支付方式 |
| activityProductNo | String | 否 | 活动产品编号 | |
| activityProductName | String | 否 | 活动产品名称 | |
| needSameCard | Boolean | 否 | 同一张卡支付 | 如满额立减类活动,需要同一张银行卡支付剩余金额 |
| goodsDetail | List<goodsDetail> | 否 | 折抵产品明细 | 返回后台已抵扣成功的产品明细 |
| fundChannel | List<fundChannel> | 否 | 资金渠道 | |
| printDetail | Object<printDetail> | 否 | 打印信息 | 如需要在收银小票上打印信息时必填 |
| cardInfo | Object<cardInfo> | 否 | 卡信息 | 如果是IC卡,需要返回IC卡数据信息,用于IC卡检验 |
| memberDetail | Object<memberDetail> | 否 | 会员信息 | 返回本次交易的会员信息 |
| voucherDetail | List<voucherDetail> | 否 | 优惠券信息 | 返回本次交易的优惠券信息 |
| purchaseOrder | List<purchaseOrder> | 否 | 收单签购单信息 | 签购单信息 |
| remainAmount | Number | 否 | 消费后卡余额 | 单位:元 |
返回报文举例
{
"traceNo": "99000009100010101732123",
"orderNo": "171698602301",
"transDate": "20161231120533",
"returnCode": "00",
"returnDesc": "SUCCESS",
"paidAmount": 40.8,
"receiptAmount": 40.8,
"invoiceAmount": 40.8,
"exchangeRate": 6.0939,
"currency": "CNY",
"discountCode": "0001",
"discountNum": 20,
"tenderCode": "8001",
"activityProductNo": "2016123101",
"activityProductName": "中信365权益",
"needSameCard": true,
"goodsDetail": [
{
"goodsCategory": "001",
"goodsId": "P00001",
"goodsName": "牙膏",
"price": 8,
"quantity": 2,
"rebateCode": "000",
"activityNo": "2016123101",
"memo": "100123456789"
},
{
"goodsCategory": "101",
"goodsId": "P00002",
"goodsName": "洗发水",
"price": 24.8,
"quantity": 1,
"rebateCode": "000",
"activityNo": "2016123101",
"memo": "100123456789"
}
],
"fundChannel": [
{
"channelNo": "001",
"channelName": "用户实付现金",
"channelAmount": "20.8"
},
{
"channelNo": "002",
"channelName": "用户积分支付",
"channelAmount": "20"
}
],
"printDetail": {
"cardNo64": "622562****8888",
"bank": "中信银行",
"paymentOrderNo": "201612315689412157458787",
"pointSale": "20000",
"qrCode1": "htt://www.api-location-url.com/url",
"qrCode2": "",
"qrCode3": "",
"barCode1": "12345679",
"barCode2": "",
"barCode3": ""
},
"cardInfo": {
"cardNo": "",
"password": "",
"valid": "",
"track1": "",
"track2": "",
"track3": "",
"cardSn": "",
"icData": ""
},
"memberDetail": {
"memberId": "M000001545",
"memberName": "TONY",
"grade": "1",
"status": "1",
"balance": 1000.00,
"pointBalance": 30000
},
"voucherDetail": [
{
"voucherId": "001",
"voucherName": "现金优惠券",
"voucherType": "现金",
"voucherCode": "123456789",
"channelAmount": "20.8"
},
{
"voucherId": "002",
"voucherName": "买一赠一优惠券",
"voucherType": "买赠",
"voucherCode": "1232136781",
"channelAmount": "20.8"
}
]
}
二维码支付或兑换
接口用途
- 支付宝支付
- 微信被扫支付
- 银行二维码支付(工行、中行、中信、浦发等)
- 银行二维码积分兑换(工行、中行、中信、浦发等)
- 银联立码付
- 百度支付
- 翼支付
- 其他二维码支付
- 电子凭证核销:产品券/代金券/折扣券/买N赠M券/立减券
- 外卖或自助点单订单码自动上屏
接口地址
https://ebuywebposp-test.e-buychina.com/ebuyweb-posp/api/qrcodeSale
action
qrcodeSale
请求参数,中件间===>易百后台
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| traceNo | String(40) | 是 | 收银机流水号 | 不允许重复,必须以yyyyMMdd(当天)作为流水号开头+递增序列 |
| onlineTid | String | 否 | 线上对接使用的统一终端号 | 对接前需提前和易百技术沟通 |
| totalAmount | Price | 是 | 交易总金额 | 单位:元 |
| undiscountAmount | Price | 是 | 不可打折金额 | 单位:元 如无此金额时可填0 |
| verifyType | String | 是 | 核销类型 | 请与易百技术确认,枚举值:online为线上场景,offline为线下POS场景 |
| activityProductNo | String | 否 | 活动产品编号 | 二次交互时填写 |
| scene | String | 否 | 支付场景 | 条码:bar_code, 二维码:qr_code |
| orderSubject | String | 否 | 订单标题 | 最长256 |
| orderDescription | String | 否 | 订单描述 | 最长256 |
| merchantOrderNo | String(30) | 是 | 商户收银订单号 | 用于当笔交易对应到收银POS的订单,不能与traceNo值相同 |
| qrcode | String | 是 | 二维码内容 | 串号、一维码或二维码内容 |
| goodsDetail | List<goodsDetail> | 是 | 产品明细 | 验证产品明细时必填 |
| memberDetail | Object<memberDetail> | 否 | 会员信息 | 会员支付时必填 |
| extendData | Object | 否 | 扩展信息 | 特殊场景填值需与易百技术沟通 |
请求报文举例
{
"traceNo": "990000091000101620150201",
"totalAmount": 40.8,
"undiscountAmount": 0,
"activityProductNo": "HDCP00000000001234",
"qrcode": "280123121234567890",
"goodsDetail": [
{
"goodsCategory": "001",
"goodsId": "P00001",
"goodsName": "牙膏",
"price": 8,
"quantity": 2,
"rebateCode": "000"
},
{
"goodsCategory": "101",
"goodsId": "P00002",
"goodsName": "洗发水",
"price": 24.8,
"quantity": 1,
"rebateCode": "000"
}
],
"memberDetail": {
"memberId": "M000001545",
"memberName": "TONY",
"grade": "1",
"status": "1",
"balance": 1000,
"pointBalance": 30000
},
"extendData": {
"orderId": "20211000101620150201",
"rightsDetail": [
{
"snCode": "111111111xxxxxx"
}
]
}
}
返回参数,易百后台===>中件间
- 可能返回活动产品选项,需要进行选择
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| traceNo | String | 是 | 收银机流水号 | 不允许重复,必须以yyyyMMdd(当天)作为流水号开头+递增序列 |
| orderNo | String | 是 | 交易订单号 | 易百生成 |
| transDate | String | 是 | 交易时间 | 格式为:yyyyMMddHHmmss |
| returnCode | String | 是 | 返回码 | 00表示交易成功,其他表示失败 |
| returnDesc | String | 是 | 返回信息 | 交易结果描述或错误原因 |
| paidAmount | Price | 是 | 支付成功总金额 | 单位:元 |
| receiptAmount | Price | 否 | 商户实收金额 | 单位:元 |
| invoiceAmount | Price | 否 | 商户开票金额 | 单位:元 |
| exchangeRate | Number(8,6) | 否 | 汇率 | 1外币等于多少人民币 |
| currency | String | 否 | 货币类型 | 例如:CNY |
| discountCode | String | 否 | 折扣编码 | 由收银机分配,用于入账计折扣类型 |
| discountNum | Number | 否 | 固定金额折扣数量 | 用于入账计折扣类型的数量 |
| tenderCode | String | 否 | 支付方式编码 | 由收银机分配,用于入账计支付方式 |
| remainTimes | Number | 是 | 券码当前可用次数 | 如果有限制每天使用多少次,代表当天可使用次数 |
| activityProductNo | String | 否 | 活动产品编号 | |
| activityProductName | String | 否 | 活动产品名称 | |
| goodsDetail | List<goodsDetail> | 否 | 折抵产品明细 | 返回后台已抵扣成功的产品明细 |
| fundChannel | List<fundChannel> | 否 | 资金渠道 | |
| printDetail | Object<printDetail> | 否 | 打印信息 | 如需要在收银小票上打印信息时必填 |
| memberDetail | Object<memberDetail> | 否 | 会员信息 | 返回本次交易的会员信息 |
| voucherDetail | List<voucherDetail> | 否 | 优惠券信息 | 返回本次交易的优惠券信息 |
| remainAmount | Number | 否 | 消费后卡余额 | 单位:元 |
| extendsData | Object<extendsData> | 否 | 扩展信息 | 与ebuy约定 |
| transType | String | 是 | 标识当笔交易类型 | 下发alipayQrpay 表示 支付宝二维码支付业务 |
返回报文举例
{
"traceNo": "9900000910001011720150201",
"orderNo": "171698602301",
"transDate": "20161231120533",
"returnCode": "00",
"returnDesc": "SUCCESS",
"paidAmount": 40.8,
"receiptAmount": 40.8,
"invoiceAmount": 40.8,
"exchangeRate": 6.0939,
"currency": "CNY",
"discountCode": "0001",
"discountNum": 20,
"tenderCode": "8001",
"activityProductNo": "2016123102",
"activityProductName": "支付宝支付",
"transType": "alipayQrpay",
"goodsDetail": [
{
"goodsCategory": "001",
"goodsId": "P00001",
"goodsName": "牙膏",
"price": 8,
"quantity": 2,
"rebateCode": "000",
"activityNo": "2016123101",
"memo": "100123456789"
},
{
"goodsCategory": "101",
"goodsId": "P00002",
"goodsName": "洗发水",
"price": 24.8,
"quantity": 1,
"rebateCode": "000",
"activityNo": "2016123101",
"memo": "100123456789"
}
],
"fundChannel": [
{
"channelNo": "001",
"channelName": "用户实付现金",
"channelAmount": "20.8"
},
{
"channelNo": "002",
"channelName": "用户积分支付",
"channelAmount": "20"
}
],
"printDetail": {
"cardNo64": "622562****8888",
"bank": "中国银行",
"paymentOrderNo": "201612315689412157458787",
"paymentUser": "139****@163.com",
"pointSale": "20000",
"qrCode1": "htt://www.api-location-url.com/url",
"qrCode2": "",
"qrCode3": "",
"barCode1": "12345679",
"barCode2": "",
"barCode3": ""
},
"memberDetail": {
"memberId": "M000001545",
"memberName": "TONY",
"grade": "1",
"status": "1",
"balance": 1000,
"pointBalance": 30000
},
"voucherDetail": [
{
"voucherId": "001",
"voucherName": "现金优惠券",
"voucherType": "现金",
"voucherCode": "123456789",
"channelAmount": "20.8"
},
{
"voucherId": "002",
"voucherName": "买一赠一优惠券",
"voucherType": "买赠",
"voucherCode": "1232136781",
"channelAmount": "20.8"
}
]
}
交易结果查询
接口用途
- 在中间件未收到后台返回时,可以调用此接口查询原交易的状态。
- “电子凭证批量核销ecouponsVerify”交易目前不支持查询
接口地址
https://ebuywebposp-test.e-buychina.com/ebuyweb-posp/api/inquiry
action
inquiry
请求参数,中件间===>易百后台
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| traceNo | String | 是 | 收银机流水号 | 不允许重复,必须以yyyyMMdd(当天)作为流水号开头+递增序列 |
| onlineTid | String | 否 | 线上对接使用的统一终端号 | 对接前需提前和易百技术沟通 |
| originalTraceNo | String | 是 | 原收银机流水号 | 传入需要查询的原交易收银机流水号 |
| originalDate | String | 否 | 原交易日期 | 传入需要查询的原交易日期,不传默认为当天格式为yyyyMMdd |
请求报文举例
{
"traceNo": "9900000910001014320150201",
"originalTraceNo": "9900000910001014220150201",
"originalDate": "20170912"
}
返回参数,易百后台===>中件间
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| traceNo | String | 是 | 收银机流水号 | 不允许重复,必须以yyyyMMdd(当天)作为流水号开头+递增序列 |
| orderNo | String | 是 | 交易订单号 | 单位:元 |
| transDate | String | 是 | 交易时间 | 格式为:yyyyMMddHHmmss |
| returnCode | String | 是 | 返回码 | 00表示交易成功,其他表示失败 |
| returnDesc | String | 是 | 返回信息 | 交易结果描述或错误原因 |
| paidAmount | Price | 是 | 支付成功总金额 | 单位:元 |
| receiptAmount | Price | 否 | 商户实收金额 | 单位:元 |
| invoiceAmount | Price | 否 | 商户开票金额 | 单位:元 |
| exchangeRate | Number(8,6) | 否 | 汇率 | 1外币等于多少人民币 |
| currency | String | 否 | 货币类型 | 例如:CNY |
| discountCode | String | 否 | 折扣编码 | 由收银机分配,用于入账计折扣类型 |
| discountNum | Number | 否 | 固定金额折扣数量 | 用于入账计折扣类型的数量 |
| tenderCode | String | 否 | 支付方式编码 | 由收银机分配,用于入账计支付方式 |
| activityProductNo | String | 否 | 活动产品编号 | |
| activityProductName | String | 否 | 活动产品名称 | |
| needSameCard | Boolean | 否 | 同一张卡支付 | 如满额立减类活动,需要同一张银行卡支付剩余金额 |
| goodsDetail | List<goodsDetail> | 否 | 折抵产品明细 | 返回后台已抵扣成功的产品明细 |
| fundChannel | List<fundChannel> | 否 | 资金渠道 | |
| printDetail | Object<printDetail> | 否 | 打印信息 | 如需要在收银小票上打印信息时必填 |
| memberDetail | Object<memberDetail> | 否 | 会员信息 | 返回本次交易的会员信息 |
| voucherDetail | List<voucherDetail> | 否 | 优惠券信息 | 返回本次交易的优惠券信息 |
| extendsData | Object<extendsData> | 否 | 扩展信息 | 与ebuy约定 |
| transType | String | 是 | 标识当笔交易类型 | 下发alipayQrpay 表示 支付宝二维码支付业务 |
返回报文举例
{
"traceNo": "9900000910001014420150201",
"orderNo": "171698602301",
"transDate": "20161231120533",
"returnCode": "00",
"returnDesc": "SUCCESS",
"paidAmount": 40.8,
"receiptAmount": 40.8,
"invoiceAmount": 40.8,
"exchangeRate": 6.0939,
"currency": "CNY",
"discountCode": "0001",
"discountNum": 20,
"tenderCode": "8001",
"activityProductNo": "2016123102",
"activityProductName": "支付宝支付",
"transType": "alipayQrpay",
"needSameCard": true,
"goodsDetail": [
{
"goodsCategory": "001",
"goodsId": "P00001",
"goodsName": "牙膏",
"price": 8,
"quantity": 2,
"rebateCode": "000",
"activityNo": "2016123101",
"memo": "100123456789"
},
{
"goodsCategory": "101",
"goodsId": "P00002",
"goodsName": "洗发水",
"price": 24.8,
"quantity": 1,
"rebateCode": "000",
"activityNo": "2016123101",
"memo": "100123456789"
}
],
"fundChannel": [
{
"channelNo": "001",
"channelName": "用户实付现金",
"channelAmount": "20.8"
},
{
"channelNo": "002",
"channelName": "用户积分支付",
"channelAmount": "20"
}
],
"printDetail": {
"cardNo64": "622562****8888",
"bank": "中国银行",
"paymentOrderNo": "201612315689412157458787",
"pointSale": "20000",
"qrCode1": "htt://www.api-location-url.com/url",
"qrCode2": "",
"qrCode3": "",
"barCode1": "12345679",
"barCode2": "",
"barCode3": ""
},
"memberDetail": {
"memberId": "M000001545",
"memberName": "TONY",
"grade": "1",
"status": "1",
"balance": 1000,
"pointBalance": 30000
},
"voucherDetail": [
{
"voucherId": "001",
"voucherName": "现金优惠券",
"voucherType": "现金",
"voucherCode": "123456789",
"channelAmount": "20.8"
},
{
"voucherId": "002",
"voucherName": "买一赠一优惠券",
"voucherType": "买赠",
"voucherCode": "1232136781",
"channelAmount": "20.8"
}
]
}
支持查询的交易
- cardPayment
- cardRedemption
- qrcodeSale
当日撤销
接口用途
- 需要对原交易整体撤销时,可以在原交易的同一天调用此接口。
接口地址
https://ebuywebposp-test.e-buychina.com/ebuyweb-posp/api/void
action
void
请求参数,中间件===>易百后台
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| traceNo | String | 是 | 收银机流水号 | 不允许重复,必须以yyyyMMdd(当天)作为流水号开头+递增序列 |
| onlineTid | String | 否 | 线上对接使用的统一终端号 | 对接前需提前和易百技术沟通 |
| originalTraceNo | String | 是 | 原收银机流水号 | 传入需要撤销的原交易收银机流水号 |
| isRollback | Boolean | 是 | 标识本次请求是否为冲正交易(中间件发起) | 冲正发起需要另起线程并且先返回收银机交易失败结果,再异步冲正 |
| acquirer | String | 否 | 收单机构 | 如:citicCashpay表示中信收单,如果收单撤销是必填的 |
| cardInfo | Object<cardInfo> | 否 | 卡信息 | 卡支付类交易需要填入原交易卡信息 |
请求报文举例
{
"traceNo": "9900000910001013220150201",
"originalTraceNo": "9900000910001013120150201",
"isRollback": false,
"acquirer": "citicCashpay",
"cardInfo": {
"cardNo": "",
"password": "",
"valid": "",
"track1": "",
"track2": "",
"track3": "",
"cardSn": "",
"icData": ""
}
}
返回参数,易百后台===>中间件
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| traceNo | String | 是 | 收银机流水号 | 不允许重复,必须以yyyyMMdd(当天)作为流水号开头+递增序列 |
| orderNo | String | 是 | 交易订单号 | |
| transDate | String | 是 | 交易时间 | 格式为:yyyyMMddHHmmss |
| returnCode | String | 是 | 返回码 | 00表示交易成功,其他表示失败 |
| returnDesc | String | 是 | 返回信息 | 交易结果描述或错误原因 |
| fundChannel | List<fundChannel> | 否 | 资金渠道 | |
| printDetail | Object<printDetail> | 否 | 打印信息 | 如需要在收银小票上打印信息时必填 |
| memberDetail | Object<memberDetail> | 否 | 会员信息 | 返回本次交易的会员信息 |
| voucherDetail | List<voucherDetail> | 否 | 优惠券信息 | 返回本次交易的优惠券信息 |
| cashOrderNo | String | 否 | 收单原流水号 | 收单撤销时返回 |
| cashBank | String | 否 | 收单机构标识 | 收单撤销时返回 |
| purchaseOrder | List<purchaseOrder> | 否 | 收单签购单信息 | 签购单信息 |
返回报文举例
{
"traceNo": "9900000910001013420150201",
"orderNo": "171698602301",
"cashOrderNo": "000025",
"cashBank": "40",
"transDate": "20161231120533",
"returnCode": "00",
"returnDesc": "SUCCESS",
"fundChannel": [
{
"channelNo": "001",
"channelName": "用户实付现金",
"channelAmount": "20.8"
},
{
"channelNo": "002",
"channelName": "用户积分支付",
"channelAmount": "20"
}
],
"printDetail": {
"cardNo64": "622562****8888",
"bank": "中信银行",
"paymentOrderNo": "201612315689412157458787",
"pointSale": "20000",
"qrCode1": "htt://www.api-location-url.com/url",
"qrCode2": "",
"qrCode3": "",
"barCode1": "12345679",
"barCode2": "",
"barCode3": ""
},
"memberDetail": {
"memberId": "M000001545",
"memberName": "TONY",
"grade": "1",
"status": "1",
"balance": 1000,
"pointBalance": 30000
},
"voucherDetail": [
{
"voucherId": "001",
"voucherName": "现金优惠券",
"voucherType": "现金",
"voucherCode": "123456789",
"channelAmount": "20.8"
},
{
"voucherId": "002",
"voucherName": "买一赠一优惠券",
"voucherType": "买赠",
"voucherCode": "1232136781",
"channelAmount": "20.8"
}
]
}
支持撤销的交易
- cardPayment
- cardRedemption
- qrcodeSale
隔日退款
接口用途
- 用户需要退款时,可以调用此接口,支持全额或部分退款(依赖支付机构的接口)。
- 不支持券核销类交易的退款,建议调用“当日撤销void”来支持
接口地址
https://ebuywebposp-test.e-buychina.com/ebuyweb-posp/api/refund
action
refund
请求参数,中间件===>易百后台
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| traceNo | String | 是 | 收银机流水号 | 不允许重复,必须以yyyyMMdd(当天)作为流水号开头+递增序列 |
| onlineTid | String | 否 | 线上对接使用的统一终端号 | 对接前需提前和易百技术沟通 |
| originalTraceNo | String | 是 | 原收银机流水号 | 传入需要退款的原交易收银机流水号 |
| originalDate | String | 否 | 原交易日期 | 传入需要退款的原交易日期,不传默认为当天格式为yyyyMMdd |
| refundAmount | Price | 是 | 本次退款金额 | 单位:元 |
| acquirer | String | 否 | 收单机构 | 如:citicCashpay表示中信收单,如果收单撤销是必填的 |
| cardInfo | Object<cardInfo> | 否 | 卡信息 | 卡支付类交易需要填入原交易卡信息 |
请求报文举例
{
"traceNo": "9900000910001013920150201",
"originalTraceNo": "9900000910001013820150201",
"originalDate": "20170912",
"refundAmount": 40.8,
"acquirer": "citicCashpay",
"cardInfo": {
"cardNo": "",
"password": "",
"valid": "",
"track1": "",
"track2": "",
"track3": "",
"cardSn": "",
"icData": ""
}
}
返回参数,易百后台===>中间件
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| traceNo | String | 是 | 收银机流水号 | 不允许重复,必须以yyyyMMdd(当天)作为流水号开头+递增序列 |
| orderNo | String | 是 | 交易订单号 | |
| transDate | String | 是 | 交易时间 | 格式为:yyyyMMddHHmmss |
| returnCode | String | 是 | 返回码 | 00表示交易成功,其他表示失败 |
| returnDesc | String | 是 | 返回信息 | 交易结果描述或错误原因 |
| refundAmount | Price | 是 | 退款成功总金额 | 单位:元 |
| fundChannel | List<fundChannel> | 否 | 资金渠道 | |
| printDetail | Object<printDetail> | 否 | 打印信息 | 如需要在收银小票上打印信息时必填 |
| memberDetail | Object<memberDetail> | 否 | 会员信息 | 返回本次交易的会员信息 |
| voucherDetail | List<voucherDetail> | 否 | 优惠券信息 | 返回本次交易的优惠券信息 |
| cashOrderNo | String | 否 | 收单原交易订单号 | 收单退款时返回 |
| cashBank | String | 否 | 收单机构标识 | 收单退款时返回 |
| purchaseOrder | List<purchaseOrder> | 否 | 收单签购单信息 | 签购单信息 |
返回报文举例
{
"traceNo": "9900000910001014020150201",
"orderNo": "171698602301",
"cashOrderNo": "000025",
"cashBank": "40",
"transDate": "20161231120533",
"returnCode": "00",
"returnDesc": "SUCCESS",
"refundAmount": 40.8,
"fundChannel": [
{
"channelNo": "001",
"channelName": "用户实付现金",
"channelAmount": "20.8"
},
{
"channelNo": "002",
"channelName": "用户积分支付",
"channelAmount": "20"
}
],
"printDetail": {
"cardNo64": "622562****8888",
"bank": "中信银行",
"paymentOrderNo": "201612315689412157458787",
"pointSale": "20000",
"qrCode1": "htt://www.api-location-url.com/url",
"qrCode2": "",
"qrCode3": "",
"barCode1": "12345679",
"barCode2": "",
"barCode3": ""
},
"memberDetail": {
"memberId": "M000001545",
"memberName": "TONY",
"grade": "1",
"status": "1",
"balance": 1000,
"pointBalance": 30000
},
"voucherDetail": [
{
"voucherId": "001",
"voucherName": "现金优惠券",
"voucherType": "现金",
"voucherCode": "123456789",
"channelAmount": "20.8"
},
{
"voucherId": "002",
"voucherName": "买一赠一优惠券",
"voucherType": "买赠",
"voucherCode": "1232136781",
"channelAmount": "20.8"
}
]
}
支持退款的交易
- cardPayment
- cardRedemption
- qrcodeSale
撤销或退款结果查询(接口处于设计开发中请勿对接)
接口用途
- 在调用方未收到撤销或退款的后台返回时,可以调用此接口查询原撤销或退款交易的状态。
接口地址
https://ebuywebposp-test.e-buychina.com/ebuyweb-posp/api/reverseInquiry
action
reverseInquiry
请求参数,中件间===>易百后台
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| traceNo | String | 是 | 收银机流水号 | 不允许重复,必须以yyyyMMdd(当天)作为流水号开头+递增序列 |
| originalTraceNo | String | 是 | 原收银机流水号 | 传入需要查询的原交易收银机流水号 |
请求报文举例
{
"traceNo": "9900000910001014320150201",
"originalTraceNo": "9900000910001014220150201"
}
返回参数,易百后台===>中件间
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| traceNo | String | 是 | 收银机流水号 | 不允许重复,必须以yyyyMMdd(当天)作为流水号开头+递增序列 |
| orderNo | String | 是 | 交易订单号 | 单位:元 |
| transDate | String | 是 | 交易时间 | 格式为:yyyyMMddHHmmss |
| returnCode | String | 是 | 返回码 | 00表示交易成功,其他表示失败 |
| returnDesc | String | 是 | 返回信息 | 交易结果描述或错误原因 |
| paidAmount | Price | 是 | 支付成功总金额 | 单位:元 |
| receiptAmount | Price | 否 | 商户实收金额 | 单位:元 |
| invoiceAmount | Price | 否 | 商户开票金额 | 单位:元 |
| refundAmount | Price | 否 | 退款金额 | 单位:元 查询成功时会有该值返回 |
| activityProductNo | String | 否 | 活动产品编号 | |
| activityProductName | String | 否 | 活动产品名称 | |
| printDetail | Object<printDetail> | 否 | 打印信息 | 如需要在收银小票上打印信息时必填 |
| extendsData | Object<extendsData> | 否 | 扩展信息 | 与ebuy约定 |
返回报文举例
{
"extendsData": {},
"returnCode": "00",
"invoiceAmount": 0,
"receiptAmount": 0,
"printDetail": {
"content": "00001F0E652D42757920B5E7D7D3C6BED6A42F0F726576657273652D696E7175697279"
},
"activityProductNo": "00000000503050",
"transDate": "20220803162322",
"activityProductName": "支付宝",
"orderNo": "192070117798",
"refundAmount": 0.01,
"paidAmount": 0,
"traceNo": "20220803162317100000000SH20501",
"uuid": "d577d15662f84ce2bf4c2d928e7c21e5",
"returnDesc": "交易成功",
"step": "01",
"rpcContext": "10.10.3.106:62774-->10.10.3.106:30200"
}
支持查询的交易
- qrcodeSale(扫码支付类交易,目前仅支付宝2.0)
卡余额或权益查询
接口用途
- 银行卡积分余额查询
- 银行卡余额查询
- 银行卡权益次数查询
- 预付费卡余额查询
- 会员卡积分或余额查询
接口地址
https://ebuywebposp-test.e-buychina.com/ebuyweb-posp/api/balance
action
balance
请求参数,中间件===>易百后台
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| traceNo | String | 是 | 收银机流水号 | 不允许重复,必须以yyyyMMdd(当天)作为流水号开头+递增序列 |
| onlineTid | String | 否 | 线上对接使用的统一终端号 | 对接前需提前和易百技术沟通 |
| activityProductNo | String | 否 | 活动产品编号 | 二次交互时填写 |
| cardInfo | Object<cardInfo> | 是 | 卡信息 | |
| memberDetail | Object<memberDetail> | 否 | 会员信息 | 会员交易时必填 |
请求报文举例
{
"traceNo": "99000009100010101732123",
"activityProductNo": "HDCP00000000001236",
"cardInfo": {
"cardNo": "",
"password": "",
"valid": "",
"track1": "",
"track2": "",
"track3": "",
"cardSn": "",
"icData": ""
},
"memberDetail": {
"memberId": "M000001545",
"memberName": "TONY",
"grade": "1",
"status": "1",
"balance": 1000.00,
"pointBalance": 30000
}
}
返回参数,易百后台===>中间件
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| traceNo | String | 是 | 收银机流水号 | 不允许重复,必须以yyyyMMdd(当天)作为流水号开头+递增序列 |
| orderNo | String | 是 | 交易订单号 | 单位:元 |
| transDate | String | 是 | 交易时间 | 格式为:yyyyMMddHHmmss |
| returnCode | String | 是 | 返回码 | 00表示交易成功,其他表示失败 |
| returnDesc | String | 是 | 返回信息 | 交易结果描述或错误原因 |
| rightsTimes | Integer | 是 | 权益次数 | 返回可以享受的权益次数 |
| moneyBalance | Price | 是 | 现金余额 | 单位:元 |
| pointBalance | Price | 是 | 积分余额 | 单位:分 |
| printDetail | Object<printDetail> | 否 | 打印信息 | 如需要在收银小票上打印信息时必填 |
| memberDetail | Object<memberDetail> | 否 | 会员信息 | 返回本次交易的会员信息 |
返回报文举例
{
"traceNo": "99000009100010101732123",
"orderNo": "171698602301",
"transDate": "20161231120533",
"returnCode": "00",
"returnDesc": "SUCCESS",
"rightsTimes": 1,
"moneyBalance": 40.8,
"pointBalance": 40000,
"printDetail": {
"cardNo64": "622562****8888",
"bank": "中信银行",
"paymentOrderNo": "201612315689412157458787",
"pointSale": "0",
"qrCode1": "htt://www.api-location-url.com/url",
"qrCode2": "",
"qrCode3": "",
"barCode1": "12345679",
"barCode2": "",
"barCode3": ""
},
"memberDetail": {
"memberId": "M000001545",
"memberName": "TONY",
"grade": "1",
"status": "1",
"balance": 1000.00,
"pointBalance": 30000
}
}
电子凭证查询
接口用途
- 查询电子凭证的产品信息,可抵用的金额以及所属的活动,支持易百自有电子凭证和第三方电子凭证。
接口地址
https://ebuywebposp-test.e-buychina.com/ebuyweb-posp/api/ecouponInquiry
action
ecouponInquiry
请求参数,中间件===>易百后台
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| traceNo | String | 是 | 收银机流水号 | 不允许重复,必须以yyyyMMdd(当天)作为流水号开头+递增序列 |
| onlineTid | String | 否 | 线上对接使用的统一终端号 | 对接前需提前和易百技术沟通 |
| qrcode | String | 是 | 电子凭证号 | 要查询的电子凭证号 |
请求报文举例
{
"traceNo": "9900000910001013620150201",
"qrcode": "HDCP00000000001235"
}
返回参数,易百后台===>中间件
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| traceNo | String | 是 | 收银机流水号 | 不允许重复,必须以yyyyMMdd(当天)作为流水号开头+递增序列 |
| orderNo | String | 是 | 交易订单号 | 单位:元 |
| transDate | String | 是 | 交易时间 | 格式为:yyyyMMddHHmmss |
| returnCode | String | 是 | 返回码 | 00,C3表示券码可用,其他表示不可用 |
| returnDesc | String | 是 | 返回信息 | 交易结果描述或错误原因 |
| canPayAmount | Price | 是 | 可抵用的总金额 | 单位:元 |
| activityProductNo | String | 否 | 活动产品编号 | 该电子凭证所属的活动产品编号 |
| activityProductName | String | 否 | 活动产品名称 | 该电子凭证所属的活动产品名称 |
| useTimes | int | 否 | 总核销次数 | |
| remainTimes | int | 否 | 剩余可核销次数 | |
| extendsData | Object<extendsData> | 否 | 扩展信息 | 与ebuy约定 |
返回报文举例
{
"traceNo": "9900000910001013720150201",
"orderNo": "171698602301",
"transDate": "20161231120533",
"returnCode": "00",
"returnDesc": "SUCCESS",
"canPayAmount": 40.8,
"activityProductNo": "2016123101",
"activityProductName": "中信365权益",
"useTimes":10,
"remainTimes":7
}
电子凭证预核销
接口用途
- 预核销电子凭证,模拟电子凭证核销交易提前获取核销结果信息;
接口地址
https://ebuywebposp-test.e-buychina.com/ebuyweb-posp/api/ecouponPreVerify
action
ecouponPreVerify
请求参数,中间件===>易百后台
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| traceNo | String | 是 | 收银机流水号 | 不允许重复,必须以yyyyMMdd(当天)作为流水号开头+递增序列 |
| onlineTid | String | 否 | 线上对接使用的统一终端号 | 对接前需提前和易百技术沟通 |
| totalAmount | Price | 是 | 交易总金额 | 单位:元 |
| undiscountAmount | Price | 是 | 不可打折金额 | 单位:元,没有填写0 |
| verifyType | String | 是 | 核销类型 | 请与易百技术确认,枚举值:online为线上场景,offline为线下POS场景 |
| activityProductNo | String | 否 | 活动产品编号 | 二次交互时填写 |
| scene | String | 否 | 支付场景 | 条码:bar_code, 二维码:qr_code |
| orderSubject | String | 否 | 订单标题 | 最长256 |
| orderDescription | String | 否 | 订单描述 | 最长256 |
| qrcode | String | 是 | 二维码内容 | 串号、一维码或二维码内容 |
| goodsDetail | List<goodsDetail> | 否 | 产品明细 | 验证产品明细时必填 |
| memberDetail | Object<memberDetail> | 否 | 会员信息 | 会员支付时必填 |
请求报文举例
{
"traceNo": "9900000910001011320150201",
"totalAmount": 40.8,
"undiscountAmount": 0,
"activityProductNo": "HDCP00000000001234",
"qrcode": "280123121234567890",
"lockTime": "300",
"afterLock": "0",
"goodsDetail": [
{
"goodsCategory": "001",
"goodsId": "P00001",
"goodsName": "牙膏",
"price": 8,
"quantity": 2,
"rebateCode": "000"
},
{
"goodsCategory": "101",
"goodsId": "P00002",
"goodsName": "洗发水",
"price": 24.8,
"quantity": 1,
"rebateCode": "000"
}
],
"memberDetail": {
"memberId": "M000001545",
"memberName": "TONY",
"grade": "1",
"status": "1",
"balance": 1000,
"pointBalance": 30000
}
}
返回参数,易百后台===>中件间
- 可能返回活动产品选项,需要进行选择
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| traceNo | String | 是 | 收银机流水号 | 不允许重复,必须以yyyyMMdd(当天)作为流水号开头+递增序列 |
| orderNo | String | 是 | 交易订单号 | 易百生成 |
| transDate | String | 是 | 交易时间 | 格式为:yyyyMMddHHmmss |
| returnCode | String | 是 | 返回码 | 00表示交易成功,其他表示失败 |
| returnDesc | String | 是 | 返回信息 | 交易结果描述或错误原因 |
| paidAmount | Price | 是 | 支付成功总金额 | 单位:元 |
| receiptAmount | Price | 否 | 商户实收金额 | 单位:元 |
| invoiceAmount | Price | 否 | 商户开票金额 | 单位:元 |
| remainTimes | Number | 是 | 券码当前可用次数 | 如果有限制每天使用多少次,代表当天可使用次数| |
| lockTime | String | 否 | 锁定时间,单位(秒) | 默认:300 |
| afterLock | String | 否 | 锁定和解锁,锁定:1,解锁:0 | 默认:1,锁定返回校验参数 |
| exchangeRate | Number(8,6) | 否 | 汇率 | 1外币等于多少人民币 |
| currency | String | 否 | 货币类型 | 例如:CNY |
| discountCode | String | 否 | 折扣编码 | 由收银机分配,用于入账计折扣类型和折扣金额 |
| discountNum | Number | 否 | 固定金额折扣数量 | 用于入账计折扣类型的数量 |
| tenderCode | String | 否 | 支付方式编码 | 由收银机分配,用于入账计支付方式和入账金额 |
| activityProductNo | String | 否 | 活动产品编号 | |
| activityProductName | String | 否 | 活动产品名称 | |
| goodsDetail | List<goodsDetail> | 否 | 折抵产品明细 | 返回后台已抵扣成功的产品明细 |
| fundChannel | List<fundChannel> | 否 | 资金渠道 | |
| printDetail | Object<printDetail> | 否 | 打印信息 | 如需要在收银小票上打印信息时必填 |
| memberDetail | Object<memberDetail> | 否 | 会员信息 | 返回本次交易的会员信息 |
| voucherDetail | List<voucherDetail> | 否 | 优惠券信息 | 返回本次交易的优惠券信息 |
| extendsData | Object<extendsData> | 否 | 扩展信息 | 与ebuy约定 |
返回报文举例
{
"transDate": "20220726153110",
"returnCode": "00",
"extendsData": {},
"orderNo": "191990113248",
"ecouponsData": [
{
"desc": "操作成功",
"status": "00",
"invoiceAmount": 0,
"code": "10010605284819524875",
"receiptAmount": 10,
"activityProductNo": "00000000503057",
"transType": "whaleAuth",
"activityProductName": "85°C10元代金券",
"goodsDetail": [
{
"goodsSpec": "00",
"goodsId": "A00001",
"activityNo": "EB11060200",
"price": 1000,
"memo": "10010605284819524875",
"quantity": 1
}
],
"totalAmount": 68,
"paidAmount": 10,
"fundChannel": [
{
"channelName": "用户实际支付",
"channelAmount": 0,
"channelNo": "user_real_money"
}
]
},
{
"desc": "操作成功",
"status": "00",
"invoiceAmount": 0,
"code": "10010605171871824601",
"receiptAmount": 10,
"activityProductNo": "00000000503057",
"transType": "whaleAuth",
"activityProductName": "85°C10元代金券",
"goodsDetail": [
{
"goodsSpec": "00",
"goodsId": "A00001",
"activityNo": "EB11060200",
"price": 1000,
"memo": "10010605171871824601",
"quantity": 1
}
],
"totalAmount": 68,
"paidAmount": 10,
"fundChannel": [
{
"channelName": "用户实际支付",
"channelAmount": 0,
"channelNo": "user_real_money"
}
]
}
],
"traceNo": "20220726153107100000000SH20501",
"uuid": "f3c32fa32ccb4ccd8f38c36800741682",
"returnDesc": "请求成功"
}
电子凭证批量核销
接口用途
- 批量核销电子凭证,多张电子凭证核销交易;
接口地址
https://ebuywebposp-test.e-buychina.com/ebuyweb-posp/api/ecouponsVerify
action
ecouponsVerify
请求参数,中间件===>易百后台
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| traceNo | String | 是 | 收银机流水号 | 不允许重复,必须以yyyyMMdd(当天)作为流水号开头+递增序列 |
| onlineTid | String | 否 | 线上对接使用的统一终端号 | 对接前需提前和易百技术沟通 |
| totalAmount | Price | 是 | 交易总金额 | 单位:元 |
| undiscountAmount | Price | 是 | 不可打折金额 | 单位:元,没有填写0 |
| verifyType | String | 是 | 核销类型 | 请与易百技术确认,枚举值:online为线上场景,offline为线下POS场景 |
| scene | String | 否 | 支付场景 | 条码:bar_code, 二维码:qr_code |
| orderSubject | String | 否 | 订单标题 | 最长256 |
| orderDescription | String | 否 | 订单描述 | 最长256 |
| ecoupons | List<codeInfo> | 是 | 批量核销劵码 | 批量核销必填,一次最多10张券 |
| goodsDetail | List<goodsDetail> | 否 | 产品明细 | 验证产品明细时必填 |
| memberDetail | Object<memberDetail> | 否 | 会员信息 | 会员支付时必填 |
请求报文举例
{
"traceNo": "99000009100010101732123",
"totalAmount": 40.8,
"undiscountAmount": 0,
"activityProductNo": "HDCP00000000001234",
"qrcode": "280123121234567890",
"lockTime": "300",
"afterLock": "0",
"ecoupons": [
{
"code": "10019041500000071521",
"ext": "test"
}
],
"goodsDetail": [
{
"goodsCategory": "001",
"goodsId": "P00001",
"goodsName": "牙膏",
"price": 8,
"quantity": 2,
"rebateCode": "000"
},
{
"goodsCategory": "101",
"goodsId": "P00002",
"goodsName": "洗发水",
"price": 24.8,
"quantity": 1,
"rebateCode": "000"
}
],
"memberDetail": {
"memberId": "M000001545",
"memberName": "TONY",
"grade": "1",
"status": "1",
"balance": 1000,
"pointBalance": 30000
}
}
返回参数,易百后台===>中件间
- 可能返回活动产品选项,需要进行选择
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| traceNo | String | 是 | 收银机流水号 | 不允许重复 |
| orderNo | String | 是 | 交易订单号 | 易百生成 |
| transDate | String | 是 | 交易时间 | 格式为:yyyyMMddHHmmss |
| returnCode | String | 是 | 返回码 | 00表示本次请求成功,并不代表所有码都核销成功 |
| returnDesc | String | 是 | 返回信息 | 交易结果描述或错误原因 |
| ecouponsData | List<ecouponsData> | 是 | 返回批量核销结果 | 对应批量核销劵 |
| extendsData | Object<extendsData> | 是 | 扩展信息 | 与ebuy约定 allSuccess=false表示本次核销有券码核销失败 |
返回报文举例
{
"transDate": "20220726153110",
"returnCode": "00",
"extendsData": {},
"orderNo": "191990113248",
"invoiceAmount": 0,
"ecouponsData": [
{
"returnCode": "00",
"desc": "操作成功",
"status": "00",
"invoiceAmount": 0,
"code": "10010605284819524875",
"receiptAmount": 10,
"activityProductNo": "00000000503057",
"transType": "whaleAuth",
"activityProductName": "85°C10元代金券",
"goodsDetail": [
{
"goodsSpec": "00",
"goodsId": "A00001",
"activityNo": "EB11060200",
"price": 1000,
"memo": "10010605284819524875",
"quantity": 1
}
],
"totalAmount": 68,
"paidAmount": 10,
"fundChannel": [
{
"channelName": "用户实际支付",
"channelAmount": 0,
"channelNo": "user_real_money"
}
]
},
{
"returnCode": "00",
"desc": "操作成功",
"status": "00",
"invoiceAmount": 0,
"code": "10010605171871824601",
"receiptAmount": 10,
"activityProductNo": "00000000503057",
"transType": "whaleAuth",
"activityProductName": "85°C10元代金券",
"goodsDetail": [
{
"goodsSpec": "00",
"goodsId": "A00001",
"activityNo": "EB11060200",
"price": 1000,
"memo": "10010605171871824601",
"quantity": 1
}
],
"totalAmount": 68,
"paidAmount": 10,
"fundChannel": [
{
"channelName": "用户实际支付",
"channelAmount": 0,
"channelNo": "user_real_money"
}
]
}
],
"paidAmount": 0,
"traceNo": "20220726153107100000000SH20501",
"uuid": "f3c32fa32ccb4ccd8f38c36800741682",
"receiptAmount": 0,
"returnDesc": "请求成功",
"step": "01"
}
批量核销结果查询
接口用途
- 当调用批量核销接口超时未收到服务端返回时,可以调本接口来查询批量核销结果;
接口地址
- https://ebuywebposp-test.e-buychina.com/ebuyweb-posp/api/batchCodeVerifyQuery
action
batchCodeVerifyQuery
请求参数,中间件===>易百后台
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| traceNo | String | 是 | 收银机流水号 | 不允许重复,必须以yyyyMMdd(当天)作为流水号开头+递增序列 |
| onlineTid | String | 否 | 线上对接使用的统一终端号 | 对接前需提前和易百技术沟通 |
| originalTraceNo | String | 是 | 原收银机流水号 | 传入需要查询的原交易收银机流水号 |
| originalDate | String | 否 | 原交易日期 | 传入需要查询的原交易日期,不传默认为当天格式为yyyyMMdd |
请求报文举例
{
"traceNo": "9900000910001014320150201",
"originalTraceNo": "9900000910001014220150201",
"originalDate": "20170912"
}
返回参数,易百后台===>中件间
- 可能返回活动产品选项,需要进行选择
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| traceNo | String | 是 | 收银机流水号 | 不允许重复 |
| orderNo | String | 是 | 交易订单号 | 易百生成 |
| transDate | String | 是 | 交易时间 | 格式为:yyyyMMddHHmmss |
| returnCode | String | 是 | 返回码 | 00表示本次请求成功,并不代表所有码都核销成功 |
| returnDesc | String | 是 | 返回信息 | 交易结果描述或错误原因 |
| ecouponsData | List<ecouponsData> | 是 | 返回批量核销结果 | 对应批量核销劵 |
| extendsData | Object<extendsData> | 是 | 扩展信息 | 与ebuy约定 allSuccess=false表示本次核销有券码核销失败 |
返回报文举例
{
"transDate": "20220726153110",
"returnCode": "00",
"extendsData": {},
"orderNo": "191990113248",
"ecouponsData": [
{
"desc": "操作成功",
"status": "00",
"invoiceAmount": 0,
"code": "10010605284819524875",
"receiptAmount": 10,
"activityProductNo": "00000000503057",
"transType": "whaleAuth",
"activityProductName": "85°C10元代金券",
"totalAmount": 68,
"paidAmount": 10,
"fundChannel": [
{
"channelName": "用户实际支付",
"channelAmount": 0,
"channelNo": "user_real_money"
}
]
},
{
"desc": "操作成功",
"status": "00",
"invoiceAmount": 0,
"code": "10010605171871824601",
"receiptAmount": 10,
"activityProductNo": "00000000503057",
"transType": "whaleAuth",
"activityProductName": "85°C10元代金券",
"totalAmount": 68,
"paidAmount": 10,
"fundChannel": [
{
"channelName": "用户实际支付",
"channelAmount": 0,
"channelNo": "user_real_money"
}
]
}
],
"traceNo": "20220726153107100000000SH20501",
"uuid": "f3c32fa32ccb4ccd8f38c36800741682",
"returnDesc": "请求成功"
}
会员资产查询接口
接口用途
- 通过身份信息查询会员资产
接口地址
https://ebuywebposp-test.e-buychina.com/ebuyweb-posp/api/vipassets
action
vipassets
请求参数,中间件===>易百后台
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| accountInfo | Object<accountInfo> | 是 | 用户身份信息,密文 | aes256加密,易百提供密钥。 |
| onlineTid | String | 否 | 线上对接使用的统一终端号 | 对接前需提前和易百技术沟通 |
| platformCode | String | 是 | 平台编码,易百提供(天猫(Tmall),淘宝(TaoBao),拼多多(PDD),京东(JD)) |
请求报文举例
{
"accountInfo": "lmANPRMeymgFQ+0D2N7nFMi1MADWvh3FPkQ0JEyYEBGiLhpquBx0mtigUpfPosWknHj/HzQLC1dnd6wlXuoJPQ==",
"platformCode": "Tmall"
}
返回参数,易百后台===>中间件
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| vipName | String | 否 | 收银机流水号 | 不允许重复,必须以yyyyMMdd(当天)作为流水号开头+递增序列 |
| vipLevel | String | 否 | 交易订单号 | 单位:元 |
| point | Object<point> | 否 | 会员积分 | |
| vouchers | List<vouchers> | 否 | 会员电子券 | |
| returnCode | String | 是 | 返回码 | 00表示交易成功,其他表示失败 |
| returnDesc | String | 是 | 返回信息 | 交易结果描述或错误原因 |
返回报文举例
{
"vipName": "至尊会员",
"vipLevel": "7",
"returnCode": "00",
"returnDesc": "SUCCESS",
"point": {
"points": 120000,
"deductileAmount": 2400,
"validDate": "20210625",
"invalidPoints": 22000
},
"vouchers": {
"voucherType": "coupon",
"code": "10032345433321232345",
"faceAmount": "10",
"validDate": "20210120-20210225",
"voucherStatus": "00",
"voucherStatusDesc": "可用",
"tenderDiscountCode": 123|97,
"defaultGoodsId": "P00001",
"goodsDetail": [{
"goodsCategory": "001",
"goodsId": "P00001",
"goodsName": "牙膏",
"price": 5,
"quantity": 2
},
{
"goodsCategory": "101",
"goodsId": "P00002",
"goodsName": "洗发水",
"price": 10,
"quantity": 1
}
],
"userInvoiceAmount": 8,
"ebuyInvoiceAmount": 2,
"platformCode": "Tmall",
"activityProductNo": "5837",
"remainTimes": 1,
"totalTimes": 30,
"voucherScope": "{\"merchatVoucherType\":\"sxx\",\"mutualPlatform\":\"EBUY,PDD\",\"dayUseTime\":\"7:00-10:00\",\"mutualType\":\"cash\"}"
}
}
会员集点
接口用途
- 会员集点
接口地址
https://ebuywebposp-test.e-buychina.com/ebuyweb-posp/api/accumulating
action
accumulating
请求参数,中件间===>易百后台
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| traceNo | String | 是 | 收银机流水号 | 不允许重复,必须以yyyyMMdd(当天)作为流水号开头+递增序列 |
| onlineTid | String | 否 | 线上对接使用的统一终端号 | 对接前需提前和易百技术沟通 |
| totalAmount | Price | 是 | 交易总金额 | 单位:元 |
| undiscountAmount | Price | 否 | 不可打折金额 | 单位:元 |
| recogCode | String | 否 | 操作识别代码 | 为006时代表补积星星,为000时代表电子凭证核销,为100时代表电子凭证状态信息查询,为200时代表是核销交易的查询,为001代表集点前置判断 |
| pointDetail | List<pointDetail> | 否 | 集点明细 | 收银机集点时填写,后台集点不填 |
| goodsDetail | List<goodsDetail> | 否 | 产品明细 | 验证产品明细时必填 |
| memberDetail | Object<memberDetail> | 否 | 会员信息 | 会员支付时必填 |
请求报文举例
{
"traceNo": "99000009100010101732123",
"totalAmount": 40.8,
"undiscountAmount": 0,
"recogCode": "006",
"pointDetail": [{
"activityNo": "2016121901",
"points": 100
}, {
"activityNo": "2017100901",
"points": 50
}],
"goodsDetail": [{
"goodsCategory": "001",
"goodsId": "P00001",
"goodsName": "牙膏",
"price": 8,
"quantity": 2,
"rebateCode": "000"
},
{
"goodsCategory": "101",
"goodsId": "P00002",
"goodsName": "洗发水",
"price": 24.8,
"quantity": 1,
"rebateCode": "000"
}
],
"memberDetail": {
"memberId": "M000001545",
"memberName": "TONY",
"grade": "1",
"status": "1",
"balance": 1000.00,
"pointBalance": 30000
}
}
返回参数,易百后台===>中件间
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| traceNo | String | 是 | 收银机流水号 | 不允许重复,必须以yyyyMMdd(当天)作为流水号开头+递增序列 |
| orderNo | String | 是 | 交易订单号 | 易百生成 |
| transDate | String | 是 | 交易时间 | 格式为:yyyyMMddHHmmss |
| returnCode | String | 是 | 返回码 | 00表示交易成功,其他表示失败 |
| returnDesc | String | 是 | 返回信息 | 交易结果描述或错误原因 |
| activityProductNo | String | 否 | 活动产品编号 | |
| activityProductName | String | 否 | 活动产品名称 | |
| printDetail | Object<printDetail> | 否 | 打印信息 | 如需要在收银小票上打印信息时必填 |
| memberDetail | Object<memberDetail> | 否 | 会员信息 | 返回本次交易的会员信息 |
| voucherDetail | List<voucherDetail> | 否 | 优惠券信息 | 返回本次交易的优惠券信息 |
返回报文举例
{
"traceNo": "99000009100010101732123",
"orderNo": "171698602301",
"transDate": "20161231120533",
"returnCode": "00",
"returnDesc": "SUCCESS",
"activityProductNo": "2016123102",
"activityProductName": "圣诞集点活动",
"printDetail": {
"cardNo64": "622562****8888",
"bank": "中国银行",
"paymentOrderNo": "201612315689412157458787",
"pointSale": "20000",
"qrCode1": "htt://www.api-location-url.com/url",
"qrCode2": "",
"qrCode3": "",
"barCode1": "12345679",
"barCode2": "",
"barCode3": ""
},
"memberDetail": {
"memberId": "M000001545",
"memberName": "TONY",
"grade": "1",
"status": "1",
"balance": 1000.00,
"pointBalance": 30000
},
"voucherDetail": [
{
"voucherId": "001",
"voucherName": "现金优惠券",
"voucherType": "现金",
"voucherCode": "123456789",
"channelAmount": "20.8"
},
{
"voucherId": "002",
"voucherName": "买一赠一优惠券",
"voucherType": "买赠",
"voucherCode": "1232136781",
"channelAmount": "20.8"
}
]
}
活动产品选项
当通过卡BIN与码BIN无法确认具体支付渠道时,易百后台会返回活动产品列表,供中间件弹出窗体,让收银人员进行选择,选择项需填入activityProductNo字段后再向易百后台请求支付。返回报文如下:
二次交互的返回参数,易百后台===>收银机
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| traceNo | String | 是 | 收银机流水号 | 不允许重复,必须以yyyyMMdd(当天)作为流水号开头+递增序列 |
| onlineTid | String | 否 | 线上对接使用的统一终端号 | 对接前需提前和易百技术沟通 |
| activityProductList | List<activityProductList> | 是 | 活动产品列表 | 中件间弹出窗体,显示所有选择项 |
二次交互返回报文举例
{
"traceNo": "9900000910001014520150201",
"activityProductList": [
{
"activityProductNo": "HDCP00000000000001",
"activityProductName": "中信银行积分兑换",
"showOrder": "1"
},
{
"activityProductNo": "HDCP00000000000002",
"activityProductName": "中国银行积分兑换",
"showOrder": "2"
}
]
}
收单交易结果通知
接口用途
- 银行卡收单结果通知
接口地址
https://ebuywebposp-test.e-buychina.com/ebuyweb-posp/api/cashPosNotice
action
cashPosNotice
请求参数,POS机===>易百后台
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| onlineTid | String | 否 | 线上对接使用的统一终端号 | 对接前需提前和易百技术沟通 |
| originalTraceNo | String | 是 | 待通知交易的收银机流水号 | 不允许重复,必须以yyyyMMdd(当天)作为流水号开头+递增序列 |
| originalDate | String | 是 | 待通知交易的日期 | 一般为当天,yyyyMMdd |
| originalTransclass | String | 是 | 待通知的交易类型 | sale,void,refund |
| returnCode | String | 是 | 结果码 | 收单机构的返回码 |
| returnDesc | String | 是 | 结果描述 | 收单机构的返回信息 |
| paidAmount | Price | 是 | 收单支付金额 | 收单机构的实收金额 |
| deductAmount | Price | 是 | 收单优惠金额 | 收单机构优惠金额 |
| ifWeb | String | 是 | 是否web接口 | 填“1” |
| bankTid | String | 是 | 收单机构终端号 | 收单机构终端号 |
| bankMid | String | 是 | 收单机构商户号 | 收单机构商户号 |
| bankRefno | String | 是 | 收单机构订单号 | 收单机构订单号 |
| bankSwift | String | 是 | 收单机构流水号 | 收单机构流水号 |
请求报文举例
{
"deductAmount": 0,
"originalDate": "20180314",
"originalTraceNo": "EP18031411351400010686002000651",
"bankMid": "84931005331K003",
"returnCode": "00",
"ifWeb": "1",
"bankTid": "70027420",
"originalTid": "99001061",
"paidAmount": 0.100000,
"originalTransclass": "refund",
"bankRefno": "141135568723",
"returnDesc": "success"
}
返回参数,易百后台===>POS机
| 字段 | 类型 | 是否必填 | 字段意义 | 备注 |
|---|---|---|---|---|
| returnCode | String | 是 | 返回码 | 00表示交易成功,其他表示失败 |
| returnDesc | String | 是 | 返回信息 | 交易结果描述或错误原因 |
返回报文举例
{
"returnDesc": "notice success",
"returnCode": "00"
}