支付后通知

成功或超时
失败 重发 (通知频率为15/15/30/180/1800/1800/1800/1800/3600,单位:秒)
重复收到后要做重复收到处理

返回失败通知

  1. $arr = [
  2. 'return_code' => 'FAIL',
  3. 'return_msg' => '签名失败|参数格式校验错误'
  4. ]

返回成功通知

  1. $options = [
  2. 'return_code' => 'SUCCESS',
  3. // 'return_msg' => '签名失败|参数格式校验错误'
  4. //
  5. 'appid' => 'wx8888888888888888', // true
  6. 'mch_id' => '1900000109', // true
  7. 'device_info' => '013467007045764', // false
  8. 'nonce_str' => '5K8264ILTKCH16CQ2502SI8ZNMTM67VS', // true
  9. 'sign' => 'C380BEC2BFD727A4B6845133519F3AD6, // true
  10. 'sign_type' => 'MD5', // false
  11. 'result_code' => 'SUCCESS', // true
  12. 'err_code' => 'SYSTEMERROR', // false
  13. 'err_code_des' => '系统错误', // false
  14. 'openid' => 'wxd930ea5d5a258f4f', // true
  15. 'is_subscribe' => 'N', // false,
  16. 'trade_type' => 'JSAPI', // false
  17. 'bank_type' => 'CMS', // true
  18. 'total_fee' => 100, // true
  19. 'settlement_total_fee' => 100, // false
  20. 'fee_type' => 'CNY', // false
  21. 'cash_fee' => 100, // true
  22. 'cash_fee_type' => 'CNY', // false
  23. 'coupon_fee' => 10, // false
  24. 'coupon_count' => 1, // false,
  25. 'coupon_type_$n' => 'CASH', // false
  26. 'coupon_id_$n' => 10000, // false
  27. 'coupon_fee_$n' => 100,
  28. 'transaction_id' => '1217752501201407033233368018'
  29. 'out_trade_no' => '1212321211201407033568112322',
  30. 'attach' => '123456', // false
  31. 'time_end' => '20141030133525', // true
  32. ];

本地服务器处理成功后
成功

  1. $result = [
  2. 'return_code' => 'SUCCESS',
  3. ];

失败

  1. $result = [
  2. 'return_code' => 'FAIL',
  3. 'return_msg' => '参数格式校验错误',
  4. ];

微信服务端返回xml

  1. <xml>
  2. <appid><![CDATA[wx2421b1c4370ec43b]]></appid>
  3. <attach><![CDATA[支付测试]]></attach>
  4. <bank_type><![CDATA[CFT]]></bank_type>
  5. <fee_type><![CDATA[CNY]]></fee_type>
  6. <is_subscribe><![CDATA[Y]]></is_subscribe>
  7. <mch_id><![CDATA[10000100]]></mch_id>
  8. <nonce_str><![CDATA[5d2b6c2a8db53831f7eda20af46e531c]]></nonce_str>
  9. <openid><![CDATA[oUpF8uMEb4qRXf22hE3X68TekukE]]></openid>
  10. <out_trade_no><![CDATA[1409811653]]></out_trade_no>
  11. <result_code><![CDATA[SUCCESS]]></result_code>
  12. <return_code><![CDATA[SUCCESS]]></return_code>
  13. <sign><![CDATA[B552ED6B279343CB493C5DD0D78AB241]]></sign>
  14. <sub_mch_id><![CDATA[10000100]]></sub_mch_id>
  15. <time_end><![CDATA[20140903131540]]></time_end>
  16. <total_fee>1</total_fee>
  17. <coupon_fee><![CDATA[10]]></coupon_fee>
  18. <coupon_count><![CDATA[1]]></coupon_count>
  19. <coupon_type><![CDATA[CASH]]></coupon_type>
  20. <coupon_id><![CDATA[10000]]></coupon_id>
  21. <coupon_fee><![CDATA[100]]></coupon_fee>
  22. <trade_type><![CDATA[JSAPI]]></trade_type>
  23. <transaction_id><![CDATA[1004400740201409030005092168]]></transaction_id>
  24. </xml>

用户服务端返回给微信服务器
···

<xml>
<return_code><![CDATA[SUCCESS/FAIL]]></return_code>
<return_msg><![CDATA[OK|签名失败|参数格式校验错误]]></return_msg>
</xml>
···

例子

  1. Array
  2. (
  3. [return_code] => SUCCESS
  4. [return_msg] => OK
  5. [appid] => wx25b4170deca41c0c
  6. [mch_id] => 1436749802
  7. [nonce_str] => rtfN9NBbkkD6veU4
  8. [sign] => 76AC2A3896C29875D0F80D11F5D7463F
  9. [result_code] => SUCCESS
  10. [prepay_id] => wx261706594853805ed300afa61107628533
  11. [trade_type] => JSAPI
  12. )