Skip to content

支付相关

WARNING

鸿蒙版本测试支付时, 需要在华为鸿蒙开发者后台, 添加好商品: 配置鸿蒙商品

支付

当玩家点击游戏内商品充值项时,调用支付接口:

js
import { U8SDK, U8OrderData, U8Error } from '@ohos/u8sdk';


...

let payParams:U8OrderData = {
  productId: "1",
  productName: "test",
  productDesc: "test",
  price: 1,
  coinNum: 0,
  serverId: "1",
  serverName: "tests",
  roleId: "1",
  roleName: "test",
  roleLevel: 1,
  extension: "demo",
  cpOrderId: "game_order_id",
  vip: "1"
};

U8SDK.getInstance().pay(getContext(), payParams).then(()=>{
  hilog.debug(0x0000, "U8SDK", "u8sdk pay success");
}).catch((err:U8Error)=>{
  hilog.error(0x0000, 'U8SDK', 'u8sdk pay failed:%{public}s', JSON.stringify(err));
});

orderData对象的结构说明如下:

参数名称参数类型参数说明
productIdString充值商品ID,游戏内的商品ID,
productNameString商品名称,比如100元宝,500钻石等,
productDescString商品描述,比如 充值100元宝,赠送20元宝,
priceint充值金额(单位:元),
coinNumint玩家当前身上剩余的游戏币,默认0
serverIdString玩家所在服务器的ID,
serverNameString玩家所在服务器的名称,
roleIdString玩家角色ID,
roleNameString玩家角色名称,
roleLevelString玩家角色等级,
vipString玩家vip等级
payNotifyUrlString玩家支付成功,U8聚合SDK会优先通过该地址,通知游戏服务器,给玩家发货。 如果该地址没设置, 会使用后台配置的地址
cpOrderIdString游戏自己的订单号,最大长度64字符;支付成功之后,U8聚合SDK原样返回给游戏服务器
extensionString自定义数据,最大长度:64字符;支付成功之后,U8聚合SDK原样返回给游戏服务器

处理服务端发货通知

玩家在客户端支付成功后, 华为鸿蒙平台会通知给U8聚合SDK服务端。 接着, U8聚合SDK服务端会按统一的协议通知给游戏服务器。

游戏服务器需要实现服务端->支付回调通知协议,用来接收U8聚合SDK的发货通知请求。

收到请求并验证通过后, 才能给玩家发放道具。

版权所有© 2021-2030 上海丞诺网络科技有限公司