「微信分账」功能实现

在现有的微信支付互联网生态环境中,存在平台方角色,如电商平台、加盟代理等,用户支付订单金额后,先由平台方统一收款,再由平台方与商家或其他参与方进行结算,若无引入具有支付牌照的第三方,则为「二清」行为,属于违法行为。若引入第三方支付平台,则势必增加了平台方的软件开发难度和运营维护成本。

对此,微信在 2018 年底推出了「微信支付服务商分账」功能,当用户把钱支付给商户后,微信平台首先扣除服务费,然后冻结剩余资金,只有在申请分账后,剩余资金才会进入分账各方的账户。这一功能在合法合规下,为平台及商户等角色提供一个高效快捷的结算方式。

「微信分账」产品介绍


服务商按指令分账主要是用于服务商帮助特约商户完成订单收单成功以后的资金分配。

微信分账涉及到两个主体,分账方和分账接收方。

  • 分账方:在服务商模式下,分账方是商品或者服务的提供方,这里指特约商户。
  • 分账接收方:特约商户上游的供应方,合作的商户,商户的员工,用户等接收分账资金的商户或个人。

「微信分账」功能具有以下几个特点:

  • 运营合规——资金由银行进行封闭式管理,能够有效防范「二清」风险,有助于合规化运营
  • 资金安全——微信平台提供资金冻结的能力,在未传输分账指令,资金将冻结在特约商户的商户号中;允许特约商户在商户平台配置「允许服务商分账的最大比例」以保证特约商户资金安全
  • 分账轻松——商户可将一笔订单根据设置自动分账给多方
  • 周期灵活——交易成功的资金,将按照设置好的周期进行分账
  • 零成本——支付成功即可分账,不需要额外的费用和管理成本,而且还降低管理成本

「微信分账」使用场景

  • 停车场缴费

在服务商模式下,用户在停车场缴纳停车费以后,资金先冻结在车场的商户号中,服务商根据与车场之间的约定,将停车费分配给其他微信支付商户,比如智能停车系统服务商等。

  • 订餐外卖平台

在服务商模式下,用户在订餐平台的某个餐饮商户下单完成支付后,用户支付的订餐资金先冻结在该餐饮商户的商户号中,用户确认收货后,服务商调按指令分账的接口,将订餐资金进行分配,比如分给送货员、订餐平台抽佣,剩下的资金将解冻给餐饮商户。

  • 预订酒店

在服务商模式下,用户缴纳的订房费用后,资金可先冻结在酒店的商户号中,等用户确认到店消费后,服务商可根据情况,将资金分账给其他商户或个人。

以上为微信官方给出的使用场景,除此之外,社交类电商平台也是一个不错的应用场景。

在服务商模式下,客户在推荐人/代理商分享的产品链接中完成订单的支付后,资金先冻结在电商平台商户号中,再根据电商平台与推荐人/代理商的约定,将该笔交易的奖励分账给推荐人/代理商。

分账流程


(1)资金冻结:用户完成订单支付后,资金由微信扣除结算手续费后,冻结在分账方的账户。

(2)分账发起:服务商根据具体的业务情况和场景,通过调微信分账接口,传输分账指令(分账接收方、分账金额等)。

(3)资金分账:微信平台将相应资金,到各接收方账户的微信商户账户或微信零钱,订单剩余未分账的资金解冻给分账方。

退款流程


订单分账之前的发生退款,退款资金是从分账冻结资金中出款,未退款的待分账资金可以继续分账;订单分账之后发生退款,在接收方同意分账回退的情况下,资金先可以从接收方(仅限商户类型)的账户中回退至分账方账户,再进行退款 。

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,关于 PHP 微信分账功能,我可以给您提供一些思路和参考。 首先,微信官方提供了分账的 API,您可以在微信支付官网上查看相关文档和接口说明。具体来说,您需要使用微信支付的 APP 支付方式,同时在支付完成后,使用分账 API 实现收付款人之间的资金配。 在 PHP 中,您可以使用 cURL 或者 Guzzle 等 HTTP 请求库来发送 HTTP 请求,调用微信支付的 API。同时,您还需要使用微信支付开发者中心提供的 SDK,来实现签名、加密等操作。 以下是一个简单的 PHP 微信分账功能的示例代码: ```php <?php require_once "WxPay.Api.php"; // 设置分账信息 $receivers = array( array( 'type' => 'MERCHANT_ID', 'account' => 'your_mch_id', 'amount' => 100, 'description' => '给商户', ), array( 'type' => 'PERSONAL_OPENID', 'account' => 'your_openid', 'amount' => 50, 'description' => '给个人', ), ); // 发起分账请求 $input = new WxPayProfitSharing(); $input->SetOutTradeNo('your_out_trade_no'); $input->SetTransactionId('your_transaction_id'); $input->SetReceivers($receivers); $result = WxPayApi::profitSharing($input); if ($result['return_code'] === 'SUCCESS' && $result['result_code'] === 'SUCCESS') { // 分账成功 } else { // 分账失败 } ``` 以上仅是一个简单的示例代码,实际上还需要进行一些其它的操作,比如验证签名、处理回调通知等。如果您对微信支付和 PHP 开发都比较熟悉,那么实现起来应该不会太难。如果有其它问题,可以继续咨询我。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值