- 用户充值页面
- 订单支付页面
签名方式说明
签名方式与接口签名方式大致相同,以下是不同点:签名规则
规则:Method + HOST + URL + ? + QueryString
QueryString 对所有请求参数按参数名的字典序(ASCII 码)升序排序,并格式化为 参数名称=参数值 的形式,然后用 & 拼接。
区别于接口签名,此签名规则将时间戳放置在请求参数当中,而非直接追加在待签名串后面。
签名示例
以订单支付页面为例:
签名前原字符串:
Documentation Index
Fetch the complete documentation index at: /llms.txt
Use this file to discover all available pages before exploring further.
使用 Satogate 托管支付页面接收数字货币付款
https://pay.satogate.io/charge请求方式:GET 方法,打开新浏览器窗口/标签页Method + HOST + URL + ? + QueryString
QueryString 对所有请求参数按参数名的字典序(ASCII 码)升序排序,并格式化为 参数名称=参数值 的形式,然后用 & 拼接。
| 参数名称 | 值 |
|---|---|
| merchantOrderId | abc123 |
| merchantOrderAmount | 10.5 |
| merchantOrderExpireTime | 900 |
| apiKey | 123 |
| timestamp | 12345678901 |
GETpay.satogate.io/order?apiKey=123&merchantOrderAmount=10.5&merchantOrderExpireTime=900&merchantOrderId=abc123×tamp=12345678901
$apiSecret = '0CDE6743F18F3DA********49FD47C1576671FD5';
$srcStr = 'GETpay.satogate.io/order?apiKey=123&merchantOrderAmount=10.5&merchantOrderExpireTime=900&merchantOrderId=abc123×tamp=12345678901';
$macHex = hash_hmac('sha1', $srcStr, $apiSecret, false);
$signStr = base64_encode($macHex);
echo $signStr;
https://pay.satogate.io/order?apiKey=123&merchantOrderAmount=10.5&merchantOrderExpireTime=900&merchantOrderId=abc123×tamp=12345678901&sign=zmmjn35mikh6pM3V7sUEuX4wyYM=