#单钱包流程
本文档描述了单钱包模式的流程,包括用户余额流程、投注流程、支付流程和取消回合流程。
#目录
#获取用户余额
描述PetaX应用请求用户余额时的底层流程。
sequenceDiagram
participant App as PetaX 应用
participant SW as PetaX 服务
participant Merchant as 商户
App->>+SW: 获取余额
SW->>+Merchant: (1) 调用商户 API 获取用户余额
Merchant-->>-SW: 返回余额结果
SW-->>-App: 返回余额结果
(1) Call merchant API to get user balance:获取用户余额API规格
#投注
描述用户下注时的底层流程。
graph TD
A[用户下注] --> B["(1) 调用商户 API 获取用户余额"]
B --> C{余额充足?}
C -->|否| D[拒绝并通知游戏客户端]
C -->|是| E["(2) 调用商户 API 扣减余额"]
E --> F{扣减余额成功?}
F -->|否| G[拒绝并通知游戏客户端]
F -->|是| H[更新 PetaX 系统中的游戏与用户状态]
H --> I{更新成功?}
I -->|否| J["(3) 因系统错误调用商户 API 退款给用户"]
I -->|是| K[通知游戏客户端]
(1) Call merchant API to get user balance:获取用户余额API规格(2) Call merchant API to decrease balance:扣除权益API规格(3) Call merchant API to refund the user due to a system error:错误投注API规格
#支付
描述用户赢得赌注时的基本过程。
sequenceDiagram
participant U as 用户
participant P as PetaX 服务
participant M as 商户
Note over U,P: 用户赢得一笔投注
P->>M: (1) 调用 /payout API 增加用户余额
M-->>M: 增加用户余额(内部状态)
alt API 调用成功
M-->>P: 接受请求
P->>U: 通知用户新的余额
end
(1) Call /payout API to increase user balance:支付API规格。如果API失败,PetaX服务将在10ms后尝试重试,最多3次。
#取消回合
描述赌场触发取消回合事件时的底层流程。
sequenceDiagram
participant U as 用户
participant DS as 赌场
participant P as PetaX 服务
participant M as 商户
DS->>P: 触发取消回合事件
P->>M: (1) 调用 API /cancel-bet
M-->>M: 退还用户余额(内部状态)
alt 退款成功
M->>P: 返回新的用户余额
P->>U: 通知用户取消回合与退款事件
end
(1) Call API /cancel-bet:取消投注API规格。如果API失败,PetaX服务将在10ms后尝试重试,最多3次。