开发指引
更新时间:2024.12.021. 接口规则
商家转账,使用了全新的微信支付APIv3接口规则 。
2. 开发环境搭建
2.1. 集成SDK
为了帮助开发者更好的调用接口,我们提供微信支付APIv3官方SDK,请根据自身开发语言,选择对应的SDK库集成到项目,并在商户平台配置平台证书
目前微信支付提供JAVA、PHP、GO三种语言版本的SDK,封装了签名生成、签名验证、敏感信息加/解密、媒体文件上传等基础接口功能。
各编程语言的SDK对“商家转账到零钱”的业务接口支持不一样,如若未支持相关业务接口,你可以使用SDK中的HTTP类实现发送HTTP请求,它会自动生成签名和验证签名。
SDK | 说明 |
---|---|
Java 服务端 SDK | |
PHP 服务端 SDK | |
GO 服务端 SDK |
如下通用基础功能接口,已经在SDK中完成封装,可替换相关参数后快速测试。
若使用的编程语言无对应的SDK,则需要按照接口规则与接口详细信息自行开发。
3. 商家转账业务接入说明
3.1. 业务流程图
3.2. 关键步骤说明
第一步:发起商家转账到零钱
1、调用接口前,开发者需要参考产品介绍确认已完成权限开通和产品配置,特别是关于API发起转账的相关配置一定要正确。
2、商户发起商家转账,先调用《发起商家转账》接口发起商家转账请求,当返回的订单状态为WAIT_USER_CONFIRM时,可唤起用户确认收款。
4、当返回商户订单状态为ACCEPTED时,需要检查商户资金是否足够,并一定要使用原商家单号及原参数重试,否则可能造成重复转账等资金风险。
5、当返回错误码为“SYSTEM_ERROR”时,请不要更换商家单号,一定要使用原商家单号及原参数重试,否则可能造成重复转账等资金风险。
第二步:用户确认收款
1、当发起商家转账成功且返回的订单状态为WAIT_USER_CONFIRM时,通过《请求用户确认收款JSAPI》或《APP调起用户确认收款》来请求用户确认收款
2、用户确认收款后,商户订单状态为SUCCESS,微信支付系统并通过《商家转账完成通知》来通知商户系统
第三步:查询商家转账状态
1、商户收到通知后,通过商户单号查询转账单、微信转账单号查询转账单API接口查询商家转账订单,确认商家转账订单状态为SUCCESS,来确定是否收款成功。
2、使用API接口只支持查询最近30天内的商家转账订单,30天之前的商家转账订单请登录商户平台查询。
3、商家转账订单的状态SUCCESS,FAIL,CANCELLED是终态,商户可以根据以上几个状态做不同的业务展示
第四步:申请下载电子回单(按需使用)
1、发起商家转账时传入了收款用户姓名,才支持申请电子回单。
2、支持受理6个月内的商家转账电子回单。
3、仅支持为SUCCESS状态的商家转账订单(不满足条件返回 400 INVALID_REQUEST);
4、详情参考 商户单号申请电子回单、商户单号查询电子回单、微信单号申请电子回单、微信单号查询电子回单。