微信支付-免充值代金券与免充值立减券与单品券活动验收流程
功能介绍
为支持商户免充值营销经费开展运营活动,提升运营效率,微信支付特开发免充值营销产品功能。商户开通该产品功能后,可免费使用微信支付提供的免充值代金券、立减、折扣等营销工具。商户配置使用免充值代金券、立减、折扣等营销优惠,不需要预先充值营销经费,当用户核销优惠时,微信支付会直接扣减商户订单实收金额。
开通步骤
1.商户平台-营销中心,营销经费选择“免充值”配置活动活动
2.申请开通
3.配置活动
验收流程
步骤 | 准备项 | 说明 |
---|---|---|
1 | 准备环境:测试用例中的api调用需要使用微信支付沙箱环境的链接,即微信支付API域名后增加sandboxnew | 例如:刷卡支付现网的api https://api.mch.weixin.qq.com/pay/micropay 变更为:https://api.mch.weixin.qq.com/sandboxnew/pay/micropay |
2 | 顺序执行用例,执行后,确保用例的检查点完全符合预期 | 用例分为两类:必选和可选。必选用例必须要通过验收;可选用例是建议商户要做的,不会影响验收结果。验收仿真测试系统的API验签**为:API验签**请参见 “获取**API” |
3 | 测试完成后,在查询验收结果页,检查测试结果,对失败的用例做回归测试,直到完成全部验收。 | |
4 | 恢复环境:修改测试用例中的api为正式环境中的API。 | 例如:刷卡支付现网的api https://api.mch.weixin.qq.com/sandboxnew/pay/micropay变更为:https://api.mch.weixin.qq.com/pay/micropay |
验签秘钥API
请求Url | https://api.mch.weixin.qq.com/sandboxnew/pay/getsignkey |
是否需要证书 | 否 |
请求方式 | POST |
请求参数
字段名 | 字段 | 必填 | 示例值 | 类型 | 说明 |
---|---|---|---|---|---|
商户号 | mch_id | 是 | 1305638280 | String(32) | 微信支付分配的微信商户号 |
随机字符串 | nonce_str | 是 | 5K8264ILTKCH16CQ2502SI8ZNMTM67VS | String(32) | 随机字符串,不长于32位 |
签名 | sign | 是 | 5K8264ILTKCH16CQ2502SI8ZNMTM67VS | String(32) | 签名值 |
返回参数
字段名 | 字段 | 必填 | 示例值 | 类型 | 说明 |
---|---|---|---|---|---|
返回状态码 | return_code | 是 | SUCCESS | String(16) | SUCCESS/FAIL 此字段是通信标识,非交易标识 |
返回信息 | return_msg | 否 | 签名失败 | String(128) | 返回信息,如非空,为错误原因 ,签名失败 ,参数格式校验错误 |
以下字段在return_code 为SUCCESS的时有返回。
字段名 | 字段 | 必填 | 示例值 | 类型 | 说明 |
---|---|---|---|---|---|
商户号 | mch_id | 是 | 1305638280 | String(16) | 微信支付分配的微信商户号 |
沙箱** | sandbox_signkey | 否013467007045764 | String(32) | 返回的沙箱** |
测试用例
- 【 1001-可选用例-刷卡正常支付】
测试步骤
(1)手机客户端进入“微信->我->钱包->付款”获取支付条码;
(2)在收银台输入订单金额为 5.01 元,扫码枪扫描上述条码(此操作可选,若扫码时出现二维码失效等提示,可忽略提示,不影响测试结果),完成支付(或直接组包调用刷卡 api);
(3)根据商户内部单号(out_trade_no),调查单 api(https://api.mch.weixin.qq.com/sandboxnew/pay/orderquery)查询订单状态,与商户自有订单的关键信息进行核对
3.2 【 1002-可选用例-刷卡支付退款】
3.2.1 用例简述
订单金额 5.02 元,使用零钱+0.01 元免充值代金劵,实际支付 5.01 元,退款查询升级。
3.2.3 测试步骤
(1)使用刷卡支付,进行 5.02 元的订单支付;
(2)根据商户内部单号(out_trade_no),调查单 api(https://api.mch.weixin.qq.com/sandboxnew/pay/orderquery)查询订单状态;
(3)调用退款 api (https://api.mch.weixin.qq.com/sandboxnew/secapi/pay/refund)进行退款;
(4)调用退款查询 api (https://api.mch.weixin.qq.com/sandboxnew/pay/refundquery)查询退款结果。
3.3 【 1003-可选用例-公众号/APP/扫码正常支付】
3.3.1 用例简述
订单金额 5.51 元,其中 0.01 元使用免充值券,实际支付 5.50 元。
验正常支付流程,商户使用免充值代金券支付。
3.3.3 测试步骤
(1)用客户端扫码,选择商品下单(此操作可选,若扫码时出现二维码失效过期等提示,可忽略提示,不影响测试结果,支付时出现收银台 total_fee 错误,是因为微信支付真实环境里不存在此笔沙箱订单,可忽略此错误),调起微信支付交易确认页,调下单 api(https://api.mch.weixin.qq.com/sandboxnew/pay/unifiedorder)
(2)等待 5 秒,完成支付;
(3)调用查单 api(https://api.mch.weixin.qq.com/sandboxnew/pay/orderquery)查询订单状态,与商户自有订单的关键信息进行核对。
3.4 【 1004-可选用例-公众号/APP/扫码支付退款】
3.4.1 用例简述
订单金额 5.52 元,其中 0.01 元使用免充值券,实际支付 5.51 元。
3.4.3 测试步骤
(1)进行 5.52 元的订单支付;
(2)根据商户内部单号(out_trade_no),调查单 api
(https://api.mch.weixin.qq.com/sandboxnew/pay/orderquery)进行查询,与商户自有订单的关键信息进行核对;
(3)调用退款 api (https://api.mch.weixin.qq.com/sandboxnew/secapi/pay/refund)进行退款;
(4)调用退款查询 api (https://api.mch.weixin.qq.com/sandboxnew/pay/refundquery)查询退款结果
3.5【 1005-必选用例-交易对账单下载】
3.5.3 测试步骤
(1)调用对账单下载接口,下载对账单,其中下载对账单总单时 bill_type=ALL,下载对账单交易成功单时 bill_type=SUCCESS,下载对账单退款单时 bill_type=REFUND,链接样例:https://api.mch.weixin.qq.com/sandboxnew/pay/downloadbill;
(2)检查账单返回文件字段,结算金额=订单总金额-免充值券金额。
验收结果
见到以上页面,则代表验收通过。可协助商户开通活动。
开通可能遇到的问题以及解决方案
1、获取沙箱**失败,确认交易**是否正确
解决方案:
1)通过https://api.mch.weixin.qq.com/sandboxnew/pay/getsignkey接口获取的key值,在进行沙盒调用时需要进行二次加密。即通过接口获取的值非sign而是key
2)服务商模式下,mch_id为服务商商户号非子商户号
2、验证签名失败, 请调用getsignkey生成沙箱**
解决方案:
可通过微信验签工具进行签名的对比
若验收过程中存在问题,可扫描下方二维码进行交流