<?php namespace Yansongda\Pay\Gateways\Wechat; use Yansongda\Pay\Exceptions\GatewayException; use Yansongda\Pay\Exceptions\InvalidArgumentException; use Yansongda\Pay\Exceptions\InvalidSignException; use Yansongda\Pay\Gateways\Wechat; use Yansongda\Supports\Collection; class MiniappGateway extends MpGateway { /** * Pay an order. * * @author yansongda <me@yansongda.cn> * * @param string $endpoint * * @throws GatewayException * @throws InvalidArgumentException * @throws InvalidSignException */ public function pay($endpoint, array $payload): Collection { $payload['appid'] = Support::getInstance()->miniapp_id; if (Wechat::MODE_SERVICE === $this->mode) { $payload['sub_appid'] = Support::getInstance()->sub_miniapp_id; $this->payRequestUseSubAppId = true; } return parent::pay($endpoint, $payload); } }