通知规则
顾客支付完成后(订单状态为“已支付”),支付FM把相关支付结果和数据发送给您的业务系统,业务系统需要接收处理,并响应应答。
如果业务系统应答超时或不是返回success,支付FM认为通知异常,支付FM会通过一定的策略定期重新发起通知,尽可能提高通知的成功率,但不保证通知最终能成功。
首次实时通知异常后重发通知频率为15s/30s/3m/10m/20m/30m/60m/3h/6h/ - 总计 11h3m45s
SDK下载
微盘下载:https://share.weiyun.com/E2B4ZoBO
QQ群下载:366959204
支付结果通知
注意:
1、notify_url就是您的业务系统的开放接口,请保证可以直接请求访问;不要做301、302等跳转;不要做登录验证等
2、系统会记录返回异常的部分记录,在商户订单的失败详情中供查阅
3、接口请求默认超时3s,所以您的接口执行时间要在3s内执行完毕
4、这是GET
请求,您可以参考请求示例拼接请求串,通过Postman调试您的接口
5、结果通知可能会多次请求,请务必参考下文特别提醒的建议处理
6、若多次回调异常,仍不按照接口规范进行调整,根据《支付FM用户条款》本公司将暂停或终止您对支付FM服务的使用特别提醒:
1、商户系统对于支付结果通知的内容一定要做签名验证,并校验返回的订单金额是否与商户侧的订单金额一致,防止数据泄漏导致出现“假通知”,造成资金损失。
2、当收到通知进行处理时,首先检查对应业务数据的状态,判断该通知是否已经处理过,如果没有处理过再进行处理,如果处理过直接返回结果成功暨字符串success。在对业务数据进行状态检查和处理之前,要采用数据锁进行并发控制,以避免函数重入造成的数据混乱。
通知类型:服务器异步通知(notify_url)
请求方式:GET
请求参数说明:
字段名 | 变量名 | 必填 | 类型 | 示例值 | 描述 |
---|---|---|---|---|---|
商户ID | pid | 是 | String | 1001 | 对应支付FM平台的商户号。在支付FM商户后台【用户中心】处可查看,该值不是用户名。 |
支付订单号 | trade_no | 是 | String | 20160806151343349021 | 聚合支付订单号 |
商户订单号 | out_trade_no | 是 | String | 20160806151343349 | 商户系统内部的订单号 |
支付方式 | type | 是 | String | alipay,wxpay | |
商品名称 | name | 是 | String | VIP会员 | |
商品金额 | money | 是 | String | 10 | |
支付状态 | trade_status | 是 | String | TRADE_SUCCESS | |
签名字符串 | sign | 是 | String | 202cb962ac59075b964b07152d234b70 | 签名算法见下文 |
签名类型 | sign_type | 是 | String | MD5 | 默认为MD5 |
MD5签名算法
KEY 对应支付FM用户中心的 接入密钥
请对参数按照键名进行降序排序(a-z),sign sign_type 和空值不进行签名!。 排序后请操作参数生成或拼接一个url请求字符串 例如 a=b&c=d&e=f (Url值不能携带参数!不要进行urlencode) 再将拼接好的请求字符串与平台生成的Key进行MD5加密得出sign签名参数 md5 ( a=b&c=d&e=f + KEY ) (注意:+ 为各语言的拼接符!不是字符!),md5为小写
通知IP列表
请需要设置IP地址请求访问白名单的用户注意设置防火墙等安全工具中的IP地址段,之前未有设置过IP段的用户不需做调整。
如果你的防火墙不支持掩码形式,直接一个个添加IP。如果掩码形式没有/27这种形式可以增加/8、/16、/24都可以 回调通知出口IP/掩码形式(IP地址范围)列表:
47.94.194.102/24(47.94.194.102-47.94.194.112)【2024年3月9日启用】
43.143.170.189/24(43.143.170.189-43.143.170.199) 【2024年4月29日启用】
39.107.193.170/24 (39.107.193.170-39.107.193.180) 【2024年4月30日启用】
47.104.216.190/24(47.104.216.190-47.104.216.195) 【2024年9月14日启用】