# 小程序插件MiniPayPro注意事项

[返回接口接入步骤](接口接入步骤.md)

## 插件配置

- 在目标商户小程序中添加正确的MiniPayPro插件`appid`和版本。
- 开发、体验和正式版本分别确认插件可用性。
- 发布前确认插件权限、商户关系和返回页面路径均已生效。
- 插件配置错误时先修正配置，不要通过复用其他小程序或门店参数绕过。

插件版本升级后，应重新回归支付成功、顾客取消、页面返回、主动查询和回调处理，再发布商户小程序。

## 支付和查询时长

插件订单的有效支付时间为4分钟。主动查询从跳转插件成功5秒后开始：

- 第0至1分钟，每3秒查询一次。
- 第1至5分钟，每10秒查询一次。
- 第6分钟执行最后一次查询。

第6分钟仍没有最终成功或失败时，将订单状态更新为“结果未知”。此时不得履约，也不得自动创建新的支付订单。

## 退款异常查询

- 退款请求未返回最终状态时，前60秒每3秒查询一次。
- 60秒后停止自动查询并转人工处理。

## 插件返回不是交易结果

插件返回值只用于商户小程序的页面导航和提示。顾客可能取消、关闭页面，或在支付成功后因网络问题没有正常返回。

最终交易结果只能由商户后台根据**[查询接口](https://open.shouqianba.com/docs/payment/71?category_id=54)**或验签后的支付回调确认。

## 前后端安全边界

- 终端密钥、查询签名和退款签名只保存在商户后台。
- 商户小程序只接收调用插件必需的当前订单数据。
- `return_url`使用受控的小程序页面路径，不接受顾客任意输入。
- 日志不得记录密钥、完整签名或不必要的顾客支付信息。

## 订单与履约幂等

- 商户订单与插件支付订单保持一一对应，并保存双方订单标识。
- 同一业务只创建一个商户订单号。
- 插件重复进入时先读取原订单状态，不重复创建扣款。
- 查询和回调并发到达时只允许首次最终成功创建履约任务。
- 支付成功但履约失败时只重试履约。

