微信開發系列 企業付款到銀行卡介面開發

2021-09-13 10:52:37 字數 3029 閱讀 6478

二、應用環境tp5+mysql+centos

三、編寫**

3.1、model層,wechat.php

<?php 

use think\cache;

class wechat extends model

/** 企業付款到銀行卡介面

* @params string $out_trade_no : 商戶訂單號

* @params int $amount : 付款金額,單位分

* @params string $enc_bank_no : 收款方銀行卡號

* @params string $enc_true_name : 收款方使用者名稱

* @params string $bank_name : 收款方開戶行,根據銀行名稱獲取銀行編號bank_code

* @params string $desc : 付款備註

* return string $payment_no :支付成功的訂單號

*/public function payforbank($out_trade_no,$amount,$enc_bank_no,$enc_true_name,$bank_name,$desc='企業付款到銀行卡')

else}/*

* 查詢付款到銀行卡狀態

* @params string $out_trade_no : 商戶訂單號

* return array $ret:查詢狀態

* */

public function querybank($out_trade_no)

else}/*

* 銀行編號列表,詳情參考:

* @params string $bank_name : 銀行名稱,4個漢字

* return int $bank_code : 銀行編碼

* */

private function getbankcode($bank_name)

return $bank_code;

}/**

* 公鑰加密,銀行卡號和姓名需要rsa演算法加密

* @param string $data 需要加密的字串,銀行卡/姓名

* @return null|string 加密後的字串

*/private function publicencrypt($data)

else}/*

* 獲取公鑰,格式為pkcs#1 轉pkcs#8

* openssl rsa -rsapublickey_in -in -out * */

private function get_pub_key()

else

}else}/*

* 發起post網路請求

* @params string $url : 請求的url鏈結位址

* @params string $data : 資料報

* @params bool $ssl : 是否載入證書

* return array $result : 返回的資料結果

}//對引數排序,生成md5加密簽名

private function getparam($paramarray, $isencode=false)

if ($i == 0)else

$paramstr .= $key . '=' . ($isencode?urlencode($value):$value);

++$i;

}$stringsigntemp=$paramstr."&key=".$this->key;

$sign=strtoupper(md5($stringsigntemp));

return $sign;}/*

* 將xml轉換成陣列

* @params xml $xml : xml資料

* return array $data : 返回陣列

*/private function xmltoarray($xml)

/** 隨機字串

* @param int $length 長度

* @param string $type 型別

* @param int $convert 轉換大小寫 1大寫 0小寫

* @return string

*/private function random($length=10,$type='letter',$convert=false);}

if(!empty($convert))

return $code;}/*

* 日誌記錄

* @params string $msg : 文字描述

* @params array $ret : 呼叫介面返回的陣列

*/private function errorlog($msg,$ret)

}

3.2、controller控制層呼叫,wxpay.php

<?php 

class wxpay extends controller

else }}

四、付款截圖

微信支付 二 企業付款到使用者銀行卡

申請詳細介紹位址參考 wxpayconfig參考位址 mapreqdata newhashmap reqdata.put nonce str 隨機字串 隨機字串,不長於32位 reqdata.put partner trade no 商戶訂單號,需保持唯一性 只能是字母或者數字,不能包含有其他字元 ...

微信企業付款到零錢

企業提現 public function actionindex else 隨機字串 param int length return string private function getnoncestr length 32 return str 簽名 param data return strin...

微信商戶轉賬到銀行卡

model層,wechat.php use think cache class wechat extends model 企業付款到銀行卡介面 params string out trade no 商戶訂單號 params int amount 付款金額,單位分 params string enc ...