接口介绍
根据接入方订单号或者平台订单号来查询订单开票信息,商户所属服务商必须先支持百望云开票系统,并且商户必须在APP中开通此功能才能够使用,调用此接口会返回订单的开票链接地址(建议生成二维码,消费者使用微信扫一扫),返回字段为:invoice_url,只有交易成功的订单才能够进行开票,如果接口调用的时候填写了接收开票信息的消费者邮箱,则同时会向填写的邮箱发送订单的开票信息。
参数简介
公共参数
参数名 |
参数类型 |
参数介绍 |
是否必填 |
command |
String(32) |
接口名,固定为:open.api.trade.invoice |
是 |
app |
String(32) |
接入商标识 |
是 |
operator_id |
String(32) |
收银员的id,用于标识收款账户 |
是 |
version |
String(16) |
调用的接口版本,固定为:2.0 |
是 |
sign_type |
String(32) |
签名类型 MD5、RSA,默认MD5 |
否 |
request_id |
String(64) |
请求报文ID,唯一定位一次报文请求,由发起方生成,应答方原样返回,uuid生成,全局唯一 |
是 |
request_time |
String(32) |
请求发起时间,格式:yyyyMMddHHmmss,请求发起时间,应答方原样返回 |
是 |
sign |
String(32) |
签名,详见MD5签名、RSA256签名 |
是 |
参数简介
参数名 |
参数类型 |
参数介绍 |
是否必填 |
local_order_no |
String(64) |
接入方的本地订单号 |
特殊可选填,与cb_order_no二选一 |
cb_order_no |
String(64) |
采宝订单号 |
特殊可选填,与local_order_no二选一,优先级: cb_order_no > local_order_no |
email |
String(64) |
消费者邮箱 |
可选 |
返回值说明
公共返回值
参数名 |
所属结构 |
返回值类型 |
返回值说明 |
特殊备注 |
success |
result |
boolean |
标识这次请求是否成功 |
请不要用这个值来判断收银是否成功,订单的结果以返回的order_status为准。 |
error_code |
result |
String |
错误码 |
|
error_msg |
result |
String |
错误码的详细说明 |
|
request_id |
data |
String(64) |
请求报文ID |
|
request_time |
data |
String(32) |
请求发起时间,格式:yyyyMMddHHmmss |
|
response_time |
data |
String(32) |
请求返回时间,格式:yyyyMMddHHmmss |
|
sign |
sign |
String |
签名值 |
具体参照: 接口验签规则 |
数据返回值
参数名 |
所属结构 |
返回值类型 |
返回值说明 |
特殊备注 |
local_order_no |
data |
String(64) |
本地订单号 |
|
cb_order_no |
data |
String(64) |
采宝的订单号,最长64位 |
|
out_order_no |
data |
String(64) |
支付宝、微信等的订单号id,最长64位 |
|
order_status |
data |
String(32) |
订单状态 |
该状态用于判断收银是否成功,具体取值请参照:名词解释 |
total_amount |
data |
long |
订单金额(分为单位) |
|
receive_amount |
data |
long |
收款金额(分为单位) |
|
refund_amount |
data |
long |
退款金额(分为单位) |
|
refund_time |
data |
String(32) |
支付时间,格式:yyyy-MM-dd HH:mm:ss |
|
payment_channel |
data |
String(64) |
支付渠道 |
具体取值请参照:名词解释 |
subject |
data |
String(128) |
订单描述 |
|
remark |
data |
String(128) |
订单备注 |
|
discount_amount |
data |
long |
优惠金额(分为单位) |
|
payment_way |
data |
String(64) |
付款方式 |
具体取值请参照:名词解释 |
pay_time |
data |
String |
支付时间,格式:yyyy-MM-dd HH:mm:ss |
|
buyer_id |
data |
String(64) |
消费者ID,支付宝支付全局唯一,微信支付并不是唯一的(同一个商户,汇付微信、乐刷微信、官方微信,同一个消费者在每个通道下都会有一个ID)请注意微信订单这个buyer_id是消费者在平台通道公众号下的openId |
|
invoice_url |
data |
String(256) |
开票链接 |
返回值举例
{
"data": {
"cb_order_no": "TCAP1809261638005776347450",
"discount_amount": 0,
"local_order_no": "OPENAPI201809261637391813348",
"order_status": "PAY_SUC",
"out_order_no": "2018092622001487730519134546",
"pay_time": "2018-09-26 16:38:33",
"payment_channel": "ALIPAY",
"payment_way": "BARCODE",
"receive_amount": 1,
"refund_amount": 0,
"remark": "test",
"request_id": "7590398f-f926-413a-b806-c47957b174a1",
"request_time": "20180926163718",
"response_time": "20180926164049",
"subject": "test",
"total_amount": 1,
"invoice_url":"http://iot.baiwang.com/xxxxxx"
},
"result": {
"success": true
},
"sign": "RvUoDngA/kiIyxLDqyMjuh22hvDmcQdtRzse2dWgfWl+dHqhwOHeCk/E+OtIO8sA/+onMauVbi++fgTsUimhtFcF9AEb3adq5Mx6Yr9Xzs/WRqlShyeS zqOYAU3u9XtSmDNVhnwO0+7Um7futhvOibSn2HCpecgMKAMXN9Gb5Xue6XNJMkg36RuIDK1Y+a3dBtu1nMxPfN4mPCKhA7vfRJWY4hqz7njKJ9y+ESZL5sWKQgzdsYQ0tZAqNba5NqqnRRE7XuHxJ9XYeqPeDA6MSFqWIEsjL9LaNEEy0PpcHvArKqvr8H2esN50vGxZlCPRRRxjPKCLSQQgfCo3YY8tXw=="
}
Js Demo
http://openapi.caibaopay.com/test/api/v2/invoice.htm