EasyWechat 4.x 微信小程序企业付款到零钱
2024-09-12
13
1. 前言
单次提现金额要求在 0.3 元 - 5000 元之间
企业付款到零钱需要使用商户证书, 当配置的证书错误时会抛出异常, 而不是以返回值的形式返回
EasyWechat 4.x 企业付款 : https://easywechat.com/docs/4.x/payment/transfer
微信支付开发文档 : https://pay.weixin.qq.com/wiki/doc/api/tools/mch_pay.php?chapter=14_1
2. 执行提现
特别注意: 证书配置错误时会抛出异常, 而不是以返回值的形式返回
use EasyWeChat\Factory;
$config = [
// 必要配置
'app_id' => 'xxxx',//小程序APPID
'mch_id' => 'your-mch-id',//商户ID
'key' => 'key-for-signature', // 商户API 密钥
// 如需使用敏感接口(如企业付款、退款、公众号发送现金红包等)需要配置 API 证书
'cert_path' => 'path/to/your/cert.pem', // XXX: 绝对路径!!!!
'key_path' => 'path/to/your/key', // XXX: 绝对路径!!!!
];
$app = Factory::payment($config);
// 执行企业付款到零钱
$result = $app->transfer->toBalance([
'partner_trade_no' => '1233455', // 商户订单号,具有唯一性(只能是字母或者数字)
'openid' => 'oxTWIuGaIt6gTKsQRLau2M0yL16E', // 提现用户openid
'check_name' => 'FORCE_CHECK', // NO_CHECK:不校验姓名, FORCE_CHECK:强校验真实姓名
're_user_name' => '王小帅', // 如果 check_name 设置为FORCE_CHECK,则必填用户真实姓名
'amount' => 10000, // 企业付款金额,单位为分
'desc' => '提现', // 企业付款操作说明信息。必填
]);
3. 提现成功返回值
return_code
通信标识, 表示接口是否请求成功, 而不是交易标识, 不能用于判断提现结果
result_code
业务结果标识, 当其值为 SUCCESS
时表示 提现成功
执行提现应使用try catch
捕获错误, 因为当证书文件错误时是抛出异常, 而不是以返回值的形式返回
try {
$result = $app->transfer->toBalance();
} catch (\Throwable $e) {
fault($e->getMessage());
}
if ( !empty($result['result_code']) && $result['result_code'] === 'SUCCESS') {
// 提现成功
} else {
// 提现失败
}
[
'return_code' => 'SUCCESS',
'return_msg' => NULL,
'mch_appid' => 'wxb80ec74221f8a9ff',
'mchid' => '1538483281',
'nonce_str' => '60af3d9658162',
'result_code' => 'SUCCESS',
'partner_trade_no' => 'TX202105271435025469',
'payment_no' => '10101052430722105279091545815496',
'payment_time' => '2021-05-27 14:34:59',
]
4. 提现失败返回值 (常见场景)
开启检验用户名并且验证失败时
[
'return_code' => 'SUCCESS',
'return_msg' => '参数错误:没有找到对应校验用户姓名选项.',
'result_code' => 'FAIL',
'err_code' => 'PARAM_ERROR',
'err_code_des' => '参数错误:没有找到对应校验用户姓名选项.',
]
提现金额小于 0.3 元
更新于:6天前[
'return_code' => 'SUCCESS'
'return_msg' => '支付失败'
'mch_appid' => 'wxb80ec74221f8a9ff'
'mchid' => '1538483281'
'result_code' => 'FAIL'
'err_code' => 'AMOUNT_LIMIT'
'err_code_des' => '付款金额超出限制。低于最小金额0.30元或累计超过5000.00元。'
]
赞一波!
相关文章
- uniapp 微信小程序 控制台警告和错误处理
- 微信小程序内容安全检测(敏感词、敏感图)
- ThinkPHP6.0 + EasyWechat 4.x 公众号自动回复
- EasyWechat 4.x JSAPI 微信支付
- 微信小程序订阅消息
- 小程序客服会话
- 获取用户授权的手机号【微信小程序】
- EasyWechat 4.x 微信小程序订阅消息
- 小程序测试号、公众号测试号
- EasyWechat 3.x 小程序客服消息自动回复
- EasyWeChat 生成小程序码报错 cURL错误 60
- 微信小程序 wx.requestPayment({}) 唤起微信支付
- 人人商城 V3.18.1 小程序端获取商品列表接口
- 在64位的Windows系统下运行32位的C#程序如何控制重定向
- 火爆全网的ChatGPT智能AI机器人微信小程序源码 (附带部署教程)
- C#程序中如何获取当前操作系统的名称
- C#中通过Process运行程序如何获取进程的标准输出
- 用于查找子列表总和的 Python 程序
- 以蛇形模式打印矩阵的Python程序
- 我的Python程序太慢了。如何加快速度?
文章评论
全部评论