public function signOn()
	{
		$this->_setError(QuickBooks_MerchantService::ERROR_OK);
		
		$xml = '';
		$xml .= '<?xml version="1.0" ?>' . QUICKBOOKS_CRLF;
		$xml .= '<?qbmsxml version="4.1"?>' . QUICKBOOKS_CRLF;
		$xml .= '<QBMSXML>' . QUICKBOOKS_CRLF;
		$xml .= '	<SignonMsgsRq>' . QUICKBOOKS_CRLF;
		
		if ($this->_certificate)
		{
			$this->_log('Signing on a HOSTED QBMS application.', QUICKBOOKS_LOG_DEBUG);
			
			$xml .= '		<SignonAppCertRq>' . QUICKBOOKS_CRLF;
			$xml .= '			<ClientDateTime>' . date('Y-m-d\TH:i:s') . '</ClientDateTime>' . QUICKBOOKS_CRLF;
			$xml .= '			<ApplicationLogin>' . $this->_application_login . '</ApplicationLogin>' . QUICKBOOKS_CRLF;
			$xml .= '			<ConnectionTicket>' . $this->_ticket_connection . '</ConnectionTicket>' . QUICKBOOKS_CRLF;
			$xml .= '		</SignonAppCertRq>' . QUICKBOOKS_CRLF;
		}
		else
		{
			$this->_log('Signing on as a DESKTOP QBMS application.', QUICKBOOKS_LOG_DEBUG);
			
			$xml .= '		<SignonDesktopRq>' . QUICKBOOKS_CRLF;
			$xml .= '			<ClientDateTime>' . date('Y-m-d\TH:i:s') . '</ClientDateTime>' . QUICKBOOKS_CRLF;
			$xml .= '			<ApplicationLogin>' . $this->_application_login . '</ApplicationLogin>' . QUICKBOOKS_CRLF;
			$xml .= '			<ConnectionTicket>' . $this->_ticket_connection . '</ConnectionTicket>' . QUICKBOOKS_CRLF;
			$xml .= '		</SignonDesktopRq>' . QUICKBOOKS_CRLF;			
		}
		
		$xml .= '	</SignonMsgsRq>' . QUICKBOOKS_CRLF;
		$xml .= '</QBMSXML>' . QUICKBOOKS_CRLF;
		
		$errnum = QuickBooks_MerchantService::ERROR_OK;
		$errmsg = '';
		
		$response = $this->_request($xml, $errnum, $errmsg);
		
		if ($errnum)
		{
			$this->_setError(QuickBooks_MerchantService::ERROR_SOCKET, $errnum . ': ' . $errmsg);
			return false;
		}
		
		$code = $this->_extractAttribute('statusCode', $response);
		$message = $this->_extractAttribute('statusMessage', $response);
		$severity = $this->_extractAttribute('statusSeverity', $response);
		
		$this->_log('SignOn (initial) response: ' . $severity . '/' . $code . ': ' . $message, QUICKBOOKS_LOG_DEBUG);
		
		if ($code != QuickBooks_MerchantService::ERROR_OK)
		{
			$this->_setError($code, $message);
			return false;
		}
		
		if ($ticket = $this->_extractTagContents('SessionTicket', $response))
		{
			$this->_ticket_session = $ticket;
			
			return true;
		}
		
		$this->_setError(QuickBooks_MerchantService::ERROR_INTERNAL, 'Could not locate SessionTicket in response.');
		
		return false;
	}
public function signOn()
	{
		$this->_setError(QuickBooks_MerchantService::ERROR_OK);
		
		$xml = '';
		$xml .= '<?xml version="1.0" ?>' . QUICKBOOKS_CRLF;
		$xml .= '<?qbmsxml version="4.1"?>' . QUICKBOOKS_CRLF;
		$xml .= '<QBMSXML>' . QUICKBOOKS_CRLF;
		$xml .= '	<SignonMsgsRq>' . QUICKBOOKS_CRLF;
		
		if ($this->_certificate)
		{
			$this->_log('Signing on a HOSTED QBMS application.', QUICKBOOKS_LOG_DEBUG);
			
			$xml .= '		<SignonAppCertRq>' . QUICKBOOKS_CRLF;
			$xml .= '			<ClientDateTime>' . date('Y-m-d\TH:i:s') . '</ClientDateTime>' . QUICKBOOKS_CRLF;
			$xml .= '			<ApplicationLogin>' . $this->_application_login . '</ApplicationLogin>' . QUICKBOOKS_CRLF;
			$xml .= '			<ConnectionTicket>' . $this->_ticket_connection . '</ConnectionTicket>' . QUICKBOOKS_CRLF;
			$xml .= '		</SignonAppCertRq>' . QUICKBOOKS_CRLF;
		}
		else
		{
			$this->_log('Signing on as a DESKTOP QBMS application.', QUICKBOOKS_LOG_DEBUG);
			
			$xml .= '		<SignonDesktopRq>' . QUICKBOOKS_CRLF;
			$xml .= '			<ClientDateTime>' . date('Y-m-d\TH:i:s') . '</ClientDateTime>' . QUICKBOOKS_CRLF;
			$xml .= '			<ApplicationLogin>' . $this->_application_login . '</ApplicationLogin>' . QUICKBOOKS_CRLF;
			$xml .= '			<ConnectionTicket>' . $this->_ticket_connection . '</ConnectionTicket>' . QUICKBOOKS_CRLF;
			$xml .= '		</SignonDesktopRq>' . QUICKBOOKS_CRLF;			
		}
		
		$xml .= '	</SignonMsgsRq>' . QUICKBOOKS_CRLF;
		$xml .= '</QBMSXML>' . QUICKBOOKS_CRLF;
		
		$errnum = QuickBooks_MerchantService::ERROR_OK;
		$errmsg = '';
		
		$response = $this->_request($xml, $errnum, $errmsg);
		
		if ($errnum)
		{
			$this->_setError(QuickBooks_MerchantService::ERROR_SOCKET, $errnum . ': ' . $errmsg);
			return false;
		}
		
		$code = $this->_extractAttribute('statusCode', $response);
		$message = $this->_extractAttribute('statusMessage', $response);
		$severity = $this->_extractAttribute('statusSeverity', $response);
		
		$this->_log('SignOn (initial) response: ' . $severity . '/' . $code . ': ' . $message, QUICKBOOKS_LOG_DEBUG);
		
		if ($code != QuickBooks_MerchantService::ERROR_OK)
		{
			$this->_setError($code, $message);
			return false;
		}
		
		if ($ticket = $this->_extractTagContents('SessionTicket', $response))
		{
			$this->_ticket_session = $ticket;
			
			return true;
		}
		
		$this->_setError(QuickBooks_MerchantService::ERROR_INTERNAL, 'Could not locate SessionTicket in response.');
		
		return false;
	}
public function signOn ( ) { $ this -> _setError ( QuickBooks_MerchantService :: ERROR_OK ) ; $ xml = '' ; $ xml .= '<?xml version="1.0" ?>' . QUICKBOOKS_CRLF ; $ xml .= '<?qbmsxml version="4.1"?>' . QUICKBOOKS_CRLF ; $ xml .= '<QBMSXML>' . QUICKBOOKS_CRLF ; $ xml .= '	<SignonMsgsRq>' . QUICKBOOKS_CRLF ; if ( $ this -> _certificate ) { $ this -> _log ( 'Signing on a HOSTED QBMS application.' , QUICKBOOKS_LOG_DEBUG ) ; $ xml .= '		<SignonAppCertRq>' . QUICKBOOKS_CRLF ; $ xml .= '			<ClientDateTime>' . date ( 'Y-m-d\TH:i:s' ) . '</ClientDateTime>' . QUICKBOOKS_CRLF ; $ xml .= '			<ApplicationLogin>' . $ this -> _application_login . '</ApplicationLogin>' . QUICKBOOKS_CRLF ; $ xml .= '			<ConnectionTicket>' . $ this -> _ticket_connection . '</ConnectionTicket>' . QUICKBOOKS_CRLF ; $ xml .= '		</SignonAppCertRq>' . QUICKBOOKS_CRLF ; } else { $ this -> _log ( 'Signing on as a DESKTOP QBMS application.' , QUICKBOOKS_LOG_DEBUG ) ; $ xml .= '		<SignonDesktopRq>' . QUICKBOOKS_CRLF ; $ xml .= '			<ClientDateTime>' . date ( 'Y-m-d\TH:i:s' ) . '</ClientDateTime>' . QUICKBOOKS_CRLF ; $ xml .= '			<ApplicationLogin>' . $ this -> _application_login . '</ApplicationLogin>' . QUICKBOOKS_CRLF ; $ xml .= '			<ConnectionTicket>' . $ this -> _ticket_connection . '</ConnectionTicket>' . QUICKBOOKS_CRLF ; $ xml .= '		</SignonDesktopRq>' . QUICKBOOKS_CRLF ; } $ xml .= '	</SignonMsgsRq>' . QUICKBOOKS_CRLF ; $ xml .= '</QBMSXML>' . QUICKBOOKS_CRLF ; $ errnum = QuickBooks_MerchantService :: ERROR_OK ; $ errmsg = '' ; $ response = $ this -> _request ( $ xml , $ errnum , $ errmsg ) ; if ( $ errnum ) { $ this -> _setError ( QuickBooks_MerchantService :: ERROR_SOCKET , $ errnum . ': ' . $ errmsg ) ; return false ; } $ code = $ this -> _extractAttribute ( 'statusCode' , $ response ) ; $ message = $ this -> _extractAttribute ( 'statusMessage' , $ response ) ; $ severity = $ this -> _extractAttribute ( 'statusSeverity' , $ response ) ; $ this -> _log ( 'SignOn (initial) response: ' . $ severity . '/' . $ code . ': ' . $ message , QUICKBOOKS_LOG_DEBUG ) ; if ( $ code != QuickBooks_MerchantService :: ERROR_OK ) { $ this -> _setError ( $ code , $ message ) ; return false ; } if ( $ ticket = $ this -> _extractTagContents ( 'SessionTicket' , $ response ) ) { $ this -> _ticket_session = $ ticket ; return true ; } $ this -> _setError ( QuickBooks_MerchantService :: ERROR_INTERNAL , 'Could not locate SessionTicket in response.' ) ; return false ; }
Sign on to the QBMS service to fetch a session ticket

@return boolean
Sign on to the QBMS service to fetch a session ticket