public static function getSimHandler($login, $transaction_key, $server = self::USE_PRODUCTION_SERVER)
    {
        $login           = trim($login);
        $transaction_key = trim($transaction_key);
        $api_url         = static::getSimURL($server);

        if (empty($login) || empty($transaction_key)) {
            throw new AuthnetInvalidCredentialsException('You have not configured your login credentials properly.');
        }

        return new AuthnetSim($login, $transaction_key, $api_url);
    }