pay_data.go 3.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. package opay
  2. type ret struct {
  3. Code string `json:"code"` // 响应 ‘SUCCESS’
  4. Msg string `json:"msg"` // 响应 ‘Success’
  5. }
  6. type (
  7. pay_req struct {
  8. Amount amountData `json:"amount"` // 金额(分单位)。
  9. CallbackUrl string `json:"callbackUrl"` // 如果您通过API发送了callbackUrl,OPay将向该callbackUrl发送回调通知。如果您没有通过API发送callbackUrl,则需要在商家仪表板上配置webhookurl,OPay将向该webhook url发送回调通知。
  10. Country string `json:"country"` // 国家代码。在此处查看完整列表
  11. ProductList []productInfo `json:"productList"`
  12. Reference string `json:"reference"` // 唯一的商户支付订单号。
  13. ReturnUrl string `json:"returnUrl"` // OPay收银员在结账后应将客户返回的URL。
  14. }
  15. amountData struct {
  16. Currency string `json:"currency"` // 货币类型
  17. Total int `json:"total"` // 金额(分单位)。
  18. }
  19. productInfo struct {
  20. Description string `json:"description"` // 订单产品描述
  21. Name string `json:"name"` // 订单产品名称
  22. Price int `json:"price"` // 订单产品价格
  23. ProductId string `json:"productId"` // 订单产品ID
  24. Quantity int `json:"quantity"` // 订单产品数量
  25. }
  26. pay_resp struct {
  27. Code string `json:"code"`
  28. Message string `json:"message"`
  29. Data payData `json:"data"`
  30. }
  31. payData struct {
  32. Amount amountData `json:"amount"` // 金额(分单位)。
  33. CashierUrl string `json:"cashierUrl"` // 为客户当前交易生成的OPay出纳URl
  34. OrderNo string `json:"orderNo"` // 唯一的Opay付款订单号。
  35. Reference string `json:"reference"` // 唯一商户付款订单号
  36. Status string `json:"status"` // [初始、挂起、成功、失败、关闭]
  37. Vat vatData `json:"vat"`
  38. }
  39. vatData struct {
  40. Total int `json:"total"` // 金额(分单位)。
  41. Currency string `json:"currency"` // 订单标题
  42. }
  43. )
  44. type (
  45. payNotify struct {
  46. Payload payloadData `json:"payload"` // 有效载荷
  47. Sha512 string `json:"sha512"` // 这本质上是回调有效载荷的HMAC SHA512签名。使用您的密钥签名。
  48. Type string `json:"type"` // 交易状态。
  49. }
  50. payloadData struct {
  51. Amount string `json:"amount"` // 交易金额(EGP)。
  52. Channel string `json:"channel"` // 渠道
  53. Country string `json:"country"` // 交易所属国家
  54. Currency string `json:"currency"` // 交易货币
  55. DisplayedFailure string `json:"displayedFailure"` // 失败的事务处理原因。
  56. ErrorCode string `json:"errorCode"`
  57. ErrorMsg string `json:"errorMsg"`
  58. Fee string `json:"fee"` // 交易费金额(EGP)
  59. FeeCurrency string `json:"feeCurrency"`
  60. InstrumentType string `json:"instrumentType"`
  61. // PayChannel string `json:"payChannel"` // 支付方式(银行卡余额支付OWealth FlexiFixed BonusPayment)
  62. Reference string `json:"reference"` // 合作伙伴交易记录编号。
  63. Refunded bool `json:"refunded"` // 交易是否为退款类型(真假)
  64. Status string `json:"status"` // 事务状态(成功失败)。
  65. Timestamp string `json:"timestamp"` // 交易时间
  66. Token string `json:"token"`
  67. TransactionId string `json:"transactionId"` // Opay交易编号
  68. Updated_at string `json:"updated_at"` // 交易更新时间
  69. }
  70. )