• 支付
    • 配置
      • 服务商
        • 设置子商户信息
      • 刷卡支付
    • 授权码查询OPENID接口
    • 沙箱模式

    支付

    你在阅读本文之前确认你已经仔细阅读了:微信支付 | 商户平台开发文档。

    配置

    配置在前面的例子中已经提到过了,支付的相关配置如下:

    1. use EasyWeChat\Factory;
    2. $config = [
    3. // 必要配置
    4. 'app_id' => 'xxxx',
    5. 'mch_id' => 'your-mch-id',
    6. 'key' => 'key-for-signature', // API 密钥
    7. // 如需使用敏感接口(如退款、发送红包等)需要配置 API 证书路径(登录商户平台下载 API 证书)
    8. 'cert_path' => 'path/to/your/cert.pem', // XXX: 绝对路径!!!!
    9. 'key_path' => 'path/to/your/key', // XXX: 绝对路径!!!!
    10. 'notify_url' => '默认的订单回调地址', // 你也可以在下单时单独设置来想覆盖它
    11. ];
    12. $app = Factory::payment($config);

    服务商

    设置子商户信息

    1. $app->setSubMerchant('sub-merchant-id', 'sub-app-id'); // 子商户 AppID 为可选项

    刷卡支付

    官方文档

    1. $result = $app->pay([
    2. 'body' => 'image形象店-深圳腾大- QQ公仔',
    3. 'out_trade_no' => '1217752501201407033233368018',
    4. 'total_fee' => 888,
    5. 'auth_code' => '120061098828009406',
    6. ]);

    授权码查询OPENID接口

    1. $app->authCodeToOpenid($authCode);

    沙箱模式

    微信支付沙箱环境,是提供给微信支付商户的开发者,用于模拟支付及回调通知。以验证商户是否理解回调通知、账单格式,以及是否对异常做了正确的处理。EasyWeChat SDK 对于这一功能进行了封装,开发者只需一步即可在沙箱模式和常规模式间切换,方便开发与最终的部署。

    1. // 在实例化的时候传入配置即可
    2. $app = Factory::payment([
    3. // ...
    4. 'sandbox' => true, // 设置为 false 或注释则关闭沙箱模式
    5. ]);
    6. // 判断当前是否为沙箱模式:
    7. bool $app->inSandbox();

    {warning} 特别注意,沙箱模式对于测试用例有严格要求,若使用的用例与规定不符,将导致测试失败。具体用例要求可关注公众号“微信支付商户接入验收助手”(WXPayAssist)查看。