目录

API接口说明

URL设计

不建议:/payment/api/merc/v1/transOrder/query

建议:/api/v1/pay/transactions/merc-orders/{mercOrderNo}

版本控制

scheme:[域名]/api/[版本号]/[业务路径]

[业务路径]: 规则建议按产品或场景/(可选商户类型)/(产品前缀或业务场景)/业务接口路径

如:https://petalpay-developer.cloud.huawei.com.cn/api/v1/aggr/transactions/merc-orders/{mercOrderNo}

https安全要求

所有的API请求必须使用HTTPS。

支持的TLS协议版本: 1.2 / 1.3。

支持的加密套件列表:

TLS_CHACHA20_POLY1305_SHA256,TLS_AES_128_GCM_SHA256,TLS_AES_256_GCM_SHA384,

TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384

HTTP方法说明

当前华为支付对外接口涉及GET及POST 2种HTTP METHOD。

GET:对应于查询场景。适用于从服务器查询资源数据,如查询订单信息,安全且幂等。

POST:对应于新建/更新资源场景,如发起退款请求,不安全且不幂等。

数据格式

请求和响应报文统一使用JSON格式。

字符编码

华为支付所有请求默认支持UTF-8编码,如采用其他编码格式的报文可能导致验签失败、字段解析失败等问题。

HTTP METHOD方式为GET的接口请求,请求URL如涉及参数拼接,拼接后完整的请求URL不建议带特殊字符。如有需要,建议对URL中的特殊字符进行编码处理。URL特殊字符参考但不限于:

+, 空格, ?, %, #, &, =

请求响应形式

JSON中的所有数据格式都使用camelCase驼峰命名形式。

认证授权

认证(Authentication):认证操作确认调用者身份,防抵赖和数据篡改。所有对商户开放接口均需要商户在请求头中传递PayMercAuth字段,在开放网关认证通过后方可进行后续流程。

授权(Authoration):授权确保给定接口仅特定调用者才有权限调用。部分接口仅特定商户申请开通后方可使用。

API接口响应基类

请参考BaseGwRspWithSign

商户可对响应结果进行验签以加强安全性。待签字段是除“sign”字段以外的其他字段参与签名。验签方式为SM2。参见验签规则。