构造签名串#
签名串一共有五行,每一行为一个参数。结尾以\n (换行符,ASCII编码值为0x0A)结束,不包括最后一行。
注意:签名串的结构规则:每行一个元素,该行元素若是缺省不用传,但是换行符需要,保持结构不变。始终遵循一行一个元素,没有元素,还是得换行,最后一个元素除外请求路径\n
请求时间戳(timestamp)\n
请求随机串(nonce)\n
商户号\n
请求报文主体
请求路径\n
请求时间戳(timestamp)\n
请求随机串(nonce)\n
商户号
若请求的资源不涉及商户号, 则可以不用传,但是换行符还是需要(一个规则:每行一个元素,该行元素若是缺省不用传,但是换行符需要,保持结构不变。始终遵循一行一个元素,没有元素,还是得换行,最后一个元素除外)↓请求路径\n
请求时间戳(timestamp)\n
请求随机串(nonce)\n
\n
请求报文主体
计算签名值#
绝大多数编程语言提供的签名函数支持对签名数据进行签名。强烈建议客户调用该类函数,使用客户私钥对待签名串进行SHA256withRSA签名,并对签名结果进行Base64编码得到签名值。设置HTTP头#
在所请求内容归属于商户的情况下, 需要设置X-Merch-Id请求头, 内容是 Paykka跨境收款开放平台 分配的商户号 (生成方式)
请求通过HTTPAuthorization头来传递签名, 其内容是一个经过URLEncode的JSON对象, 包含以下字段:
| key | 格式 | 说明 |
|---|
| sign_type | String | 签名方式(SHA256_WITH_RSA) |
| timestamp | String | 请求生成时的毫秒时间戳值(Milliseconds since Unix Epoch) |
| nonce | String(6-32) | 请求生成时, 随机生成的字符串, 用于请求防重 |
| key_id | String | 平台侧分配的密钥id, 对应客户 |
| signature | String | 请求签名 |
Modified at 2025-05-08 09:18:17