支付成功,服务器出现当机情况。

就是说有一种情况:比如支付宝支付。我们调用接口。当如果客户支付成功后,会有一个回调。这是我们服务器出现当机了的情况,导致客户端订单没有把支付状态更改过来变成已支付,我们有什么处理方法可以避免这种情况吗?

微信,当机最多1小时
对后台通知交互时,如果微信收到商户的应答不是成功或超时,微信认为通知失败,微信会通过一定的策略定期重新发起通知,尽可能提高通知的成功率,但微信不保证通知最终能成功。 (通知频率为15/15/30/180/1800/1800/1800/1800/3600,单位:秒)
注意:同样的通知可能会多次发送给商户系统。商户系统必须能够正确处理重复的通知。

支付宝,当机最长15小时
程序执行完后必须打印输出“success”(不包含引号)。如果商户反馈给支付宝的字符不是success这7个字符,支付宝服务器会不断重发通知,直到超过24小时22分钟。一般情况下,25小时以内完成8次通知(通知的间隔频率一般是:4m,10m,10m,1h,2h,6h,15h);

如果在指定时间内未恢复服务器,人工接入咯。。

可能我没有表达清楚。。。就是我们为了避免可能有这样的情况发生,考虑到安全这种东西,我们提前有什么方法可以去做吗?

通过定时任务、扫描本地“付款中”超过一段时间的订单,主动去第三方(微信/支付宝)拉取订单状态来同步更新本地订单