For register Groovy menu under extended license for your theme , you need to visit license site https://license.grooni.com/.

Signin with your account, or register a new one. Add new or update your licenses. Make sure you have an extended license displayed.

Activate it by entering the name of your WordPress theme. This name must match the result of calling the wp_get_theme()->get_template()

Groovy Menu plugin updates for extended license

Updates for extended license are disabled. All installed copies of the plugin that work in conjunction with a registered WordPress theme under an extended license are also considered registered.

Therefore, your customers do not need to go through additional registration.

You need to take care of updating the plugin for your theme on your own. Just as you update other plugins such as Slider Revolution, WPBakery and others

Method of integration Groovy Menu into theme (developer tips)

To integrate the Groovy Menu into a template, we recommend the following:
In the header.php theme template in the markup place where the menu area is supposed to be displayed, you need to add action through which we will later display the menu.

Here and after in the text of the PHP code, the prefix themename_ is used for the names of actions and functions. It is assumed that you replace it with the prefix used in your theme.

/**
 * Used for display the main menu area.
 */
do_action( 'themename_primary_menu_area' );

Further, for example, in functions.php, you can add an action function that actually displays the menu markup. We recommend adding such functions in the 'after_setup_theme' action. The following is an example code for such a call:

add_action( 'after_setup_theme', 'themename_theme_setup' );

if ( ! function_exists( 'themename_theme_setup' ) ) {
	function themename_theme_setup() {
		/*
		 * Add default main menu
		 */
		add_action( 'themename_primary_menu_area', 'themename_show_primary_menu_area' );

	}
}


if ( ! function_exists( 'themename_show_primary_menu_area' ) ) {
	/**
	 * Show primary menu area.
	 */
	function themename_show_primary_menu_area() {

		if ( function_exists( 'groovyMenu' ) ) {

			$args = array(
				'theme_location' => 'primary',
				'menu_class'     => 'nav-menu',
			);

			// Call Groovy Menu plugin.
			groovyMenu( $args );

		} else {
		
			// Show fallback menu if Groovy Menu plugin is not activated.
		
		}

	}
}

What gives such an approach to displaying menu markup? First, the user, through the Child theme, can independently control those functions that will be displayed in this area of the template. Will be able to remove the hook that he does not need, or vice versa add his own. There are also cases when it is necessary not to completely show the layout of the menu block. With this design, it will be just as possible.