主题
退款与加密
退款接口
信息
- 地址:
https://openapi.syacn.cn/api/order/refund - 请求方式:
POST - 参数格式:
JSON
入参
参数
| 参数 | 名称 | 类型 | 说明 | 为空 |
|---|---|---|---|---|
appkey | 商户号/渠道号 | String(20) | 商户后台创建的应用appkey | NO |
sign | RSA加密内容 | String(1000) | NO |
样例
json
{
"sign": "1e/BTVa+awFIk7CeqAQ9cb9sxHMju8Ca3Wk/IwwT5244sRIRBGqsRlGkS9PtHQDLjH8ul9p6rudpuKtbvjrbJJW+pMOrWlN7sU2iXAP5eDNc7ncr6RYkevake1H3bSSpa9oFBAPkgfXKN8V/jSoePDtMs9NoPEIzpuH9iEJHJBY=",
"appkey": "tongbao"
}响应
参数
| 参数 | 上级 | 名称 | 类型 | 说明 | 为空 |
|---|---|---|---|---|---|
code | 响应码 | String | 200 为成功 | NO | |
msg | 响应描述 | String | YES | ||
info | 响应数据 | Object | YES |
样例
json
{
"code": "200",
"msg": "ok",
"info": {}
}加密说明
入参
参数
| 参数 | 名称 | 类型 | 说明 | 为空 |
|---|---|---|---|---|
ts | 当前时间戳 | String(13) | 毫秒,5分钟内有效 | NO |
orderNumber | 通宝订单号 | String(20) | 通宝订单编号 | NO |
加密公钥publicKey通过通宝后台管理系统获取
样例
json
{
"order_number": "TB2508251117184311284",
"ts": "1756092066000"
}加密Demo-Java版
java
import org.apache.tomcat.util.codec.binary.Base64;
import javax.crypto.Cipher;
import java.security.KeyFactory;
import java.security.PublicKey;
import java.security.spec.X509EncodedKeySpec;
public static String encryptByPubKey(String data, String publicKey) throws Exception {
byte[] pubKey = Base64.decodeBase64(publicKey);
X509EncodedKeySpec x509KeySpec = new X509EncodedKeySpec(pubKey);
KeyFactory keyFactory = KeyFactory.getInstance("RSA");
PublicKey publicKey1 = keyFactory.generatePublic(x509KeySpec);
Cipher cipher = Cipher.getInstance(keyFactory.getAlgorithm());
cipher.init(Cipher.ENCRYPT_MODE, publicKey1);
return Base64.encodeBase64String(cipher.doFinal(data));
}加密Demo-PHP版
php
/**
* RSA 加密:(联合登录)
* @param $data 待签名数据
* @param $private_key_path 商户私钥文件路径
* return 签名结果
*/
public function rsaSign($data) {
$path = 'data/key/public_key.txt';
$st = json_encode($data);
$pri = file_get_contents($path);
$pk = openssl_pkey_get_public($pri);
openssl_public_encrypt($st, $encrypt_data, $pk);
return base64_encode($encrypt_data);
}