支付模块
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

166 lines
16 KiB

  1. package md
  2. type MacaoBOCPublicParameter struct {
  3. RequestId string `json:"requestId" name:"商戶系統請求流水號" label:"建議同一商户每次請求保持唯一,作為技術核實問題的快捷要素"`
  4. Service string `json:"service" name:"接口類型" label:"原樣返回請求參數頭中的service"`
  5. Version string `json:"version" name:"接口版本" label:"當前文檔接口版本送值:2.0"`
  6. IpAddress string `json:"ipAddress" name:"用戶瀏覽器IP地址" label:"非必传"`
  7. SignType string `json:"signType" name:"固定值RSA2" label:"當前僅支持RSA2"`
  8. MerchantId string `json:"merchantId" name:"合作商戶編號" label:"中銀智慧付給合作商戶分配的唯一標識"`
  9. TerminalNo string `json:"terminalNo" name:"終端號" label:"長度8位數字,進件時生成終端號。可在商戶管理端的“商戶管理”模塊查詢。"`
  10. MerchantSign string `json:"merchantSign" name:"簽名串" label:"簽名機制詳見2.1"`
  11. }
  12. //注:交易的成功與否不用根據returnCode判斷,請根據返回參數中result判斷,result爲空就是交易失敗,returnMessage是對應失敗的原因。result返回A,Z,需發起查詢判斷具體交易狀態。
  13. // 若接口報文頭應答參數中的【returnCode】欄位返回值爲【888888】表示中銀智慧付系統在進行升級維護,
  14. //此時中銀智慧付系統無法提供支付能力。商戶系統需要在合適的位置展示【returnMessage】
  15. //欄位中的信息友好的告知用戶此項功能暫不可用。
  16. type MacaoBOCPublicResponse struct {
  17. RequestId string `json:"requestId" name:"商戶系統請求流水號" label:"建議同一商户每次請求保持唯一,作為技術核實問題的快捷要素"`
  18. Service string `json:"service" name:"接口類型" label:"原樣返回請求參數頭中的service"`
  19. Version string `json:"version" name:"接口版本" label:"當前文檔接口版本送值:2.0"`
  20. SignType string `json:"signType" name:"固定值RSA2" label:"當前僅支持RSA2"`
  21. MerchantId string `json:"merchantId" name:"合作商戶編號" label:"中銀智慧付給合作商戶分配的唯一標識"`
  22. TerminalNo string `json:"terminalNo" name:"終端號" label:"長度8位數字,進件時生成終端號。可在商戶管理端的“商戶管理”模塊查詢。"`
  23. ReturnCode string `json:"returnCode" name:"返回信息碼" label:"000000-成功。返回碼請參照附錄"`
  24. ReturnMessage string `json:"returnMessage" name:"返回信息碼描述" label:"返回信息提示。"`
  25. ServerSign string `json:"serverSign" name:"簽名串" label:"簽名機制詳見2.1"`
  26. }
  27. type CreateBocPayAppTradeReq struct {
  28. MacaoBOCPublicParameter
  29. Amount string `json:"amount" name:"订单金額" label:"以分爲單位,如1元表示爲100"`
  30. OriginalAmount string `json:"originalAmount" name:"原订单金额" label:"以分爲單位,如1元表示爲100若无优惠请跟订单金额【amount】一致"`
  31. MerchantPreferentialCnName string `json:"merchantPreferentialCnName" name:"商户系统优惠活动中文名称" label:"非必传"`
  32. MerchantPreferentialEnName string `json:"merchantPreferentialEnName" name:"商户系统优惠活动英文名称" label:"非必传"`
  33. Subject string `json:"subject" name:"訂單標題" label:"非必传,用戶支付完成後顯示在手機上的訂單名稱"`
  34. ProductDesc string `json:"productDesc" name:"商品描述" label:"非必传,對一筆交易的具體描述信息,如果是多種商品,請將商品描述字符串累加傳給body。特殊字符不支持"`
  35. MercOrderNo string `json:"mercOrderNo" name:"商戶系統消費訂單號" label:"商戶系統必須確保該訂單號在商戶系統是唯一的不能包含單引號“’”、尖括號“<”“>”和逗號“,”"`
  36. OrderDate string `json:"orderDate" name:"訂單創建日期" label:"格式:yyyyMMdd"`
  37. OrderTime string `json:"orderTime" name:"訂單創建時間" label:"格式:HHmmss"`
  38. ValidNumber string `json:"validNumber" name:"有效期" label:"單位:秒 默認值1200"`
  39. NotifyUrl string `json:"notifyUrl" name:"支付結果後台通知地址" label:"支付通知地址(后缀),商户在商戶服務管理後台配置好通知地址(域名)后,聚合平台会将域名和后缀拼接组成完整的通知地址,并在订单支付成后向此通知地址发送支付结果通知。"`
  40. Reserved1 string `json:"reserved1" name:"商戶備用字段" label:"交易成功后原樣返回給商戶"`
  41. Reserved2 string `json:"reserved2" name:"商戶備用字段" label:"交易成功后原樣返回給商戶"`
  42. Reserved3 string `json:"reserved3" name:"商戶備用字段" label:"交易成功后原樣返回給商戶"`
  43. }
  44. type CreateBocPayAppTradeResponse struct {
  45. MacaoBOCPublicResponse
  46. LogNo string `json:"logNo"`
  47. Amount string `json:"amount"`
  48. Result string `json:"result"`
  49. PayOrderString struct {
  50. PrepayID string `json:"prepayId"`
  51. PaySign string `json:"paySign"`
  52. } `json:"payOrderString"`
  53. MerchantMarketInformation string `json:"merchantMarketInformation"`
  54. }
  55. type CreateWeChatTradeReq struct {
  56. MacaoBOCPublicParameter
  57. Amount string `json:"amount" name:"订单金額" label:"以分爲單位,如1元表示爲100"`
  58. OriginalAmount string `json:"originalAmount" name:"原订单金额" label:"以分爲單位,如1元表示爲100若无优惠请跟订单金额【amount】一致"`
  59. MerchantPreferentialCnName string `json:"merchantPreferentialCnName" name:"商户系统优惠活动中文名称" label:"非必传"`
  60. MerchantPreferentialEnName string `json:"merchantPreferentialEnName" name:"商户系统优惠活动英文名称" label:"非必传"`
  61. Subject string `json:"subject" name:"訂單標題" label:"非必传,用戶支付完成後顯示在手機上的訂單名稱"`
  62. ProductDesc string `json:"productDesc" name:"商品描述" label:"非必传,對一筆交易的具體描述信息,如果是多種商品,請將商品描述字符串累加傳給body。特殊字符不支持"`
  63. MercOrderNo string `json:"mercOrderNo" name:"商戶系統消費訂單號" label:"商戶系統必須確保該訂單號在商戶系統是唯一的不能包含單引號“’”、尖括號“<”“>”和逗號“,”"`
  64. OrderDate string `json:"orderDate" name:"訂單創建日期" label:"格式:yyyyMMdd"`
  65. OrderTime string `json:"orderTime" name:"訂單創建時間" label:"格式:HHmmss"`
  66. ValidNumber string `json:"validNumber" name:"有效期" label:"單位:秒 默認值1200"`
  67. NotifyUrl string `json:"notifyUrl" name:"支付結果後台通知地址" label:"支付通知地址(后缀),商户在商戶服務管理後台配置好通知地址(域名)后,聚合平台会将域名和后缀拼接组成完整的通知地址,并在订单支付成后向此通知地址发送支付结果通知。"`
  68. SubAppId string `json:"subAppId" name:"子商戶AppId" label:"微信分配的子商户公众账号或小程序Id。"`
  69. SubOpenId string `json:"subOpenId" name:"子商戶用戶唯一Id" label:"用戶在子商戶appId下的唯一標識。下單前商戶需要調用微信【網頁授權獲取用戶信息】接口獲取到用戶的OpenId。詳情查看附錄5.5.1章節"`
  70. TransWay string `json:"transWay" name:"交易方式" label:"B3-公众号支付B4-小程序支付"`
  71. Reserved1 string `json:"reserved1" name:"商戶備用字段" label:"交易成功后原樣返回給商戶"`
  72. Reserved2 string `json:"reserved2" name:"商戶備用字段" label:"交易成功后原樣返回給商戶"`
  73. Reserved3 string `json:"reserved3" name:"商戶備用字段" label:"交易成功后原樣返回給商戶"`
  74. }
  75. type CreateQRTradeReq struct {
  76. MacaoBOCPublicParameter
  77. Amount string `json:"amount" name:"订单金額" label:"以分爲單位,如1元表示爲100"`
  78. OriginalAmount string `json:"originalAmount" name:"原订单金额" label:"以分爲單位,如1元表示爲100若无优惠请跟订单金额【amount】一致"`
  79. MerchantPreferentialCnName string `json:"merchantPreferentialCnName" name:"商户系统优惠活动中文名称" label:"非必传"`
  80. MerchantPreferentialEnName string `json:"merchantPreferentialEnName" name:"商户系统优惠活动英文名称" label:"非必传"`
  81. Subject string `json:"subject" name:"訂單標題" label:"非必传,用戶支付完成後顯示在手機上的訂單名稱"`
  82. ProductDesc string `json:"productDesc" name:"商品描述" label:"非必传,對一筆交易的具體描述信息,如果是多種商品,請將商品描述字符串累加傳給body。特殊字符不支持"`
  83. PayChannel string `json:"payChannel" name:"支付方式" label:"BOCPAY - 澳门中银手机银行ALIPAY - 支付宝WECHATPAY - 微信支付TAIFUNGPAY - 豐付寶ICBCEPAY - 工銀E支付MPAY - 澳門通LUSOPAY - 國際銀行UEPAY - 極易付CGBPAY - 廣發MPGS - 銀行卡支付網關UNIONPAYQR - 雲閃付ALL -以上渠道聚合码支持多選使用|分割注:當本接口上送的productCode為MOBILEWEB時,payChannel只能單選,且不能上送ALL"`
  84. ProductCode string `json:"productCode" name:"產品渠道编码" label:"PCWEB網站支付MOBILEWEB-移動支付AUTO-根据UA信息自动识别"`
  85. MercOrderNo string `json:"mercOrderNo" name:"商戶系統消費訂單號" label:"商戶系統必須確保該訂單號在商戶系統是唯一的不能包含單引號“’”、尖括號“<”“>”和逗號“,”"`
  86. OrderDate string `json:"orderDate" name:"訂單創建日期" label:"格式:yyyyMMdd"`
  87. OrderTime string `json:"orderTime" name:"訂單創建時間" label:"格式:HHmmss"`
  88. ValidNumber string `json:"validNumber" name:"有效期" label:"單位:秒 默認值1200"`
  89. NotifyUrl string `json:"notifyUrl" name:"支付結果後台通知地址" label:"支付通知地址(后缀),商户在商戶服務管理後台配置好通知地址(域名)后,聚合平台会将域名和后缀拼接组成完整的通知地址,并在订单支付成后向此通知地址发送支付结果通知。"`
  90. Reserved1 string `json:"reserved1" name:"商戶備用字段" label:"交易成功后原樣返回給商戶"`
  91. Reserved2 string `json:"reserved2" name:"商戶備用字段" label:"交易成功后原樣返回給商戶"`
  92. Reserved3 string `json:"reserved3" name:"商戶備用字段" label:"交易成功后原樣返回給商戶"`
  93. Supplier string `json:"supplier" name:"供貨商名字" label:"非必传,顯示供貨商名字"`
  94. ReferUrl string `json:"referUrl" name:"二級商戶網址" label:""`
  95. BusinessType string `json:"businessType" name:"業務類型" label:"業務類型。該欄位僅支持以下5類入參:
  96. 1:飯店
  97. 2:航空
  98. 3:留學
  99. 4:貿易
  100. 5:其他,包含所有不屬於前四類的其他業務類型。例如,流量充值,機場接機服務等。若業務類型超過一種,則傳入多個且用分隔號(|)分隔。"`
  101. GoodsInfo string `json:"goodsInfo" name:"商品信息" label:"包含商品的SKU名和相应的数量,格式为 SKU_名^数量。若存在超过一件商品,用竖线(|)分隔。备注:仅在businessType字段值为4时,本字段为必填。"`
  102. TotalQuantity string `json:"totalQuantity" name:"備註:僅在businessType欄位值為4時,本欄位為必填"`
  103. }
  104. type CreateQRTradeResponse struct {
  105. MacaoBOCPublicResponse
  106. LogNo string `json:"logNo"`
  107. Amount string `json:"amount"`
  108. Result string `json:"result"`
  109. PayURL string `json:"payUrl"`
  110. PayQrcode string `json:"payQrcode"`
  111. }
  112. type OfflineResultResponse struct {
  113. Version string `json:"version" name:"接口版本" label:"當前文檔接口版本送值:2.0 "`
  114. ServerSign string `json:"serverSign" name:"服務器簽名域" label:"服務器對報文的簽名值。簽名機制見2.1"`
  115. Service string `json:"service" name:"接口類型" label:"固定值:OfflineResult"`
  116. Status string `json:"status" name:"支付結果" label:"支付結果狀態SUCCESS"`
  117. ReturnCode string `json:"returnCode" name:"返回信息碼" label:"000000-成功。返回碼請參照附錄"`
  118. ReturnMessage string `json:"returnMessage" name:"返回信息碼描述" label:""`
  119. LogNo string `json:"logNo" name:"平臺訂單號" label:"中銀智慧付訂單號,可用于訂單查詢接口查詢結果以及退款接口退款"`
  120. MerchantID string `json:"merchantId" name:"合作商戶編號" label:"中銀智慧付給合作商戶分配的唯一標識"`
  121. OrderDate string `json:"orderDate" name:"訂單日期" label:"訂單建立日期,格式yyyyMMdd"`
  122. OrderTime string `json:"orderTime" name:"訂單創建時間" label:"HHmmss"`
  123. PayDate string `json:"payDate" name:"支付日期" label:"会计日期"`
  124. PayTime string `json:"payTime" name:"支付时间" label:""`
  125. MerchantOrderNo string `json:"merchantOrderNo" name:"商戶系統消費訂單號" label:""`
  126. Amount string `json:"amount" name:"訂單總金額" label:"訂單金額,以分爲單位"`
  127. Fee string `json:"fee" name:"費用" label:"以分爲單位"`
  128. PayChannel string `json:"payChannel" name:"支付方式" label:"BOCPAY - 澳门中银手机银行ALIPAY - 支付宝WECHATPAY - 微信支付TAIFUNGPAY - 豐付寶ICBCEPAY - 工銀E支付MPAY - 澳門通LUSOPAY - 國際銀行UEPAY - 極易付CGBPAY - 廣發MPGS - 銀行卡支付網關UNIONPAYQR - 雲閃付"`
  129. ThirdLogNo string `json:"thirdLogNo" name:"第三方交易訂單號" label:"第三方支付訂單號"`
  130. CashFee string `json:"cashFee" name:"第三方支付金額" label:"以分爲單位"`
  131. CashFeeType string `json:"cashFeeType" name:"第三方支付幣種" label:""`
  132. UserID string `json:"userId" name:"唯一识别号" label:"微信openid ,支付宝userid,手机银行CIF"`
  133. MerchantMarketFlag string `json:"merchantMarketFlag" name:"是否使用优惠" label:"Y-是N-否"`
  134. MarketCnName string `json:"marketCnName" name:"优惠活动中文名称" label:""`
  135. MerchantMarketID string `json:"merchantMarketId" name:"優惠活動編號" label:""`
  136. MarketEnName string `json:"marketEnName" name:"优惠活动英文名称" label:""`
  137. ActualPayAmount string `json:"actualPayAmount" name:"实际支付金额" label:"以分为单位"`
  138. Reserved1 string `json:"reserved1" name:"商戶備用字段1" label:"交易成功后原樣返回給商戶"`
  139. Reserved2 string `json:"reserved2" name:"商戶備用字段2" label:"交易成功后原樣返回給商戶"`
  140. Reserved3 string `json:"reserved3" name:"商戶備用字段3" label:"交易成功后原樣返回給商戶"`
  141. }
  142. type OrderQueryReq struct {
  143. MacaoBOCPublicParameter
  144. QueryNo string `json:"queryNo" name:"商戶系統訂單號" label:"商戶系統消費、退款、撤單的訂單號,本欄不可與queryLogNo同時爲空"`
  145. QueryLogNo string `json:"queryLogNo" name:"平臺返回訂單號" label:"原交易中銀智慧付返回訂單號logNo,本欄不可與queryNo同時爲空。都不爲空則以queryLogNo爲准。"`
  146. LogNo string `json:"logNo" name:"系統流水號" label:"該筆交易返回的平臺流水號"`
  147. OrderDate string `json:"orderDate" name:"訂單日期" label:"訂單建立日期,格式yyyyMMdd"`
  148. OrderTime string `json:"orderTime" name:"訂單創建時間" label:"格式:HHmmss"`
  149. TxnFlag string `json:"txnFlag" name:"交易類型" label:"P-消費 R-退款"`
  150. Result string `json:"result" name:"商品描述" label:"S-交易成功
  151. F-交易失敗
  152. A-等待付款
  153. Z-交易未明
  154. W-退款中
  155. D-訂單已撤銷"`
  156. }