self::REQUEST_URL, 'timeout' => 5.0, ]); } /** * @description: 查询商户余额 * @return {array} * {array.success - 是否成功 true|false} * {array.msg - 返回错误消息} * {array.code - 返回状态码:200成功,其他失败} * {array.timestamp - 时间戳 13位} * {array.data - 商户余额} */ public static function findBalance() { $merchant_id = config('app.tree_payment_merchant_id'); $secret = config('app.tree_payment_secret'); $sign = md5($merchant_id . $secret); $data = [ 'merchantNum' => $merchant_id, 'sign' => $sign, ]; $client = self::getClient(); $response = $client->get('api/findBalance', [ 'query' => $data, ]); $body = $response->getBody(); return json_decode($body->getContents(), true); } public static function pay($amount, $order_no, $notify_url, $return_url) { $data = []; $merchant_id = config('app.tree_payment_merchant_id'); $secret = config('app.tree_payment_secret'); $data['merchantNum'] = $merchant_id; $data['amount'] = $amount; $data['orderNo'] = $order_no; $data['notifyUrl'] = $notify_url; $data['returnUrl'] = $return_url; $signStr = $merchant_id . $order_no . $amount . $secret; $sign = md5($signStr); $data['sign'] = $sign; $client = self::getClient(); $response = $client->post('api/pay', [ 'json' => $data, 'headers' => [ 'Content-Type' => 'application/json', ] ]); $body = $response->getBody(); $result = json_decode($body->getContents(), true); return $result; } }