withdraw_data.go 4.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. package flash
  2. const (
  3. // 除了SUCCESS是成功,FAILED失败,其他状态请调用方标记为处理中,等待回调或者查询接口返回最终状态
  4. WITHDRAW_STATUS_CREATED = "CREATED" // 订单初始化
  5. WITHDRAW_STATUS_PENDING = "PENDING" // 订单处理中
  6. WITHDRAW_STATUS_SUCCESS = "SUCCESS" // 成功
  7. WITHDRAW_STATUS_FAILED = "FAILED" // 失败
  8. )
  9. // 代付下单
  10. type (
  11. withdraw_req struct {
  12. MerchantNo string `json:"merchantNo" form:"merchantNo"` // 支付系统提供给合作商户的唯一标识
  13. MerchantOrderNo string `json:"merchantOrderNo" form:"merchantOrderNo"` // 商户唯一订单
  14. Description string `json:"description" form:"description"` // 订单描述
  15. PayAmount float64 `json:"payAmount" form:"payAmount"` // 支付金额
  16. BankCode string `json:"bankCode" form:"bankCode"` // 渠道
  17. Mobile string `json:"mobile" form:"mobile"` // 收款人手机号,越真实,成功率越高,触发风控系数越低
  18. BankNumber string `json:"bankNumber" form:"bankNumber"` // 收款银行卡号
  19. AccountHoldName string `json:"accountHoldName" form:"accountHoldName"` // 收款人姓名,越真实,成功率越高,触发风控系数越低
  20. NotifyUrl string `json:"notifyUrl,omitempty" form:"notifyUrl,omitempty"` // 回调地址,如果不传,则读取商户后台配置, 不要有转义字符
  21. ClientNo string `json:"clientNo,omitempty" form:"clientNo,omitempty"` // 多商户调用区分值,非必传
  22. Sign string `json:"sign" form:"sign"`
  23. }
  24. withdraw_resp struct {
  25. Status string `json:"status" form:"status"` // 请求状态
  26. Message string `json:"message" form:"message"` // 请求信息
  27. Data withdraw_resp_data `json:"data" form:"data"` // 数据体(以下为数据体属性)
  28. }
  29. withdraw_resp_data struct {
  30. OrderStatus string `json:"orderStatus" form:"orderStatus"` // 订单状态
  31. OrderMessage string `json:"orderMessage" form:"orderMessage"` // 订单状态描述
  32. MerchantOrderNo string `json:"merchantOrderNo" form:"merchantOrderNo"` // 商户订单号回传
  33. PlatOrderNo string `json:"platOrderNo" form:"platOrderNo"` // FlashPay订单号
  34. MerchantFee string `json:"merchantFee" form:"merchantFee"` // 手续费
  35. }
  36. )
  37. // 代付回调通知
  38. type withdrawNotify struct {
  39. Amount string `json:"amount" form:"amount"` // 付款金额
  40. MerchantNo string `json:"merchantNo" form:"merchantNo"` // 支付系统提供给合作商户的唯一标识
  41. MerchantOrderNo string `json:"merchantOrderNo" form:"merchantOrderNo"` // 商户唯一订单号
  42. PlatOrderNo string `json:"platOrderNo" form:"platOrderNo"` // flashPay订单号
  43. OrderStatus string `json:"orderStatus" form:"orderStatus"` // 订单状态
  44. OrderMessage string `json:"orderMessage" form:"orderMessage"` // 订单状态描述
  45. Sign string `json:"sign" form:"sign"` // 签名
  46. }
  47. // 账户余额查询请求、响应
  48. type (
  49. queryAccount_req struct {
  50. MerchantNo string `json:"merchantNo" form:"merchantNo"` // 商户号
  51. Timestamp string `json:"timestamp" form:"timestamp"` // 时间戳
  52. Sign string `json:"sign" form:"sign"` // 签名
  53. }
  54. queryAccount_resp struct {
  55. Status string `json:"status" form:"status"` // 结果代码: "SUCCESS" "FAIL" "UNKNOWN" "NOTEXIST" "ERROR"
  56. Message string `json:"message" form:"message"` // 响应代码说明
  57. Data queryAccount_resp_data `json:"data" form:"data"` // 数据体(以下为数据体属性)
  58. }
  59. queryAccount_resp_data struct {
  60. AvailableAmount float64 `json:"availableAmount" form:"availableAmount"` // 可用余额
  61. FreezeAmount float64 `json:"freezeAmount" form:"freezeAmount"` // 冻结余额
  62. TotalAmount float64 `json:"totalAmount" form:"totalAmount"` // 总额,可用+冻结
  63. Sign string `json:"sign,omitempty" form:"sign,omitempty"` // 签名
  64. }
  65. )