微信支付服務商自從申請下來后一直沒有 使用服務商模式接入,今天終於有時間來做接入了,第一步找sdk 找來找去發現普通商戶接入模式和服務商接入模式sdk是一模一樣的,這就奇怪了,前些日子看sdk的時候 發現普通商戶接入模式和服務商接入模式的sdk還是不一樣呢,今天就一樣了,於是反復點鏈接,最終確認發現sdk確實是一樣的 。在一看sdk更新的日期是8月17日,果然微信支付sdk升級了,於是給支付組發郵件確認,得到確定的答復,普通商戶版 和服務商版本的sdk是一樣的 ,但是服務商版本的開發需要自己添加子商戶號和子商戶appid
1 需要自己添加的配置 Wxpay.Data.php
/**
* 設置微信分配的子商戶公眾賬號ID 這個是子賬號公眾號的appid
* @param string $value
**/
public function SetSubAppid($value)
{
$this->values['sub_appid'] = $value;
}
/**
* 獲取微信分配的子公眾賬號ID的值
* @return 值
**/
public function GetSubAppid()
{
return $this->values['sub_appid'];
}
/**
* 設置微信支付分配的子商戶號
* @param string $value
**/
public function SetSubMch_id($value)
{
$this->values['sub_mch_id'] = $value;
}
/**
* 獲取微信支付分配的子商戶號的值
* @return 值
**/
public function GetSubMch_id()
{
return $this->values['sub_mch_id'];
}
一共四個函數
2 在Wxpay.Api.php 添加兩行代碼
$inputObj->SetSubAppid('xxxxxxx');//子賬戶的appid
$inputObj->SetSubMch_id('xxxx');//子賬戶商戶號
然后就可以測試了,如無意外的話到了支付頁面會提示你簽名錯誤。
3 現在該修改第三個文件了Wxpay.Config.php
public function GetAppId()
{
return $this->APPID; 這個是應該填服務商對應的公眾號的appid
}
public function GetMerchantId()
{
return $this->MCHID; 服務商的商戶號
}
public function GetAppSecret()
{
return $this->APPSECRET; //服務商appid對應的 appsecrest
}
最終要的一個修改來了 這個應該填的是商戶支付秘鑰 在這里設置 https://pay.weixin.qq.com/index.php/account/api_cert
一般剛開通的服務商是沒有設置這個的 ,如果不設置這個,肯定會提示您簽名錯誤,把這個設置完了,填在這個位置,測試
OK 。
public function GetKey()
{
return $this->KEY;
}