目录

快速接入

商户支付接入流程:

  1. 商户客户端请求商户服务器创建商品订单。
  2. 商户服务器调用华为支付服务提供的H5预下单接口获取预下单号(prepayId和h5Url)返回给客户端。
  3. 客户端调用加载h5Url调起华为支付服务收银台,完成支付。
  4. 华为支付服务客户端展示支付结果页,用户关闭支付结果页后华为支付服务客户端会返回支付状态给商户客户端。
  5. 支付成功后,华为支付服务器会调用回调接口返回支付结果信息给商户服务器;支付失败场景可能不会有支付结果回调通知。
  6. 商户服务器收到支付结果回调响应后,使用SM2验签方式对支付结果进行验签。

支付是否成功可以通过回调通知中的orderStatus的返回状态判断:

  • TRX_SUCCESS:交易成功
  • TRX_FAILED:交易失败

h5Url处理

通过H5预下单接口获取h5Url后可对参数做进一步处理:

  1. query参数拼接paymentTools=wechat_micropay,则会自动跳转微信支付(需商户已开通间联微信支付能力)。
  2. query参数拼接paymentTools=petalpay,则会自动使用华为支付。
  3. query参数不拼接paymentTools参数,则h5Url将根据加载环境显示页面。

不同的参数拼接处理,支付时h5Url加载效果会有所区别,具体可参见浏览器环境加载h5Url。

App内webView加载h5Url

商户客户端获取h5Url后通过应用webView组件加载该URL来拉起华为支付收银台完成支付。

  1. h5Url可能会通过deeplink链接的方式拉起华为支付收银台、华为钱包、微信app,建议对hms://、petlapay://、weixin:// 协议的请求放通。

h5Url加载效果

[h2]浏览器环境加载h5Url

根据h5Url处理中通过不同参数拼接处理指定支付环境后,浏览器环境h5Url具体加载效果如下:

指定微信支付

指定华为支付(用户需提前登录华为账号并验证支付密码)

未指定支付方式

直接拉起华为支付微信小程序支付。

用户手机上存在华为钱包,则直接拉起华为钱包支付。

用户手机上不存在华为钱包,则基于H5收银台完成支付

如果同时支持华为支付和微信间联支付,未指定支付方式时则显示H5聚合收银台,让用户选择对应方式支付。

[h2]扫码加载h5Url

微信扫码支付

华为钱包扫码支付

  1. 如商户已开通华为支付间联微信支付能力,获取到h5Url后可根据需要生成对应的商家订单码。
  2. 用户使用微信扫描商户提供的商家订单码后重定向至h5Url拉起华为支付收银台完成支付。
  1. 商户获取到h5Url后可根据需要生成对应的商家订单码。
  2. 用户打开华为钱包扫描商户提供的商家订单码后重定向至h5Url拉起华为支付收银台完成支付。

支付结果获取

  1. 商户在构建“直连商户H5预下单”请求时通过参数传入callbackUrl。在华为支付服务器完成支付后,将以POST方式调用callbackUrl,将支付结果返回给商户服务器。参见支付结果回调通知。
  2. 商户可通过查询支付订单接口主动查询华为支付服务器获取支付结果。
  3. 商户在预下单传递了returnUrl参数(即加载h5url时携带returnUrl),用户在端侧完成支付操作后将携带结果重定向回returnUrl。

    结果信息为:result={resultCode:xxx; resultDesc:xxx, 其他业务参数信息}。

    结果含义如下:

    resultCode

    resultDesc

    说明

    000000

    success

    SUCCESS(成功)

    -1

    common error

    FAIL(通用错误)

    30000

    user cancel payment

    CANCEL(用户取消支付)

API列表

H5支付API列表

功能列表

描述

H5预下单

此接口是H5应用用来获取华为支付预订单号prepayId。

支付结果回调通知

华为支付服务器调用APP预下单传入的callbackUrl回调接口,将用户支付成功的消息通知给商户。

查询支付订单

商户用此接口查询已经存在的交易订单状态。

申请退款

此接口提供给用户退款使用。

退款结果回调通知

开发者完成退款申请成功后,华为支付服务器调用开发者请求退款接口时传入的Url向开发者服务器发送退款关键事件。

查询退款订单

调用退款申请后,调用此接口查询退款订单状态。

查询对账单

提供给商户下载对账账单。

查询结算账单

提供给商户下载结算账单。