Appearance
退款结果通知
1、方式
POST
2、格式
JSON
3、参数示例&说明
{
"from": "google",
"user_id": "50b921ad9755",
"order_id": "1710926201717",
"trade_id": "GPA.3370-1939-7063-40360",
"product_id": "1",
"money": "1.00",
"extra_data": "{\"server_id\":\"1\"}",
"status": 2,
"completed_at": "2024-03-20 17:16:54",
"updated_at": "2024-03-20 17:17:00",
"key": "de0bc37d0b2efac53bd7088e6979ad16",
"timestamp": 1710926220,
"sign": "c3b14b8a12373d16e815fd9c2ab71c92"
}
参数名 | 类型 | 必填(非空) | 说明 | 示例 |
---|---|---|---|---|
sign | string | true | 签名 | 32fa3c87eccafb6885122e57b75440da |
timestamp | int | true | 时间戳 | 1710818943 |
key | string | true | ||
from | string | true | 来源 | |
user_id | string | false | 用户id | aba8b5973834 |
order_id | string | true | 订单id | 1703757757429 |
trade_id | string | true | 交易号(第三方平台) | GPA.3336-3051-9298-45689 |
product_id | string | true | 产品id(第三方平台) | 1 |
money | float | true | 金额 | 1.00 |
refund_order_id | string | true | 退款id(业务方) | 1 |
refund_trade_id | string | false | 退款交易号(第三方) | |
refund_money | float | true | 退款金额 | 1.00 |
status | int | true | 状态:1=未支付,2=已完成,3=支付中,4=已取消或失败 | 2 |
completed_at | datetime | true/false | 支付完成时间 | 2023-10-10 08:08:08 |
updated_at | datetime | true | 更新时间 | 2023-10-10 08:08:08 |
extra_data | json | true | 透传参数 | extra_data中结构自定义 |
ip | string | true | IP | 127.0.0.1 |
ua | string | true | User agent | Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) |
platform | string | true | 平台 | ANDROID |
brand | string | true | 品牌 | Redmi |
model | string | true | 设备型号 | M1906G7G |
os_version | string | true | 系统版本 | 13 |
is_sandbox | int | true | 1=沙箱(apple支付) | 0 |
需要在sdk平台应用配置中设置退款回调url 注意:status=2,处理完逻辑后请返回success
php
echo "success";
4、接收示例
PHP示例
// 获取POST请求的原始数据
$postData = file_get_contents('php://input');
// 将原始数据解析为关联数组
$data = json_decode($postData, true);
5、签名难证
签名参数
sign
签名算法
将除sign之外的所有参数按键名进行升序排列,然后拼接成字符串(例:k1=v1&k2=v2),再拼接上sdk平台应用密钥,最后用MD5算法加密,得到签名。
PHP示例
php
unset($params['sign']);
// 对数组的值按key排序
ksort($params);
// 生成url的形式,如k1=v1&k2=v2&k3=v3
$paramsStr = urldecode(http_build_query($params));
// 生成sign
//$secret 应用密钥,宝船SDK平台创建应用后自动生成
$sign = md5($paramsStr . $secret);