微信支付-免充值立减与折扣(上篇)

 

前排:本篇文章将会主要介绍如何开通 免充值立减与折扣功能,具体使用请看微信支付-免充值立减与折扣(下篇)

一 前言

项目需求:使用XX银行卡支付可享受满XX减XX优惠。

一开始看到这个需求,觉得一脸懵逼,不可思议,首先想到的问题是支付控件是微信的,我们只能在支付完成后回调接口知道用户的支付方式(使用零钱或者某某银行卡),支付方式不可能在用户发起支付时获取到。难不成要在用户支付后进行退款操作?想一想就觉得好傻逼(这个方法pass)。接着便想微信支付肯定不会这么傻,肯定有接口可以在支付时知道支付方式或者更方便的方法。好在最终,在商户平台发现了解决方式、本文的主题--免充值立减与折扣

二 准备

2.1 必要前提

你要有微信公众号支付/小程序支付/H5支付的开发经验(本文以公众号支付为例),否则先看我的上一篇文章 移动支付--微信公众号支付开发

2.2 开发前需读这几篇微信支付文档

1)免充值产品功能开通指引

2)微信公众号支付开发文档(包括查询订单、申请退款、查询退款、下载对账单等接口)

三 过程

1. 查看免充值功能接口升级验收进度

步骤 :打开 验收进度 - 输入微信商户号;

如果页面提示 已完成接口升级,请忽略以下直接看第二步。

对于没有完成接口升级的商户,需要至少完成以下一个用例组合1001+1002+1005;1003+1004+1005,微信提供了接口升级测试用例

调用用例之前需先获取沙箱秘钥。接口URL: https://api.mch.weixin.qq.com/sandboxnew/pay/getsignkey

注:以下内容摘自测试用例:

1.1【 1001-可选用例-刷卡正常支付】

1.1.1 用例简述

订单金额 5.01 元,其中 0.01 元使用免充值券,实际支付 5.00 元。验证商户具备正确解析及识别免充值代金券字段的能力。

1.1.2 测试步骤

(1)手机客户端进入“微信->我->钱包->付款”获取支付条码;

(2)在收银台输入订单金额为 5.01 元,扫码枪扫描上述条码(此操作可选,若扫码时出现二维码失效等提示,可忽略提示,不影响测试结果),完成支付(或直接组包调用刷卡 api);

(3)根据商户内部单号(out_trade_no),调查单 api(https://api.mch.weixin.qq.com/sandboxnew/pay/orderquery)查询订单状态,与商户自有订单的关键信息进行核对。

1.2 【 1002-可选用例-刷卡支付退款】

1.2.1 用例简述

订单金额 5.02 元,使用零钱+0.01 元免充值代金劵,实际支付 5.01 元,退款查询升级。

1.2.2 测试步骤

(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)查询退款结果。

1.3【 1003-可选用例-公众号/APP/扫码正常支付】

1.3.1 用例简述

订单金额 5.51 元,其中 0.01 元使用免充值券,实际支付 5.50 元。

验正常支付流程,商户使用免充值代金券支付。

1.3.2 测试步骤

(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)查询订单状态,与商户自有订单的关键信息进行核对。

1.4 【 1004-可选用例-公众号/APP/扫码支付退款】

1.4.1 用例简述

订单金额 5.52 元,其中 0.01 元使用免充值券,实际支付 5.51 元。

1.4.2 测试步骤

(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)查询退款结果

1.5【 1005-必选用例-交易对账单下载】

1.5.1 用例简述

使用了免充值券的订单,免充值券部分的金额不计入结算金额。验证商户对账能正确理解到这一点,对账无误。

1.5.2 测试步骤

(1)调用对账单下载接口,下载对账单,其中下载对账单总单时 bill_type=ALL,下载对账单交易成功单时 bill_type=SUCCESS,下载对账单退款单时 bill_type=REFUND,链接样例:https://api.mch.weixin.qq.com/sandboxnew/pay/downloadbill;

(2)检查账单返回文件字段,结算金额=订单总金额-免充值券金额。

2. 微信商户平台开通免充值立减与折扣功能。

步骤 :微信商户平台首页 - 产品中心 - 产品大全 - 我的产品 - 找到免充值与折扣立减产品 - 点击开通。

四 注意

1)沙箱环境 调用成功 统一下单 接口,前端无须进行支付操作,微信会直接进行 支付结果通知。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值