Authored by LUOXC

updart

## 请求地址:
| 环境 | 请求地址 |
| :-- | :-- |
| 测试环境 | http://api-test1.yohops.com:9999 |
| 正式环境 | https://api.yoho.cn |
### 公共请求参数:
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
| :-- | :-- | :-- | :-- | :-- | :-- |
| app_id | String | 是 | 32 | 分配给开发者的应用ID | 2014072300007148 |
| shop_id | String | 是 | 32 | 商户门店编号 | 1001 |
| terminal_id | String | 是 | 32 | 商户机具终端编号 | 1001 |
| operator_id | String | 是 | 28 | 商户操作员编号 | 1001 |
| method | String | 是 | 128 | 接口名称 | yohopay.trade.create |
| charset | String | 否 | 10 | 仅支持utf-8 | utf-8 |
| sign | String | 是 | 256 | 请求参数的签名串,详见签名 | 详见示例 |
| timestamp | String | 是 | 19 | 发送请求的时间,格式"yyyyMMddHHmmss" | 20140724030750 |
### 公共响应参数
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
| :-- | :-- | :-- | :-- | :-- | :-- |
| code | String | 是 | - | 网关返回码,详见文档 | 40004 |
| message | String | 否 | - | 网关返回码描述,详见文档 | Business Failed |
| md5 | String | 是 | - | 相应参数MD5值 fd4ad5fcsa0de589af23234ks1923ks |
| data | JSON | 否 | - | 业务执行成功数据包 |
## yohopay.terminal.register (商户机具终端注册)
商户通过该接口进行机具终端的注册
### 请求参数:
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
| :-- | :-- | :-- | :-- | :-- | :-- |
| method | String | 是 | 128 | 接口名称 | yohopay.terminal.register |
| terminal_name | String | 是 | 64 | 商户机具终端名称 | POS01 |
### 响应参数
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
| :-- | :-- | :-- | :-- | :-- | :-- |
## yohopay.trade.create (统一收单交易创建接口)
商户通过该接口进行交易的创建下单
### 请求参数:
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
| :-- | :-- | :-- | :-- | :-- | :-- |
| method | String | 是 | 128 | 接口名称 | yohopay.trade.create |
| out_trade_no | String | 是 | 64 | 商户订单号,64个字符以内、只能包含字母、数字、下划线;需保证在商户端不重复 |
| notify_url | String | 否 | 256 | 服务器主动通知商户服务器里指定的页面http/https路径。 | http://api.test.xxx.net/atinterface/receive_notify.htm |
| total_amount | Price | 是 | 9 | 订单总金额,单位为元,精确到小数点后两位,取值范围[0.01,100000000] <br />如果同时传入了【打折金额】,【不可打折金额】,【订单总金额】三者,则必须满足如下条件:【订单总金额】=【打折金额】+【不可打折金额】 | 88.88 |
| discountable_amount | Price | 否 | 9 | 可打折金额. 参与优惠计算的金额,单位为元,精确到小数点后两位,取值范围[0.01,100000000] 如果该值未传入,但传入了【订单总金额】,【不可打折金额】则该值默认为【订单总金额】-【不可打折金额】 | 8.88 |
| undiscountable_amount | Price | 否 | 9 | 不可打折金额. 不参与优惠计算的金额,单位为元,精确到小数点后两位,取值范围[0.01,100000000] 如果该值未传入,但传入了【订单总金额】,【打折金额】,则该值默认为【订单总金额】-【打折金额】 | 80.00 |
| subject | String | 是 | 256 | 订单标题 | Iphone6 16G |
| body | String | 可选 | 128 | 对交易或商品的描述 | Iphone6 16G |
| goods_detail | GoodsDetail [] | 否 | - | 商品列表信息.Json格式. 详见:“商品明细说明” | |
| └ goods_id | String | 是 | 32 | 商品的编号 | apple-01 |
| └ goods_name | String | 是 | 256 | 商品名称 | ipad |
| └ quantity | Number | 是 | 10 | 商品数量 | 1 |
| └ price | Price | 是 | 9 | 商品单价,单位为元 | 2000 |
| └ goods_category | String | 否 | 24 | 商品类目 | 34543238 |
| └ body | String | 否 | 1000 | 商品描述信息 | 特价手机 |
| └ show_url | String | 否 | 400 | 商品的展示地址 http://www.xxx.com/xxx.jpg |
### 响应参数
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
| :-- | :-- | :-- | :-- | :-- | :-- |
| out_trade_no | String | 是 | 64 | 商户订单号 | 20150423001001 |
| trade_no | String | 是 | 64 | 有货交易号 | 2015042321001004720200028594 |
| timeout_express | String | 是 | 6 | 该笔订单允许的最晚付款时间,逾期将关闭交易,格式"yyyyMMddHHmmss"。 | 20140724030750 |
## yohopay.trade.query (统一收单线下交易查询)
该接口提供所有支付订单的查询,商户可以通过该接口主动查询订单状态,完成下一步的业务逻辑。 需要调用查询接口的情况: 当商户后台、网络、服务器等出现异常,商户系统最终未接收到支付通知; 调用支付接口后,返回系统错误或未知交易状态情况;
### 请求参数:
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
| :-- | :-- | :-- | :-- | :-- | :-- |
| method | String | 是 | 128 | 接口名称 | yohopay.trade.query |
| out_trade_no | String | 特殊可选 | 64 | 商户订单号 | 20150423001001 |
| trade_no | String | 特殊可选 | 64 | 有货交易号 | 2013112011001004330000121536 |
### 响应参数
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
| :-- | :-- | :-- | :-- | :-- | :-- |
| out_trade_no | String | 必须 | 64 | 商户订单号 | 20150423001001 |
| trade_no | String | 必填 | 64 | 有货交易号 | 2013112011001004330000121536 |
| trade_status | String | 必填 | 32 | 交易状态:WAIT_BUYER_PAY(交易创建,等待买家付款)、TRADE_CLOSED(未付款交易超时关闭,或支付完成后全额退款)、TRADE_SUCCESS(交易支付成功) | TRADE_CLOSED |
| total_amount | Price | 必填 | 11 | 交易的订单金额,单位为元,两位小数。 | 88.88 |
| buyer_pay_amount | Price | 必填 | 11 | 买家实付金额,单位为元,两位小数。 | 15.25 |
| yoho_coin_amount | Price | 选填 | 11 | 有货币支付金额,单位为元,两位小数。 | 10 |
## yohopay.trade.refund (统一收单交易退款接口)
当交易发生之后一段时间内,由于买家或者卖家的原因需要退款时,卖家可以通过退款接口将支付款退还给买家,系统将在收到退款请求并且验证成功之后,按照退款规则将支付款按原路退到买家帐号上。总退款金额不能超过用户实际支付金额
### 请求参数
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
| :-- | :-- | :-- | :-- | :-- | :-- |
| out_trade_no | String | 特殊可选 | 64 | 商户订单号 | 20150320010101001 |
| trade_no | String | 特殊可选 | 64 | 有货交易号 | 2014112611001004680073956707 |
| out_request_no | String | 否 | 64 | 标识一次退款请求,同一笔交易多次退款需要保证唯一,如需部分退款,则此参数必传。 |
| refund_amount | Price 是 | 9 | 需要退款的金额,该金额不能大于订单金额,单位为元,支持两位小数 | 200.12 |
| refund_reason | String | 是 | 256 退款的原因说明 | 正常退款 |
| goods_detail | GoodsDetail [] | 可选 | - | 商品列表信息.Json格式. 详见:“商品明细说明” | |
| └ goods_id | String | 必填 | 32 | 商品的编号 | apple-01 |
| └ goods_name | String | 必填 | 256 | 商品名称 | ipad |
| └ quantity | Number | 必填 | 10 | 商品数量 | 1 |
| └ price | Price | 必填 | 9 | 商品单价,单位为元 | 2000 |
| └ goods_category | String | 可选 | 24 | 商品类目 | 34543238 |
| └ body | String | 可选 | 1000 | 商品描述信息 | 特价手机 |
| └ show_url | String | 可选 | 400 | 商品的展示地址 http://www.xxx.com/xxx.jpg |
| └ refund_reason | String | 是 | 256 退款的原因说明 | 正常退款 |
### 响应参数
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
| :-- | :-- | :-- | :-- | :-- | :-- |
| out_trade_no | String | 必须 | 64 | 商户订单号 | 20150423001001 |
| trade_no | String | 必填 | 64 | 有货交易号 | 2013112011001004330000121536 |
| out_request_no | String | 选填 | 64 本笔退款对应的退款请求号 | 20150320010101001 |
| fund_change | String | 必填 | 1 | 本次退款是否发生了资金变化 | Y |
| refund_total | Price | 必填 | 11 | 退款总金额 | 88.88 |
| refund_buyer_pay | Price | 必填 | 11 退用户实付金额 | 15.25 |
| refund_yoho_coin | Price | 必填 | 11 退用户有货比支付金额 | 10 |
| gmt_refund_pay | Date | 必填 | 32 | 退款支付时间 | 20141127154557 |
## yohopay.trade.fastpay.refund.query (统一收单交易退款查询)
商户可使用该接口查询自已通过yohopay.trade.refund提交的退款请求是否执行成功。
### 请求参数
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
| :-- | :-- | :-- | :-- | :-- | :-- |
| out_trade_no | String | 特殊可选 | 64 | 商户订单号 | 2014112611001004680073956707 |
| trade_no | String | 特殊可选 | 64 | 有货交易号 | 20150320010101001 |
| out_request_no | String | 否 | 64 | 标识一次退款请求,同一笔交易多次退款需要保证唯一,如需部分退款,则此参数必传。 |
### 响应参数
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
| :-- | :-- | :-- | :-- | :-- | :-- |
| out_trade_no | String | 必须 | 64 | 商户订单号 | 20150423001001 |
| trade_no | String | 必填 | 64 | 有货交易号 | 2013112011001004330000121536 |
| out_request_no | String | 选填 | 64 | 本笔退款对应的退款请求号 | 20150320010101001 |
| fund_change | String | 必填 | 1 | 本次退款是否发生了资金变化 | Y |
| refund_total | Price | 必填 | 11 | 退款总金额 | 88.88 |
| refund_buyer_pay | Price | 必填 | 11 | 退用户实付金额 | 15.25 |
| refund_yoho_coin | Price | 必填 | 11 | 退用户有货比支付金额 | 10 |
| gmt_refund_pay | Date | 必填 | 32 | 退款支付时间 | 20141127154557 |
\ No newline at end of file
... ...
## 请求地址:
| 环境 | 请求地址 |
| :-- | :-- |
| 测试环境 | http://api-test1.yohops.com:9999 |
| 正式环境 | https://api.yoho.cn |
### 公共请求参数:
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
| :-- | :-- | :-- | :-- | :-- | :-- |
| app_id | String | 是 | 32 | 分配给开发者的应用ID | 2014072300007148 |
| shop_id | String | 是 | 32 | 商户门店编号 | 1001 |
| terminal_id | String | 是 | 32 | 商户机具终端编号 | 1001 |
| operator_id | String | 是 | 28 | 商户操作员编号 | 1001 |
| method | String | 是 | 128 | 接口名称 | yohopay.trade.create |
| charset | String | 否 | 10 | 仅支持utf-8 | utf-8 |
| sign | String | 是 | 256 | 请求参数的签名串,详见签名 | 详见示例 |
| timestamp | String | 是 | 19 | 发送请求的时间,格式"yyyyMMddHHmmss" | 20140724030750 |
### 公共响应参数
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
| :-- | :-- | :-- | :-- | :-- | :-- |
| code | String | 是 | - | 网关返回码,详见文档 | 40004 |
| message | String | 否 | - | 网关返回码描述,详见文档 | Business Failed |
| md5 | String | 是 | - | 相应参数MD5值 fd4ad5fcsa0de589af23234ks1923ks |
| data | JSON | 否 | - | 业务执行成功数据包 |
## yohopay.terminal.register (商户机具终端注册)
商户通过该接口进行机具终端的注册
### 请求参数:
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
| :-- | :-- | :-- | :-- | :-- | :-- |
| method | String | 是 | 128 | 接口名称 | yohopay.terminal.register |
| terminal_name | String | 是 | 64 | 商户机具终端名称 | POS01 |
### 响应参数
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
| :-- | :-- | :-- | :-- | :-- | :-- |
## yohopay.trade.create (统一收单交易创建接口)
商户通过该接口进行交易的创建下单
### 请求参数:
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
| :-- | :-- | :-- | :-- | :-- | :-- |
| method | String | 是 | 128 | 接口名称 | yohopay.trade.create |
| out_trade_no | String | 是 | 64 | 商户订单号,64个字符以内、只能包含字母、数字、下划线;需保证在商户端不重复 |
| notify_url | String | 否 | 256 | 服务器主动通知商户服务器里指定的页面http/https路径。 | http://api.test.xxx.net/atinterface/receive_notify.htm |
| total_amount | Price | 是 | 9 | 订单总金额,单位为元,精确到小数点后两位,取值范围[0.01,100000000] <br />如果同时传入了【打折金额】,【不可打折金额】,【订单总金额】三者,则必须满足如下条件:【订单总金额】=【打折金额】+【不可打折金额】 | 88.88 |
| discountable_amount | Price | 否 | 9 | 可打折金额. 参与优惠计算的金额,单位为元,精确到小数点后两位,取值范围[0.01,100000000] 如果该值未传入,但传入了【订单总金额】,【不可打折金额】则该值默认为【订单总金额】-【不可打折金额】 | 8.88 |
| undiscountable_amount | Price | 否 | 9 | 不可打折金额. 不参与优惠计算的金额,单位为元,精确到小数点后两位,取值范围[0.01,100000000] 如果该值未传入,但传入了【订单总金额】,【打折金额】,则该值默认为【订单总金额】-【打折金额】 | 80.00 |
| subject | String | 是 | 256 | 订单标题 | Iphone6 16G |
| body | String | 可选 | 128 | 对交易或商品的描述 | Iphone6 16G |
| goods_detail | GoodsDetail [] | 否 | - | 商品列表信息.Json格式. 详见:“商品明细说明” | |
| └ goods_id | String | 是 | 32 | 商品的编号 | apple-01 |
| └ goods_name | String | 是 | 256 | 商品名称 | ipad |
| └ quantity | Number | 是 | 10 | 商品数量 | 1 |
| └ price | Price | 是 | 9 | 商品单价,单位为元 | 2000 |
| └ goods_category | String | 否 | 24 | 商品类目 | 34543238 |
| └ body | String | 否 | 1000 | 商品描述信息 | 特价手机 |
| └ show_url | String | 否 | 400 | 商品的展示地址 http://www.xxx.com/xxx.jpg |
### 响应参数
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
| :-- | :-- | :-- | :-- | :-- | :-- |
| out_trade_no | String | 是 | 64 | 商户订单号 | 20150423001001 |
| trade_no | String | 是 | 64 | 有货交易号 | 2015042321001004720200028594 |
| timeout_express | String | 是 | 6 | 该笔订单允许的最晚付款时间,逾期将关闭交易,格式"yyyyMMddHHmmss"。 | 20140724030750 |
## yohopay.trade.query (统一收单线下交易查询)
该接口提供所有支付订单的查询,商户可以通过该接口主动查询订单状态,完成下一步的业务逻辑。 需要调用查询接口的情况: 当商户后台、网络、服务器等出现异常,商户系统最终未接收到支付通知; 调用支付接口后,返回系统错误或未知交易状态情况;
### 请求参数:
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
| :-- | :-- | :-- | :-- | :-- | :-- |
| method | String | 是 | 128 | 接口名称 | yohopay.trade.query |
| out_trade_no | String | 特殊可选 | 64 | 商户订单号 | 20150423001001 |
| trade_no | String | 特殊可选 | 64 | 有货交易号 | 2013112011001004330000121536 |
### 响应参数
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
| :-- | :-- | :-- | :-- | :-- | :-- |
| out_trade_no | String | 必须 | 64 | 商户订单号 | 20150423001001 |
| trade_no | String | 必填 | 64 | 有货交易号 | 2013112011001004330000121536 |
| trade_status | String | 必填 | 32 | 交易状态:WAIT_BUYER_PAY(交易创建,等待买家付款)、TRADE_CLOSED(未付款交易超时关闭,或支付完成后全额退款)、TRADE_SUCCESS(交易支付成功) | TRADE_CLOSED |
| total_amount | Price | 必填 | 11 | 交易的订单金额,单位为元,两位小数。 | 88.88 |
| buyer_pay_amount | Price | 必填 | 11 | 买家实付金额,单位为元,两位小数。 | 15.25 |
| yoho_coin_amount | Price | 选填 | 11 | 有货币支付金额,单位为元,两位小数。 | 10 |
## yohopay.trade.refund (统一收单交易退款接口)
当交易发生之后一段时间内,由于买家或者卖家的原因需要退款时,卖家可以通过退款接口将支付款退还给买家,系统将在收到退款请求并且验证成功之后,按照退款规则将支付款按原路退到买家帐号上。总退款金额不能超过用户实际支付金额
### 请求参数
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
| :-- | :-- | :-- | :-- | :-- | :-- |
| out_trade_no | String | 特殊可选 | 64 | 商户订单号 | 20150320010101001 |
| trade_no | String | 特殊可选 | 64 | 有货交易号 | 2014112611001004680073956707 |
| out_request_no | String | 否 | 64 | 标识一次退款请求,同一笔交易多次退款需要保证唯一,如需部分退款,则此参数必传。 |
| refund_amount | Price 是 | 9 | 需要退款的金额,该金额不能大于订单金额,单位为元,支持两位小数 | 200.12 |
| refund_reason | String | 是 | 256 退款的原因说明 | 正常退款 |
| goods_detail | GoodsDetail [] | 可选 | - | 商品列表信息.Json格式. 详见:“商品明细说明” | |
| └ goods_id | String | 必填 | 32 | 商品的编号 | apple-01 |
| └ goods_name | String | 必填 | 256 | 商品名称 | ipad |
| └ quantity | Number | 必填 | 10 | 商品数量 | 1 |
| └ price | Price | 必填 | 9 | 商品单价,单位为元 | 2000 |
| └ goods_category | String | 可选 | 24 | 商品类目 | 34543238 |
| └ body | String | 可选 | 1000 | 商品描述信息 | 特价手机 |
| └ show_url | String | 可选 | 400 | 商品的展示地址 http://www.xxx.com/xxx.jpg |
| └ refund_reason | String | 是 | 256 退款的原因说明 | 正常退款 |
### 响应参数
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
| :-- | :-- | :-- | :-- | :-- | :-- |
| out_trade_no | String | 必须 | 64 | 商户订单号 | 20150423001001 |
| trade_no | String | 必填 | 64 | 有货交易号 | 2013112011001004330000121536 |
| out_request_no | String | 选填 | 64 本笔退款对应的退款请求号 | 20150320010101001 |
| fund_change | String | 必填 | 1 | 本次退款是否发生了资金变化 | Y |
| refund_total | Price | 必填 | 11 | 退款总金额 | 88.88 |
| refund_buyer_pay | Price | 必填 | 11 退用户实付金额 | 15.25 |
| refund_yoho_coin | Price | 必填 | 11 退用户有货比支付金额 | 10 |
| gmt_refund_pay | Date | 必填 | 32 | 退款支付时间 | 20141127154557 |
## yohopay.trade.fastpay.refund.query (统一收单交易退款查询)
商户可使用该接口查询自已通过yohopay.trade.refund提交的退款请求是否执行成功。
### 请求参数
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
| :-- | :-- | :-- | :-- | :-- | :-- |
| out_trade_no | String | 特殊可选 | 64 | 商户订单号 | 2014112611001004680073956707 |
| trade_no | String | 特殊可选 | 64 | 有货交易号 | 20150320010101001 |
| out_request_no | String | 否 | 64 | 标识一次退款请求,同一笔交易多次退款需要保证唯一,如需部分退款,则此参数必传。 |
### 响应参数
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
| :-- | :-- | :-- | :-- | :-- | :-- |
| out_trade_no | String | 必须 | 64 | 商户订单号 | 20150423001001 |
| trade_no | String | 必填 | 64 | 有货交易号 | 2013112011001004330000121536 |
| out_request_no | String | 选填 | 64 | 本笔退款对应的退款请求号 | 20150320010101001 |
| fund_change | String | 必填 | 1 | 本次退款是否发生了资金变化 | Y |
| refund_total | Price | 必填 | 11 | 退款总金额 | 88.88 |
| refund_buyer_pay | Price | 必填 | 11 | 退用户实付金额 | 15.25 |
| refund_yoho_coin | Price | 必填 | 11 | 退用户有货比支付金额 | 10 |
| gmt_refund_pay | Date | 必填 | 32 | 退款支付时间 | 20141127154557 |
\ No newline at end of file