异步通知接口更新时间:2018-12-06
商户支付订单结果通知包括两部分的通知,即前台客户端实时同步交易结果应答和后台服务器端异步通知。前台实时同步应答即是当消费者支付完成后实时得到的UI层面的提示,后台服务器端异步通知是现在支付在实际资金流处理完成后给商户的服务器通过HTTPS协议异步发起的支付最终结果通知。
- 在商户推送订单给MiracleGames后,商户APP端实时收到的应答为支付订单受理结果,并非最终支付完成结果,最终结果以服务器端异步通知为准。
- 服务器端异步通知采用HTTPS协议进行通讯。MiracleGames通知商户的URL以商户支付订单推送时所填写的商户通知URL为准。
- MiracleGames只对支付最终成功的订单进行通知商户,对支付失败或者其它状态的支付订单不进行异步通知。商户收到成功订单通知后进行自己的业务处理,然后实时同步应答字符串“success”(不包含引号)给MiracleGames。如果商户在接收到支付异步通知后没有同步应答字符串“success”,那么MiracleGames服务端就认为此次通知商户失败,将重复发起对商户的通知。
- 开发者服务器接收到Miracle Games的回调通知,程序执行完后必须打印输出“success”(不包含引号)。如果开发者反馈给Miracle Games的字符不是success这7个字符,Miracle Games服务器会认为此次通知商户失败,将重复发起对商户的通知,直到超过22小时。
- 重复通知机制:一般情况下,22小时以内完成10次通知(通知的间隔频率一般是:0m、10m、20m、30m、1h、2h、3h、4h、6h、7h。即每次通知的时间分别为充值成功后0m、10m、30m、1h、2h、4h、5h、9h、15h、22h)。在每一次通知后,如果收到“success”的应答就停止重复通知。
通知方式
环境 |
请求方式 |
IP地址 |
正式环境 |
GET |
40.73.39.164 |
通知参数
参数 |
类型 |
必填 |
描述 |
示例值 |
project_id |
String(10) |
Y |
MiracleGames分配给开发者的项目ID |
1C77C16EEA |
trade_no |
String(1,32) |
Y |
MiracleGames交易号 |
20150320010101001 |
trade_status |
String(1,10) |
Y |
交易状态,WAIT(等待玩家付款)、FAIL(交易失败)、SUCCESS(交易成功) |
|
order_key |
String(1,64) |
Y |
商户订单号,64个字符以内、可包含字母、数字、下划线;需保证在商户端不重复 |
20150320010101001 |
version |
String(3) |
Y |
调用的接口版本,固定为:1.0 |
1.0 |
amount |
Price |
Y |
订单金额,单位为元,精确到小数点后两位,取值范围[0.01,1000] |
88.88 |
currency |
String(3) |
Y |
货币单位(ISO 4217),目前只支持USD |
USD |
num |
Integer |
Y |
商品数量 |
1 |
total_amount |
Price |
Y |
订单总金额 |
88.88 |
country |
String(2) |
Y |
国家代码,若为空,则系统会根据玩家IP自动定位国家 |
CN |
rate |
Decimal(10,2) |
Y |
交易费率,单位(%) |
5.0 |
settle_amount |
Price |
Y |
结算金额 |
84.43 |
sign_type |
String(1,10) |
Y |
签名字符串所使用的签名算法类型,目前支持MD5 |
MD5 |
sign |
String(32) |
Y |
参数的签名串,详见【签名】 |
d80d242e0a4477c36dbe5241282e168f |
通知示例
amount=0.01&country=us¤cy=USD&num=1&order_key=20150320010101054&project_id=580BB6368E&rate=5.0&settle_amount=0.01&sign=e7abfc41f71978ccea05661539b1a255&sign_type=MD5&total_amount=0.01&trade_no=580BB6368E2018122115102953963189&trade_status=SUCCESS&version=1.0