( ! ) Deprecated: QuickBooksOnline\API\Core\HttpClients\CurlHttpClient::__construct(): Implicitly marking parameter $curl as nullable is deprecated, the explicit nullable type must be used instead in /Users/rvanvuren/Projects/buyerkiosk-web-dev3/userfrosting/vendor/quickbooks/v3-php-sdk/src/Core/HttpClients/CurlHttpClient.php on line 31
Call Stack
#TimeMemoryFunctionLocation
10.0029442688{main}( ).../OAuth2TokenGeneration.php:0
20.0103795696QuickBooksOnline\API\DataService\DataService::Configure( $settings = ['auth_mode' => 'oauth2', 'ClientID' => 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX', 'ClientSecret' => 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX', 'RedirectURI' => 'https://developer.intuit.com/v2/OAuth2Playground/RedirectUrl', 'scope' => 'com.intuit.quickbooks.accounting', 'baseUrl' => 'development'] ).../OAuth2TokenGeneration.php:11
30.01441122704QuickBooksOnline\API\DataService\DataService->__construct( $serviceContext = class QuickBooksOnline\API\Core\ServiceContext { public $realmId = NULL; public $serviceType = 'QBO'; public $baseserviceURL = 'https://sandbox-quickbooks.api.intuit.com/v3/'; private $appToken = NULL; private $isCreateMethod = FALSE; private $messageValues = NULL; public $requestValidator = class QuickBooksOnline\API\Core\OAuth\OAuth2\OAuth2AccessToken { private $accessTokenKey = NULL; private $tokenType = 'bearer'; private $refresh_token = NULL; private $accessTokenExpiresAt = NULL; private $refreshTokenExpiresAt = NULL; private $accessTokenValidationPeriod = NULL; private $refreshTokenValidationPeriod = NULL; private $clientID = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX'; private $clientSecret = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX'; private $realmID = NULL; private $baseURL = 'https://sandbox-quickbooks.api.intuit.com/' }; public $minorVersion = '75'; public $IppConfiguration = class QuickBooksOnline\API\Core\Configuration\IppConfiguration { public $Logger = class QuickBooksOnline\API\Diagnostics\Logger { ... }; public $Security = class QuickBooksOnline\API\Core\OAuth\OAuth2\OAuth2AccessToken { ... }; public $Message = class QuickBooksOnline\API\Core\Http\Message { ... }; public $RetryPolicy = NULL; public $BaseUrl = class QuickBooksOnline\API\Core\Configuration\BaseUrl { ... }; public $ContentWriter = class QuickBooksOnline\API\Core\Configuration\ContentWriterSettings { ... }; public $OpControlList = class QuickBooksOnline\API\Core\Configuration\OperationControlList { ... }; public $minorVersion = '75'; public $SSLCheckStatus = NULL; public $RealmID = NULL; public $OAuthMode = 'oauth2' } } ).../DataService.php:391
40.01441122704QuickBooksOnline\API\DataService\DataService->updateServiceContextSettingsForOthers( $serviceContext = class QuickBooksOnline\API\Core\ServiceContext { public $realmId = NULL; public $serviceType = 'QBO'; public $baseserviceURL = 'https://sandbox-quickbooks.api.intuit.com/v3/'; private $appToken = NULL; private $isCreateMethod = FALSE; private $messageValues = NULL; public $requestValidator = class QuickBooksOnline\API\Core\OAuth\OAuth2\OAuth2AccessToken { private $accessTokenKey = NULL; private $tokenType = 'bearer'; private $refresh_token = NULL; private $accessTokenExpiresAt = NULL; private $refreshTokenExpiresAt = NULL; private $accessTokenValidationPeriod = NULL; private $refreshTokenValidationPeriod = NULL; private $clientID = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX'; private $clientSecret = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX'; private $realmID = NULL; private $baseURL = 'https://sandbox-quickbooks.api.intuit.com/' }; public $minorVersion = '75'; public $IppConfiguration = class QuickBooksOnline\API\Core\Configuration\IppConfiguration { public $Logger = class QuickBooksOnline\API\Diagnostics\Logger { ... }; public $Security = class QuickBooksOnline\API\Core\OAuth\OAuth2\OAuth2AccessToken { ... }; public $Message = class QuickBooksOnline\API\Core\Http\Message { ... }; public $RetryPolicy = NULL; public $BaseUrl = class QuickBooksOnline\API\Core\Configuration\BaseUrl { ... }; public $ContentWriter = class QuickBooksOnline\API\Core\Configuration\ContentWriterSettings { ... }; public $OpControlList = class QuickBooksOnline\API\Core\Configuration\OperationControlList { ... }; public $minorVersion = '75'; public $SSLCheckStatus = NULL; public $RealmID = NULL; public $OAuthMode = 'oauth2' } } ).../DataService.php:165
50.01541191704QuickBooksOnline\API\DataService\DataService->setupRestHandler( $serviceContext = class QuickBooksOnline\API\Core\ServiceContext { public $realmId = NULL; public $serviceType = 'QBO'; public $baseserviceURL = 'https://sandbox-quickbooks.api.intuit.com/v3/'; private $appToken = NULL; private $isCreateMethod = FALSE; private $messageValues = NULL; public $requestValidator = class QuickBooksOnline\API\Core\OAuth\OAuth2\OAuth2AccessToken { private $accessTokenKey = NULL; private $tokenType = 'bearer'; private $refresh_token = NULL; private $accessTokenExpiresAt = NULL; private $refreshTokenExpiresAt = NULL; private $accessTokenValidationPeriod = NULL; private $refreshTokenValidationPeriod = NULL; private $clientID = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX'; private $clientSecret = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX'; private $realmID = NULL; private $baseURL = 'https://sandbox-quickbooks.api.intuit.com/' }; public $minorVersion = '75'; public $IppConfiguration = class QuickBooksOnline\API\Core\Configuration\IppConfiguration { public $Logger = class QuickBooksOnline\API\Diagnostics\Logger { ... }; public $Security = class QuickBooksOnline\API\Core\OAuth\OAuth2\OAuth2AccessToken { ... }; public $Message = class QuickBooksOnline\API\Core\Http\Message { ... }; public $RetryPolicy = NULL; public $BaseUrl = class QuickBooksOnline\API\Core\Configuration\BaseUrl { ... }; public $ContentWriter = class QuickBooksOnline\API\Core\Configuration\ContentWriterSettings { ... }; public $OpControlList = class QuickBooksOnline\API\Core\Configuration\OperationControlList { ... }; public $minorVersion = '75'; public $SSLCheckStatus = NULL; public $RealmID = NULL; public $OAuthMode = 'oauth2' } } ).../DataService.php:177
60.01561197552QuickBooksOnline\API\Core\HttpClients\ClientFactory::createClient( $clientName = 'curl' ).../DataService.php:217
70.01561197552{closure:/Users/rvanvuren/Projects/buyerkiosk-web-dev3/userfrosting/vendor/quickbooks/v3-php-sdk/src/config.php:12-27}( $class = 'QuickBooksOnline\\API\\Core\\HttpClients\\CurlHttpClient' ).../ClientFactory.php:27

( ! ) Deprecated: QuickBooksOnline\API\Core\HttpClients\SyncRestHandler::__construct(): Implicitly marking parameter $client as nullable is deprecated, the explicit nullable type must be used instead in /Users/rvanvuren/Projects/buyerkiosk-web-dev3/userfrosting/vendor/quickbooks/v3-php-sdk/src/Core/HttpClients/SyncRestHandler.php on line 53
Call Stack
#TimeMemoryFunctionLocation
10.0029442688{main}( ).../OAuth2TokenGeneration.php:0
20.0103795696QuickBooksOnline\API\DataService\DataService::Configure( $settings = ['auth_mode' => 'oauth2', 'ClientID' => 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX', 'ClientSecret' => 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX', 'RedirectURI' => 'https://developer.intuit.com/v2/OAuth2Playground/RedirectUrl', 'scope' => 'com.intuit.quickbooks.accounting', 'baseUrl' => 'development'] ).../OAuth2TokenGeneration.php:11
30.01441122704QuickBooksOnline\API\DataService\DataService->__construct( $serviceContext = class QuickBooksOnline\API\Core\ServiceContext { public $realmId = NULL; public $serviceType = 'QBO'; public $baseserviceURL = 'https://sandbox-quickbooks.api.intuit.com/v3/'; private $appToken = NULL; private $isCreateMethod = FALSE; private $messageValues = NULL; public $requestValidator = class QuickBooksOnline\API\Core\OAuth\OAuth2\OAuth2AccessToken { private $accessTokenKey = NULL; private $tokenType = 'bearer'; private $refresh_token = NULL; private $accessTokenExpiresAt = NULL; private $refreshTokenExpiresAt = NULL; private $accessTokenValidationPeriod = NULL; private $refreshTokenValidationPeriod = NULL; private $clientID = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX'; private $clientSecret = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX'; private $realmID = NULL; private $baseURL = 'https://sandbox-quickbooks.api.intuit.com/' }; public $minorVersion = '75'; public $IppConfiguration = class QuickBooksOnline\API\Core\Configuration\IppConfiguration { public $Logger = class QuickBooksOnline\API\Diagnostics\Logger { ... }; public $Security = class QuickBooksOnline\API\Core\OAuth\OAuth2\OAuth2AccessToken { ... }; public $Message = class QuickBooksOnline\API\Core\Http\Message { ... }; public $RetryPolicy = NULL; public $BaseUrl = class QuickBooksOnline\API\Core\Configuration\BaseUrl { ... }; public $ContentWriter = class QuickBooksOnline\API\Core\Configuration\ContentWriterSettings { ... }; public $OpControlList = class QuickBooksOnline\API\Core\Configuration\OperationControlList { ... }; public $minorVersion = '75'; public $SSLCheckStatus = NULL; public $RealmID = NULL; public $OAuthMode = 'oauth2' } } ).../DataService.php:391
40.01441122704QuickBooksOnline\API\DataService\DataService->updateServiceContextSettingsForOthers( $serviceContext = class QuickBooksOnline\API\Core\ServiceContext { public $realmId = NULL; public $serviceType = 'QBO'; public $baseserviceURL = 'https://sandbox-quickbooks.api.intuit.com/v3/'; private $appToken = NULL; private $isCreateMethod = FALSE; private $messageValues = NULL; public $requestValidator = class QuickBooksOnline\API\Core\OAuth\OAuth2\OAuth2AccessToken { private $accessTokenKey = NULL; private $tokenType = 'bearer'; private $refresh_token = NULL; private $accessTokenExpiresAt = NULL; private $refreshTokenExpiresAt = NULL; private $accessTokenValidationPeriod = NULL; private $refreshTokenValidationPeriod = NULL; private $clientID = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX'; private $clientSecret = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX'; private $realmID = NULL; private $baseURL = 'https://sandbox-quickbooks.api.intuit.com/' }; public $minorVersion = '75'; public $IppConfiguration = class QuickBooksOnline\API\Core\Configuration\IppConfiguration { public $Logger = class QuickBooksOnline\API\Diagnostics\Logger { ... }; public $Security = class QuickBooksOnline\API\Core\OAuth\OAuth2\OAuth2AccessToken { ... }; public $Message = class QuickBooksOnline\API\Core\Http\Message { ... }; public $RetryPolicy = NULL; public $BaseUrl = class QuickBooksOnline\API\Core\Configuration\BaseUrl { ... }; public $ContentWriter = class QuickBooksOnline\API\Core\Configuration\ContentWriterSettings { ... }; public $OpControlList = class QuickBooksOnline\API\Core\Configuration\OperationControlList { ... }; public $minorVersion = '75'; public $SSLCheckStatus = NULL; public $RealmID = NULL; public $OAuthMode = 'oauth2' } } ).../DataService.php:165
50.01541191704QuickBooksOnline\API\DataService\DataService->setupRestHandler( $serviceContext = class QuickBooksOnline\API\Core\ServiceContext { public $realmId = NULL; public $serviceType = 'QBO'; public $baseserviceURL = 'https://sandbox-quickbooks.api.intuit.com/v3/'; private $appToken = NULL; private $isCreateMethod = FALSE; private $messageValues = NULL; public $requestValidator = class QuickBooksOnline\API\Core\OAuth\OAuth2\OAuth2AccessToken { private $accessTokenKey = NULL; private $tokenType = 'bearer'; private $refresh_token = NULL; private $accessTokenExpiresAt = NULL; private $refreshTokenExpiresAt = NULL; private $accessTokenValidationPeriod = NULL; private $refreshTokenValidationPeriod = NULL; private $clientID = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX'; private $clientSecret = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX'; private $realmID = NULL; private $baseURL = 'https://sandbox-quickbooks.api.intuit.com/' }; public $minorVersion = '75'; public $IppConfiguration = class QuickBooksOnline\API\Core\Configuration\IppConfiguration { public $Logger = class QuickBooksOnline\API\Diagnostics\Logger { ... }; public $Security = class QuickBooksOnline\API\Core\OAuth\OAuth2\OAuth2AccessToken { ... }; public $Message = class QuickBooksOnline\API\Core\Http\Message { ... }; public $RetryPolicy = NULL; public $BaseUrl = class QuickBooksOnline\API\Core\Configuration\BaseUrl { ... }; public $ContentWriter = class QuickBooksOnline\API\Core\Configuration\ContentWriterSettings { ... }; public $OpControlList = class QuickBooksOnline\API\Core\Configuration\OperationControlList { ... }; public $minorVersion = '75'; public $SSLCheckStatus = NULL; public $RealmID = NULL; public $OAuthMode = 'oauth2' } } ).../DataService.php:177
60.01961256912{closure:/Users/rvanvuren/Projects/buyerkiosk-web-dev3/userfrosting/vendor/quickbooks/v3-php-sdk/src/config.php:12-27}( $class = 'QuickBooksOnline\\API\\Core\\HttpClients\\SyncRestHandler' ).../DataService.php:218

( ! ) Deprecated: QuickBooksOnline\API\Core\OAuth\OAuth2\OAuth2LoginHelper::__construct(): Implicitly marking parameter $serviceContext as nullable is deprecated, the explicit nullable type must be used instead in /Users/rvanvuren/Projects/buyerkiosk-web-dev3/userfrosting/vendor/quickbooks/v3-php-sdk/src/Core/OAuth/OAuth2/OAuth2LoginHelper.php on line 106
Call Stack
#TimeMemoryFunctionLocation
10.0029442688{main}( ).../OAuth2TokenGeneration.php:0
20.0103795696QuickBooksOnline\API\DataService\DataService::Configure( $settings = ['auth_mode' => 'oauth2', 'ClientID' => 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX', 'ClientSecret' => 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX', 'RedirectURI' => 'https://developer.intuit.com/v2/OAuth2Playground/RedirectUrl', 'scope' => 'com.intuit.quickbooks.accounting', 'baseUrl' => 'development'] ).../OAuth2TokenGeneration.php:11
30.02731360656QuickBooksOnline\API\DataService\DataService->configureOAuth2LoginHelper( $oauth2Conifg = class QuickBooksOnline\API\Core\OAuth\OAuth2\OAuth2AccessToken { private $accessTokenKey = NULL; private $tokenType = 'bearer'; private $refresh_token = NULL; private $accessTokenExpiresAt = NULL; private $refreshTokenExpiresAt = NULL; private $accessTokenValidationPeriod = NULL; private $refreshTokenValidationPeriod = NULL; private $clientID = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX'; private $clientSecret = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX'; private $realmID = NULL; private $baseURL = 'https://sandbox-quickbooks.api.intuit.com/' }, $settings = ['auth_mode' => 'oauth2', 'ClientID' => 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX', 'ClientSecret' => 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX', 'RedirectURI' => 'https://developer.intuit.com/v2/OAuth2Playground/RedirectUrl', 'scope' => 'com.intuit.quickbooks.accounting', 'baseUrl' => 'development'] ).../DataService.php:406
40.02731360656{closure:/Users/rvanvuren/Projects/buyerkiosk-web-dev3/userfrosting/vendor/quickbooks/v3-php-sdk/src/config.php:12-27}( $class = 'QuickBooksOnline\\API\\Core\\OAuth\\OAuth2\\OAuth2LoginHelper' ).../DataService.php:439

( ! ) Deprecated: Function curl_close() is deprecated since 8.5, as it has no effect since PHP 8.0 in /Users/rvanvuren/Projects/buyerkiosk-web-dev3/userfrosting/vendor/quickbooks/v3-php-sdk/src/Core/HttpClients/BaseCurl.php on line 125
Call Stack
#TimeMemoryFunctionLocation
10.0029442688{main}( ).../OAuth2TokenGeneration.php:0
20.03581471888QuickBooksOnline\API\Core\OAuth\OAuth2\OAuth2LoginHelper->exchangeAuthorizationCodeForToken( $code = 'AB11590626553iLinvYq9jciX3MKcx7vCONItnkZBmgfGHWfGP', $realmID = '4620816365006687740' ).../OAuth2TokenGeneration.php:27
30.04471473152QuickBooksOnline\API\Core\HttpClients\CurlHttpClient->makeAPICall( $url = 'https://oauth.platform.intuit.com/oauth2/v1/tokens/bearer', $method = 'POST', $headers = ['Accept' => 'application/json', 'Authorization' => 'Basic WFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWDpYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhY', 'Content-Type' => 'application/x-www-form-urlencoded'], $body = 'grant_type=authorization_code&code=AB11590626553iLinvYq9jciX3MKcx7vCONItnkZBmgfGHWfGP&redirect_uri=https%3A%2F%2Fdeveloper.intuit.com%2Fv2%2FOAuth2Playground%2FRedirectUrl', $timeOut = NULL, $verifySSL = TRUE ).../OAuth2LoginHelper.php:264
40.35561537240QuickBooksOnline\API\Core\HttpClients\CurlHttpClient->closeConnection( ).../CurlHttpClient.php:49
50.35561537240QuickBooksOnline\API\Core\HttpClients\BaseCurl->close( ).../CurlHttpClient.php:180

( ! ) Fatal error: Uncaught QuickBooksOnline\API\Exception\ServiceException: Http Status Code [400]: Exchange Authorization Code for Access Token failed. Body: [{"error":"invalid_grant","error_description":"Token invalid"}]. thrown in /Users/rvanvuren/Projects/buyerkiosk-web-dev3/userfrosting/vendor/quickbooks/v3-php-sdk/src/Core/OAuth/OAuth2/OAuth2LoginHelper.php on line 268
( ! ) QuickBooksOnline\API\Exception\ServiceException: Exchange Authorization Code for Access Token failed. Body: [{"error":"invalid_grant","error_description":"Token invalid"}]. in /Users/rvanvuren/Projects/buyerkiosk-web-dev3/userfrosting/vendor/quickbooks/v3-php-sdk/src/Core/OAuth/OAuth2/OAuth2LoginHelper.php on line 268
Call Stack
#TimeMemoryFunctionLocation
10.0029442688{main}( ).../OAuth2TokenGeneration.php:0
20.03581471888QuickBooksOnline\API\Core\OAuth\OAuth2\OAuth2LoginHelper->exchangeAuthorizationCodeForToken( $code = 'AB11590626553iLinvYq9jciX3MKcx7vCONItnkZBmgfGHWfGP', $realmID = '4620816365006687740' ).../OAuth2TokenGeneration.php:27