easywechat微信开发SDK之小微商户进件(二)

cbao 2019-12-04

正式开始进件之前需要准备几个东西

1、服务商商户号

2、API密钥 微信服务商后台中设置

3、APIv3密钥 微信服务商后台中设置

4、API证书路径  登录服务商后台下载  生成证书官方又文档的 很简单  不再重复 下载好保存到服务器上

按照微信官方文档,我们需要提前实现的接口有

1、参数签名

2、上传图片

3、敏感信息加密

4、提交材料

5、查询状态

如果是做小微商户进件,其实都不用看文档的其他部分,直接来到小微商户--入门https://www.easywechat.com/docs/4.1/micro-merchant/index

还是以thinkphp为例,使用行为来做SDK的初始化

<?php
namespace app\wechat\behavior;
use EasyWeChat\Factory;

class MacroWechat
{
    public function run($param)
    {
        $config = [
            // 必要配置
            ‘mch_id‘ => ‘‘, // 服务商的商户号
            ‘key‘ => ‘‘, // API 密钥
            ‘apiv3_key‘ => ‘‘, // APIv3 密钥
            // API 证书路径(登录商户平台下载 API 证书)
            ‘cert_path‘ => ‘‘, // XXX: 绝对路径!!!!
            ‘key_path‘ => ‘‘, // XXX: 绝对路径!!!!
            // 以下两项配置在获取证书接口时可为空,在调用入驻接口前请先调用获取证书接口获取以下两项配置,如果获取过证书可以直接在这里配置,也可参照本文档获取平台证书章节中示例
            // 以下为可选项
            // 指定 API 调用返回结果的类型:array(default)/collection/object/raw/自定义类名
            ‘response_type‘ => ‘array‘,
            ‘appid‘ => ‘‘ // 服务商的公众账号 ID
        ];
        $app = Factory::microMerchant($config);
        $ca = cache(‘certificate‘);//缓存一下
        if(!$ca) {
            $response = $app->certficates->get();
            cache(‘certificate‘, $response);
        }else {
            $response = $ca;
        }
        $app->setCertificate($response[‘certificates‘], $response[‘serial_no‘]);//该方法会将 certificates和serial_no两个参数绑定到 $config 中
        return $app;
    }
}

初始化完成,可以直接调用

$res = $this->app->submitApplication($data);//$data 就是客户端传过来的进件资料

使用时值得注意的地方:

1、所有接口中以下列出参数 versionmch_idnonce_strsignsign_typecert_sn 可不用传入。

2、所有敏感信息无需手动加密,sdk会在调用接口前自动完成加密

3、在调用入驻等需要敏感信息加密的接口前请先调用获取证书接口然后把配置填入配置项 也就是代码中的

$app->setCertificate($response[‘certificates‘], $response[‘serial_no‘]);