AppGallery Connect:应用外支付

时间:2021-07-15 | 标签: | 作者:Q8 | 来源:HUAWEI网络

小提示:您能找到这篇{AppGallery Connect:应用外支付}绝对不是偶然,我们能帮您找到潜在客户,解决您的困扰。如果您对本页介绍的AppGallery Connect:应用外支付内容感兴趣,有相关需求意向欢迎拨打我们的服务热线,或留言咨询,我们将第一时间联系您!

< ">场景介绍

< font-size: 16px;">在AppGallery Connect的中创建的商品,进行了商品营销配置后,可以直接在华为应用市场或游戏中心的应用详情页中展示商品宣传图、商品名称、商品描述,供用户点击购买。

< font-size: 16px;">

< font-size: 16px;">注意

< font-size: 16px;">应用外支付功能目前仅支持发布地区包含中国大陆的应用。

< font-size: 16px;">应用外支付分为以下两种方式:

< font-size: 16px;">DeepLink方式:< font-size: 16px;">用户点击购买应用市场或游戏中心的商品后跳转到您自己的APP商品地址,该地址可直接拉起您的APP,由APP自行完成后续的支付和发货。

< font-size: 16px;">商品直购方式:< font-size: 16px;">分为兑换码支付和华为应用市场发起支付。

< font-size: 16px;">    兑换码支付:您可以提前在华为AppGallery Connect中配置商品兑换码,用户使用兑换码购买华为应用市场的商品后,华为服务器直接通知开发者服务器完成商品发货。

< font-size: 16px;">    华为应用市场发起支付:用户点击购买华为应用市场的商品后由华为应用市场发起支付,在支付完成后由华为服务器通知开发者服务器完成商品发货。

< font-size: 16px;">DeepLink方式的应用外支付仅需在配置商品营销信息时配置DeepLink地址,用户点击购买后将直接跳转到该DeepLink地址,后续支付和发货流程与应用内商品支付流程一致,参见华为支付开发指南。

< font-size: 16px;">兑换码支付方式仅需参考配置虚拟商品配置商品兑换码,并在配置商品营销信息时配置发货地址即可,无需额外代码开发。

< font-size: 16px;">华为应用市场发起支付的方式需要您开发商品直购和掉单查询功能,本章节将具体介绍此功能的开发。

< font-size: 16px;">前提条件

< font-size: 16px;">已参见配置商品营销信息配置商品营销信息。



< font-size: 16px;">商品直购

< font-size: 16px;">

< font-size: 16px;">接收发货通知:

< font-size: 16px;">商品直购成功后,华为数字商品服务器会调用通知发货接口通知开发者服务器对已经完成购买的商品发货。

< font-size: 16px;">请求消息样例:

< font-size: 16px;">POST {第三方应用服务器url} HTTP/1.1 

< font-size: 16px;">Content Type : application/json ; charset=UTF-8 

< font-size: 16px;">{  



< font-size: 16px;">  "data": { 

< font-size: 16px;">    "developerId": "234234234", 

< font-size: 16px;">    "appId": "1231333", 

< font-size: 16px;">    "orderId": "sdfsfff32324324234234", 

< font-size: 16px;">    "productNo": "product344", 

< font-size: 16px;">    "openId": "openId13123", 

< font-size: 16px;">    "count": 1, 

< font-size: 16px;">    "ts": 12312313123131123 

< font-size: 16px;">  }, 

< font-size: 16px;">  "sign": "string" 

< font-size: 16px;">}  

< font-size: 16px;">参见获取验签公钥获取用于验证订单信息的公钥。

< font-size: 16px;">开发者服务器收到发货通知后,参考验签示例对发货通知消息的sign字段验签,并根据查询订单相关数据的有效性,向华为服务器返回处理结果。

< font-size: 16px;">返回消息样例:

< font-size: 16px;">{ 

< font-size: 16px;">  "error": { 

< font-size: 16px;">    "errorCode": 0, 

< font-size: 16px;">    "errorMsg": "string" 

< font-size: 16px;">  }  

< font-size: 16px;">}  

< font-size: 16px;">or   

< font-size: 16px;">{  

< font-size: 16px;">    "data": { 

< font-size: 16px;">    "result": 0 

< font-size: 16px;">  } 

< font-size: 16px;">} 

< font-size: 16px;">根据商品ID和当前用户信息完成发货操作,此部分由开发者自行完成。

< font-size: 16px;">发货成功主动通知:

< font-size: 16px;">参考创建API企业市场营销客户端章节创建用于访问华为服务器接口的API客户端。

< font-size: 16px;">说明

< font-size: 16px;">API客户端仅需创建一次。

< font-size: 16px;">调用获取Token接口获取用于API客户端认证的的access_token。

< font-size: 16px;">开发者服务器在发货成功后调用发货成功通知接口向华为服务器发送通知,传入access_token。通知成功后华为服务器刷新订单状态。

< font-size: 16px;">请求消息样例:

< font-size: 16px;">{   

< font-size: 16px;">   "orderId": "string", 

< font-size: 16px;">   "productNo": "string", 

< font-size: 16px;">   "openId": "string", 

< font-size: 16px;">   "status": 0, 

< font-size: 16px;">   "ts": 12312313123131123 



< font-size: 16px;"> }

< font-size: 16px;">响应消息样例:

< font-size: 16px;">{ 

< font-size: 16px;">   "error": { 

< font-size: 16px;">       "errorCode": 0, 

< font-size: 16px;">       "errorMsg": "string" 

< font-size: 16px;">   }   

< font-size: 16px;">}    

< font-size: 16px;">or

< font-size: 16px;">{  

< font-size: 16px;">  "data": { 

< font-size: 16px;">       "result": 0 

< font-size: 16px;">   }    

< font-size: 16px;">}

< font-size: 16px;">掉单查询

< font-size: 16px;">商品直购后通知发货过程可能发生通知发货失败而产生掉单,此时华为服务会将该订单标识为未发货状态。当应用启动时需要主动查询当前华为帐号是否有未发货的订单,如果有掉单数据需通知开发者服务器发货。开发者服务器完成发货后通知华为服务器发货成功,华为服务器将订单状态修改为发货状态。

< font-size: 16px;">应用启动时主动调用JosApps.getProductClient方法初始化ProductClient实例。

< font-size: 16px;">ProductClient productClient =  JosApps.getProductClient(this);

< font-size: 16px;">应用调用ProductClient.getMissProductOrder方法查询未发货的订单。

< font-size: 16px;">说明

< font-size: 16px;">本步骤仅为建议,您可根据查询结果感知当前设备中是否存在已登录的华为帐号,正式的查询将在步骤4中进行。

< font-size: 16px;">HMS Core SDK会根据当前设备中已经登录授权的华为帐号查询该帐号的掉单数据。如果当前设备中未登录华为帐号,则不返回数据。

< font-size: 16px;">Task<List<ProductOrderInfo>> task = productClient.getMissProductOrder(this);

< font-size: 16px;">task.addOnSuccessListener(new OnSuccessListener<List<ProductOrderInfo>>() {

< font-size: 16px;">    @Override

< font-size: 16px;">    public void onSuccess(List<ProductOrderInfo> productOrders) {

< font-size: 16px;">        if (productOrders != null) {

< font-size: 16px;">            for (ProductOrderInfo productOrderInfo : productOrders) {

< font-size: 16px;">                String productNo = productOrderInfo.getProductNo();

< font-size: 16px;">                String tradeId = productOrderInfo.getTradeId();

< font-size: 16px;">          &nbs发布会邀请媒体p;     showLog("productNo:" + productNo + ",tradeId:" + tradeId);

< font-size: 16px;">            }

< font-size: 16px;">        } else {

< font-size: 16px;">            showLog("product list is null");

< font-size: 16px;">        }

< font-size: 16px;">    }

< font-size: 16px;">}).addOnFailureListener(new OnFailureListener() {

< font-size: 16px;">    @Override

< font-size: 16px;">    public void onFailure(Exception e) {

< font-size: 16px;">        if (e instanceof ApiException) {

< font-size: 16px;">            ApiException apiException = (ApiException) e;

< font-size: 16px;">            showLog("get miss product info failed:" + apiException.getStatusCode());

< font-size: 16px;">        }

< font-size: 16px;">    }

< font-size: 16px;">});

< font-size: 16px;">引导用户进行华为帐号授权登录。

< font-size: 16px;">说明

< font-size: 16px;">为了更好的用户体验,建议您将华为帐号与您自己的帐号体系绑定,以便于用户可以同时浏览华为帐号和非华为帐号购买的订单。

< font-size: 16px;">用户的华为帐号授权登录后,应用再次调用ProductClient.getMissProductOrder方法确认掉单数据。

< font-size: 16px;">应用调用ProductOrderInfo.getSign方法获取订单信息中的签名字符串,使用获取验签公钥中获取的验签公钥参考对掉单数据验签对订单信息进行验签。

< font-size: 16px;">验签通过后,应用客户端通知应用服务端发货。开发者服务器发货完成后向华为服务发送通知

AppGallery Connect:应用外支付

上一篇:如何为 Facebook 广告设置预算
下一篇:eBay买家拍下产品却不付款,你可以这样处理并管


版权声明:以上主题为“AppGallery Connect:应用外支付"的内容可能是本站网友自行发布,或者来至于网络。如有侵权欢迎联系我们客服QQ处理,谢谢。
相关内容
推荐内容
扫码咨询
    AppGallery Connect:应用外支付
    打开微信扫码或长按识别二维码

小提示:您应该对本页介绍的“AppGallery Connect:应用外支付”相关内容感兴趣,若您有相关需求欢迎拨打我们的服务热线或留言咨询,我们尽快与您联系沟通AppGallery Connect:应用外支付的相关事宜。

关键词:AppGallery,Connect:应用外支

关于 | 业务 | 案例 | 免责 | 隐私
客服邮箱:sales@1330.com.cn
电话:400-021-1330 | 客服QQ:865612759
沪ICP备12034177号 | 沪公网安备31010702002418号