流程

第三方系统需要提供以下两种调用接口:

  • GetUserBalance取得会员帐户馀额
  • Fund Transfer帐户点数出入转移

GetUserBalance 接口用来取得会员在第三方系统内的结馀点数。 SimplePlay平台会在会员登入及有需要时提出请求。

帐户点数出入转移接口有以下四个:

  1. PlaceBet
    • 当会员在SimplePlay平台上进行下注时,这个接口就会调用。第三方系统必須在3秒內回覆此請求,否則 SimplePlay 會視此筆請求失效,系统将会取消该投注并调用PlaceBetCancel让第三系统取消交易。
  2. PlayerWin
    • 如果投注在同一局内的不同的投注结算加总后有赢额,就会调用PlaceWin及付上回存到第三方系统的点数。
  3. PlayerLost
    • 如果投注在同一局内的不同的投注结算加总后没有赢额,就会调用PlayerLost
  4. PlaceBetCancel
    • 如果在调用PlaceBet后,因为逾时或没有回应,则此项投注就会取消,同时会调用PlaceBetCancel来告知第三方系统在有需要的下把点数返还给会员。

PlayerWinPlayerLostPlaceBetCancel请求逾时或第三方系统返回错误消息,SimplePlay会不断重发请求至第三方系统直至收到正常回覆。如超过2小时, SimplePlay 会视之为失败并把它标示为失败请求。

一般情況:

  • 收到GetUserBalance请求,无需调整会员余额,返回error=0及会员最新余额
  • 收到PlaceBet请求,把金额从会员帐户扣除, 返回error=0及会员最新余额
  • 收到PlayerWin请求,把金额增加给会员, 返回error=0及会员最新余额
  • 收到PlayerLost请求,无需调整会员余额, 返回error=0及会员最新余额
  • 收到PlaceBetCancel请求,把對應的PlaceBet请求的下注金额退回给会员, 返回error=0及会员最新余额

特殊情況:

  • 收到PlaceBetCancel请求后, 找不到相应的PlaceBet请求或延迟收到相应的PlaceBet请求。无需调整会员余额,返回error=0及会员最新余额。
    >关于延迟收到的PlaceBet请求,建议建立检查程序去处理,建议把PlaceBetCancel请求里的”txn_reverse_id“储存
    >如果贵司系统处理PlaceBetCancel请求后才收到对应的PlaceBet请求,贵司系统有可能会出现一些错误处理的注单状态。为了解决此特殊情况,建议贵司系统可以建立一个每15分钟运行一次的定时检查工作。 检查所有待定/未完成的PlaceBetCancel请求,以其txn_reverse_id去比对过去15分钟所有PlaceBet请求的txnid
    1. 承上,如果找到对应PlaceBet请求,把下注金额退还给玩家,然后完成这两笔PlaceBetPlaceBetCancel请求
    2. 承上,如果未能找到相关的PlaceBet请求,该笔PlaceBetCancel可视为完成状态
      注: 定时检查的建议间距是15分钟,贵司可因应系统需求更改此间距。
  • 收到重复的PlayerWinPlayerLostPlaceBetCancel请求,无需调整会员余额,返回error=0及会员最新余额

**以上每个接口调用时,也会付有一个独一的交易编号,第三方系统必须保证每个交易编号的请求只会被处理一次,重复的请求不能再被处理而直接回覆 SimplePlay 平台成功处理状态(error=0)

第三方系统需提供五个独立的接口(例如: .aspx, .php, etc.)以供 SimplePlay 平台调用:

例如使用ASP.Net:

  • /GetUserBalance.aspx
  • /PlaceBet.aspx
  • /PlayerWin.aspx
  • /PlayerLost.aspx
  • /PlaceBetCancel.aspx

**第三方系统只能使用一种档尾类型,不能存在不同档尾进行调用。

Leave a Reply