授权 (Authorization)
1. 签名计算
所有请求必须包含签名。请求的签名是对以下字段按正确顺序进行哈希计算的结果:
Validate 和 Topup API 请求:
id + jsonrpc + method + serviceProvider + txnId + orderId + userId + zoneId + currency + amount + sku + quantity + paymentChannelId + isForTest (+ roleId)
示例
id = “4123456789012345678” jsonrpc = "2.0" method = "topup" serviceProvider = "Coda" txnId = “4123456789012345678" orderId = "4876543210987654321" userId "1002356" zoneId": "101" currency = "IDR" amount = "200000.0" sku = "diamonds_1" quantity = 1 paymentChannelId = 0 isForTest = 0 roleId="111" secretKey = 1234567890ABCDE
如果不需要 roleId:
Hmac 值应按如下方式计算: hmac.encode(“1234567890ABCDE”,“41234567890123456782.0topupCoda412345678901234567848765432109876543211002356101IDR200000.0diamonds_1100”,'SHA256')
生成的签名值等于:
78c0e1335a95b9b0bd2b8c24f34f15c2b5d51b860487aa1a5d0e84ad4bf3c09b
如需 roleId:
Hmac 值应按如下方式计算: _hmac.encode("1234567890ABCDE", "41234567890123456782.0 充值代码 412345678901234567848765432109876543211002356101 印尼盾 200000.0 钻石_1100111", 'SHA256')
生成的签名值等于:
9a648682c00726535f3c0c7db15cdb795bf6138378ff3478625eca260dcfe3dd
使用 python 生成签名的示例 bash 脚本: #------------------------------------------------------------- echo -e "import hashlib,hmac\nprint hmac.new('secretKey', '41234567890123456782.0topupCoda412345678901234567848765432109876543211002356101IDR200000.0diamonds_112270', hashlib.sha256).hexdigest()" | python #-------------------------------------------------------------
*secretKey: 商户定义此值并与 Coda 共享。
2. IP 白名单
Codashop 正式环境:
Codashop 预发布环境:
xShop
最后更新于
这有帮助吗?