unction getConnectUrl() { return 'https://paypalconnect.paymentplugins.com'; } protected function getHeaders() { if ( $this->current_service === 'connect' ) { return [ 'Content-Type' => 'application/json', ]; } return array_merge( parent::getHeaders(), [ 'PayPal-Partner-Attribution-Id' => $this->partner_id, ] ); } public function getAPISettings() { return $this->api_settings; } public function handleRequestResponse( $response ) { if ( \is_wp_error( $response ) ) { throw new BadRequestException( 400, [ 'message' => $response->get_error_message() ] ); } else { $status = \wp_remote_retrieve_response_code( $response ); $body = \wp_remote_retrieve_body( $response ); } return [ $status, $body ]; } }