Skip to content

充值接口

接口说明

用于在游戏内用户发起充值时拉起平台收银台页面。

请求方式与地址

  • Method:GET
  • Path:https://pay.keepidle.com/order

参数说明

参数名类型必填说明
uidint64平台用户唯一 ID(登录接口中传递的 uid
appidstring平台游戏唯一 ID(登录接口中传递的 appid
sidstring游戏区服ID,游戏各个分区的编号为 S1,S2,S3,大小写都可
amountint支付金额(分),必须为大于等于 1 的整数。注意单位为分,需将元 ×100 转换为分
ridstring角色 ID,厂商自定义,最大 64 字节
pidstring商品 ID,厂商自定义,最大 64 字节
extstring扩展属性,厂商自定义,最大为255字节
该字段会原样透传,并在支付通知中回传,便于厂商内部关联处理
由于 ext 会出现在 URL 查询参数中,内容必须进行编码,避免 &、=、?、#、空格、中文等导致解析错误
signstring签名,参与签名(uid, appid, sid, amount, rid, pid, ext),详见签名规则

请求示例

text
https://pay.keepidle.com/order?uid=20000000&appid=ki10000&sid=s1&amount=100&rid=1000&pid=1000&ext=&sign=66c0800b415e5085b2a63959e718d90bb4322e6a3020fa0cae0fd2656f8c9d51

收银台调用

为了厂商能方便调用支付,平台进行了针对不同类型游戏的封装,厂商只需要1行代码即可调用支付,支付所需参数需要游戏与自己服务端进行交互

页游

此类游戏是在平台页面的iframe内执行,游戏页须能执行JavaScript。

1、SDK(推荐)

页面直接导入sdk

html
<script src="https://keepidle.com/wan/keepidle-pay.js"></script>

调用支付

js
KeepIdlePay.open({
  uid: xxxxxxxx,
  appid: 'xxxxx',
  sid: 's1',
  amount: 600,
  rid: '1000',
  pid: '1001',
  ext: '',
  sign: 'xxxxxxxx',
});

2、发消息

js
window.parent.postMessage(
  {
    source: 'keepidle-game',
    version: 1,
    action: 'pay.open',
    order: {
      uid: xxxxxxxx,
      appid: 'xxxxx',
      sid: 's1',
      amount: 600,
      rid: '1000',
      pid: '1001',
      ext: '',
      sign: 'xxxxxxxx',
    },
  },
  'https://wan.keepidle.com',
);

插件游戏 / 纯端游戏

调用平台客户端SDK(KiGameSDK.dll)函数kiShowPay,参数为json字符串

json
{
  "uid": xxxxxxxx,
  "appid": "xxxxxx",
  "sid": "s1",
  "amount": 600,
  "rid": "1000",
  "pid": "1001",
  "ext": "",
  "sign": "xxxxxxxx"
}

对照

游戏类型订单格式怎么调
页游JSON 对象KeepIdlePay.open({...})postMessage(见上)
插件 / 纯端JSON 字符串客户端 DLL 支付函数

返回值说明

收银台
平台收银台页面展示单码,支持微信与支付宝扫码支付。

签名规则

注意

本签名所用密钥为游戏密钥,在CP自接入后台可查看

厂商AppSerret