商户接入中心MERCHANT INTEGRATION

MERCHANT LOGIN

已有商户?在这里填写校验码

粘贴 mak_ 开头的商户访问 key,校验后进入自己的资料和测试入口。

让商户 AI 帮你接入

手册更新:2026-10-20 · UTC,本轮统一标准钱包四接口;现有目录、RTP档位与进游兼容入口保留。

把这份 Markdown 手册交给商户的 AI,按实际接口完成申请、鉴权、测试进游、回调和流水对账。附可运行示例与正式外部钱包的接入条件。

手册不含真实凭据;商户校验码与接入密钥请放在自己的私有运行环境。

ACEWIN COMPATIBLE · SOURCE VERIFIED

接入资料、接口流程,
在这里一次理清。

参考现有 AceWin 源码,说明每一层凭据怎么使用。填写资料后保存至 MySQL,获取接入申请编号。

CURRENT GAMES · 2026-10-20 UTC

当前游戏、倍率与核验说明

阅读最新接入手册 ↗

三款均支持GC / SC,基础下注默认及下限为0.1。页面提供静态RTP(80%~120%)与动态RTP;目标余额是策略参数,不是保底返还承诺。

已接入游戏 / 注册ID完整结果(含奖励路径)去重图形(存储统计)当前最高总返还 / 实际扣款
777 Wheel Blitz
777-wheel-blitz
普通3143+购买391=3534种2590种初始图形普通420倍;购买125.05倍
Super Ace Speed
super-ace-speed-50
按需组合,505不是完整结果总数505种 / 600模板坐标275.2倍
Los Toros
los-toros-50
896条完整选择路径877种 / 884根模板三种玩法均可到500倍

777转盘没有减少。普通2589张初始图形,展开不同转盘停点/升级路径后是3143种完整结果;购买另有391种。2590只是两种玩法初始图形去重后的并集,不能当作完整结果数。同一牌面配不同转盘结果,分别计数。

三款模型按实际付费根扣款校验500倍总返还上限,包含全部免费子局。游戏ID的历史「-50」后缀保持原值。免费局继承父局下注与币种,不再扣本金。

固定倍率的当前接入状态

固定倍率私有决策与结果构造已提供:5、10……100共20个目标档,按不超过指定上限的最大可用倍率向下选,每个实际倍率桶保留5~10种真实方案。RTP与固定倍率共用各自游戏的同一个模型。

商户在线固定倍率下注、签名授权和客户端派奖链路仍未启用。现有进游使用静态/动态RTP,不能自行增加 maximum_multiplier 就认定已支持固定开奖。

5000共享盘面预算与内存实测

现行5000检查只针对跨玩法、RTP档、币种和下注共用的独特视觉图形池,不等于所有完整动态结果都被限制到5000。777按包含完整转盘路径的3534种结果计数,也低于5000;没有删掉当前转盘或免费局路径,也没有改RTP权重。同一盘面可配不同金额和奖励路径,完整动态组合按需生成,没有把所有组合硬裁成5000,也不会给每位玩家存5000份结果。

最近一次上线后的接口复测中,三款合用的概率进程占约48.33MiB,启动以来峰值124.84MiB;此前406.43MiB是离线完整验算临时展开JSON的峰值。优化后同参数验算为247.62MiB,低内存离线模式为149.85MiB。完整证明保持一致,407项回环决策接口检查通过。

查看内存、盘面数量与复跑脚本 ↗
盘面核验结论与原版规则边界
  • SAS:当前显式奖额合计自洽,但与原版已确认线奖及Extra规则有差异;原规则一致性为FAIL。
  • Los:本方公开赔表的计奖核验通过,原厂完整数字赔表仍未确认。
  • 777:当前保留目录已核验;Grand混合盘面排除、部分原转盘顺序及原最高奖存在既有边界。

接口检查通过不能替代原版数学一致性、钱包入账或浏览器动画/音效验收。

查看具体反例、原始报告与核验脚本 ↗

01 / WALLET AUTHENTICATION

标准钱包:独立 secret 签名

POST · JSON UTF-8 · Unix 秒
01

供应商 → 商户钱包

MD5 + RFC3986

mch_id / timestamp / sign

全部实际请求字段参与签名,删 sign 后排序、编码,追加原样 secret。

02

每次发送与重试

±60 秒

稳定 transaction_id

刷新 timestamp、sign;交易ID、金额与父子局参数保持原值。

03

接入中心

商户访问 key

只读取本申请配置

mak_ key 与钱包 secret 分开;secret 仅在开通后的 owner 配置中提供。

04

既有进游兼容

Agent 凭据

保留当前进游地址

标准进游也用 mch 签名;旧 AgentKey / Basic 仅用于兼容,不能替代钱包 secret。

商户号 mch_id 全程是字符串,当前可复用既有含字母的商户ID。user_id 为商户稳定ID:ASCII字母或数字、1–64位;不是内部带下划线的账号。currency 在验签后规范为 sc / gc,空或未知值按 sc。

02 / REQUEST FLOW

从进游到结算,谁调用谁?

拿到游戏地址,直接打开

商户后端确认进游响应 code=0 后,将完整 data.game_url 原样交给浏览器或 WebView。不要拆解、重拼地址或校验会话编号格式;game_session_id 仅作可选关联,不影响打开游戏。会话查找、鉴权和失效处理由供应方负责。

03 / STANDARD WALLET API

只在完整 mch_url 后追加四个动作

尚未开通商户:请填写完整钱包基础路径,开通后取得 mch_id、secret、mch_url。不自动插入 /app 或商户ID。

例如 mch_url 为 https://merchant.example.com/wallet/v1,下注地址就是 https://merchant.example.com/wallet/v1/bet。下面全部为 POST JSON,公共字段均含 mch_id、user_id、currency、timestamp、sign。

钱包接口职责与业务字段
/balance验证用户存在且可用。成功 data 只有 balance,固定四位字符串。
/betgame_id、parent_round_id、round_id、transaction_id、bet_amount。锁钱包并事务扣款;零金额也创建票据和幂等记录。
/win相同局绑定,win_amount 为本次增量,is_end 为 JSON 整数0/1。0 + is_end=1 也必须发送。
/cancelgame_id、独立 transaction_id、original_transaction_id。按原下注子局整体净回滚;扣回派奖后不足则全部回滚。
范围与既有进游

本轮更新钱包接口。游戏目录、RTP档位和静态/动态策略不改变;不据此宣称新增 brands、getrtp 或另一套公共目录接口。

标准进游为 POST https://games-ec2.betacewin.com/merchant-api/app/game/launch,同样用 mch_id、timestamp、sign;供应方调用商户 balance 后签发会话,回包为小写 code / message / data。仅需四个钱包接口,不要求额外 auth / spin。既有进游仍兼容 https://games-ec2.betacewin.com/merchant-api/singleWallet/LoginWithoutRedirect,使用既有 Agent 凭据与 Token 兼容流程,成功时 ErrorCode=0 的 Data 是游戏地址。它与钱包的小写返回外壳分开。

托管测试与外部网络边界

申请表可以收集包含路径的 HTTPS 钱包基址。当前真实托管联调仍使用平台分配的 http://127.0.0.1:端口,注册器网络边界没有因页面改版放宽。保存候选HTTPS地址不代表已经完成外网直连;运营方需核对网络并开通。商户不需要把内部概率、Ed25519或Redis端口暴露给外网。

04 / SIGNATURE

标准钱包签名如何计算?

P = 实际发送的全部参数,删除 sign
null → 空字符串;保留已发送空串和 0
参数名升序 → RFC3986 query string
sign = MD5_LOWER(query + '&secret=' + secret)
  • UTF-8;空格 %20,真实 + 为 %2B,~不转义,!'()*必须转义。
  • secret 尾段原样追加,不再 URL 编码;先验原请求签名,再做币种等业务规范化。
  • 时间为 Unix 秒字符串;与服务端相差不超过60秒,使用常量时间比较签名。
  • 金额保持十进制字符串,最多四位;不要将金额转成 float 再签名。

规范离线向量:mch_id=687785293&timestamp=1784300000&user_id=68778&secret=merchant-secret → cbef7ba2a3b3dc434e6f00406d2fdc63。这是虚拟密钥与固定旧时间,仅用于离线互验。完整 Python / Node SDK 示例在下方手册。

既有进游签名仍保持原方法
D = UTC PHP date('ymj')
G = MD5(D + AgentId + AgentKey)
S = 'Token=' + Token + '&GameId=' + GameId
  + '&Lang=' + Lang + '&AgentId=' + AgentId
Key = '000000' + MD5(S + G) + '000000'

仅用于现有 LoginWithoutRedirect 兼容入口;先按原值算 Key,再编码 query。AgentKey、兼容 Basic 与标准钱包 secret 是不同凭据。平台内部授权与结果签名仍由内部服务处理,不是四个钱包接口的验签要求。

05 / SETTLEMENT

返回快照、增量派奖与子局

统一小写外壳

{"code":0,"message":"success","data":{...}}。业务失败 data=null;HTTP200不代表业务成功,服务不可用HTTP500。

真实扣款与增量

bet 先扣款并返回待结票据,持久保存后才能请求 win。win_amount 是本次增量,不是累计奖金;0 不隐含结束。

子局可追溯

根局 parent_round_id=round_id;独立子局先零额bet。父节点先 is_end=0,子局确认后再发送独立的零额结束交易。

tickets 是绝对快照

按票据身份覆盖保存最终 amount、win_amount、status、时间,不能把返回快照再次累加或派钱。重复交易返回当前快照,不保证旧HTTP字节相同。

状态1待结、2已结、3取消。首次正数 win 更新原 action=1 下注票据及 win_transaction_id;之后正数 win 新增 action=2;is_end=1 返回该父子局全部最终票据。已结未取消可接受迟到正数派奖;跨月也更新原月票据。

错误码:1001商户、1002签名、1003过期、1004参数、1005游戏、1006币种、1007用户、1008游戏配置;2001余额不足、2002票据不存在、2003状态冲突;5000内部异常。回调必须在商户事务提交后才返回成功,不能先异步入队就声称已入账。