src/Core/OAuth/OAuth1/OAuth1.php
public function sign($uri, $queryParameters, $httpMethod){
      $baseString = $this->getBaseString($uri, $httpMethod, $queryParameters);
      $oauthSignature = $this->signUsingHmacSha1($baseString);
      $this->oauthParameters['oauth_signature'] = $oauthSignature;
  }
public function sign($uri, $queryParameters, $httpMethod){
      $baseString = $this->getBaseString($uri, $httpMethod, $queryParameters);
      $oauthSignature = $this->signUsingHmacSha1($baseString);
      $this->oauthParameters['oauth_signature'] = $oauthSignature;
  }
Sign the Request based on the URL, OAuth 1 values, and query parameters. It follows the spec mentioned at here: https://oauth1.wp-api.org/docs/basics/Signing.html
For QuickBooks online, the Body only have two format, JSON or test. Do not include them in the authorization parts.
@param String $uri                 The Complete URL contains everything
@param Array $queryparameters      The query parameters for the array
@param String $httpMethod       The Http Method. POST or GET