异步通知 - shoufuyou/Shoufuyou-SDK-Doucument-for-core-client GitHub Wiki


<<返回文档首页

功能说明

首付游对商户的请求数据处理完成后,会将处理的结果数据通过服务器主动通知的方式通知给商户系统。
这些处理结果数据就是服务器异步通知参数。

注:首付游回掉第三方商户,统一是POST请求,data form格式参数。

异步通知参数说明

参数 参数名称 类型 必填 描述 范例
code 返回的结果码 String 10000- 成功生成订单;错误码详见附录订单创建结果码" 10000
message 返回结果码对应的字符串解释 String 如code参数里的描述 请求成功
merchant_order_id 商户订单号 String 用户在商家的订单侧重旅游业务,称之为业务订单 10010101
如果成功生成交易单则应答里包含下述结果
trade_number 首付游交易号 String 本次请求首付游内部的交易号,可供今后商户查询或者对账使用 20151125181509213
order_amount 支付金额 Int 用户支付的订单金额(不包含首付游服务费) 180000(1800元)
trade_status 交易状态 String 'WAIT_PAY',等待支付
'PAY_SUCCESS',支付成功
'CANCELED',已取消
PAY_SUCCESS
bill_url 首付游账单链接 String 首付游生成的账单地址: https://m.shoufuyou.com/user/bills?mobile=13888888888 https://m.shoufuyou.com/user/bills?mobile=13888888888

###响应参数示例

{
  code: "10000",   message: "",
  trade_number: "201604281451098465",
  trade_status: "PAY_SUCCESS",
  merchant_order_id: "201604181725081345"
  order_amount:"180000",
  bill_url:“https://m.shoufuyou.com/user/bills?mobile=13888888888"
}

###异步通知特性

  1. 该方式的作用主要防止商户订单丢失,即页面跳转没有及时处理订单更新,商家的服务器可以根据这里的异步通知结果进行后续逻辑处理;
  2. 首付游是用POST方式发送通知信息的;
  3. 商户收到异步通知后必须应答首付游“success”(不包含引号)。如果首付游收到的字符不是success这7个 字符,首付游服务器会不断重发通知,一般情况下,24小时以内完成7次通知,通知的间隔(距第一次)一 般是:0m,2m,4m,8m,16m, 1h, 12h,24h;
  4. 服务器间的交互,不像页面跳转同步通知可以在页面上显示出来,这种交互方式是不可见的;
  5. 程序执行完成后,该页面不能执行页面跳转。如果执行页面跳转,首付游会收不到success字符,会被首付 游服务器判定为该页面程序运行出现异常,而重发处理结果通知;
  6. 该方式的调试与运行必须在服务器上,即互联网上能访问;

###异步通知触发条件

触发条件 触发接口 交易状态
用户在首付游处下单 收单接口 发送异步通知时的交易状态(trade_status),取值如上表所列,商户收到通知后,需要根据状态进行判断,进而处理相关业务逻辑:只有trade_status为PAY_SUCCESS的时候,才代表首付游处交易成功。

备注:
* 商户可以向首付游申请配置多点通知,ip绑定等,提高异步通知到达率。

⚠️ **GitHub.com Fallback** ⚠️