跳转到内容

上线检查清单

  • operator-conformance 对你的沙盒钱包运行结果为 0 失败(见沙盒自测)。
  • 启动码一次性、5 分钟内过期;你的 App 从不把自己的访问令牌交给游戏。
  • 签名校验使用原始请求体、常数时间比较和 300 秒时间窗,并支持多把密钥(轮换)。
  • 按 transaction_id 的幂等同样覆盖失败结果;能识别 duplicate_mismatch。
  • 冲正会记录墓碑;冲正之后才到达的扣款返回 rolled_back。
  • 接受同一玩家同一局的多笔扣款;没有任何按局去重的逻辑。
  • 加款和冲正从不校验会话、登出或封禁状态。
  • 批量响应逐项、按顺序给出结果;只有每一项都有结果时才返回 HTTP 200。
  • 429 / 503 响应带 Retry-After;声明的单批最大笔数和并发数与你的钱包高峰承载能力一致。
  • 交易记录至少保留 180 天。
  • 宿主桥在 8 秒内应答 getConfig,处理 gameLoaded、gameRecharge、destroy,并在充值后调用 window.walletUpdate()。
  • 在沙盒中从 App 玩过的真实对局与你的流水一致。

在「商户控制台 → 概览」点击「申请开通生产环境」。在我们审核完你的接入、且你的商务条款(金币汇率和分成比例)设定之前,生产环境保持「审核中」。条款设定后显示在「商户控制台 → 概览」,你不能修改。

  • 在「商户控制台 → 接入」的「生产」标签页配置:钱包 URL、币种、小数位、最大批量、最大并发请求,然后点击「生成密钥」。
  • 生成一把单独的生产签名密钥并部署到你的钱包。
  • 启用你要上线的游戏,并为生产环境设置目标利润率(1%–10%)。
  • 为预付余额充值(「商户控制台 → 充值」);充值由人工确认。消耗、服务费和余额流水在「商户控制台 → 账单」查看。
  • 把 App 的入口地址从 sandbox.sentosatower.com 改为 games.sentosatower.com(op 的值不变)。
  • 在生产环境把每款已启用的游戏各打开一次,检查你流水中的第一批交易。
  • 为钱包接口配置监控:延迟、4xx/5xx 比例、retry 与 insufficient_funds 占比。
  • 你以美元预付。玩家金币始终留在你自己的钱包里。
  • 按新加坡自然日(Asia/Singapore,UTC+8)逐日计费,在新加坡时间午夜后不久出账。
  • 某日的消耗金币 = 全部金币游戏的投注合计 − 派彩合计(棋盘游戏免费),可能为负数。
  • 当日费用 = 消耗金币按你的金币汇率换算成美元,再乘以你的分成比例。费用为负时退回到你的余额。
  • 沙盒从不计费。
  • 余额降到 0 或以下时开始 3 天宽限期。宽限期结束仍未转正,生产环境会被暂停:拒绝新的游戏会话(operator_suspended),进行中的对局照常结算。经确认的充值使余额转正后,生产环境自动恢复。余额低于约一周平均费用时,我们会发邮件提醒。