# Using Qlik Sense third-party extensions

You can use Qlik Sense third-party extensions inside Qlik NPrinting reports as images, tables, and levels.

## Requirements

All objects that have been added to a sheet can be used as images. Qlik NPrinting does not distinguish between native visualizations and extensions. However, for a third-party extension to render correctly, the JavaScript implementation of the extension needs to fulfill certain requirements. In particular, the extension must implement the "[finished rendering](https://help.qlik.com/en-US/nprinting/February2025/Content/NPrinting/MultiDocument/Using-Sense-third-party-extensions.htm#finished_rendering)" notification.

A third-party extension can be used as a table if:

* The object contains exactly one hypercube.
* The hypercube is either straight or stacked.

A third-party extension can be used as a level if:

* The properties of the object contain exactly one hypercube.
* The hypercube is either straight or stacked.
* The hypercube has at least one dimension.
* The hypercube contains no calculated or grouped dimensions.

Qlik NPrinting does not support the exporting or printing of visualization extensions that use:

* External resources.
* External and undocumented JavaScript modules or APIs.

## Setting up a "finished rendering" notification

To export your third-party extension as an image, you must use the paint method to inform Qlik NPrinting that the extension has finished rendering. Otherwise, you could have blank or partially rendered images.

```

                    // ...,
paint : function() {
     return qlik.Promise.resolve();
}
// ...
                
```

## Learn more

* [Visualization extensions](https://help.qlik.com/en-US/sense-developer/May2026/Subsystems/Extensions/Content/Sense_Extensions/extensions-introduction.htm)
* [*Enabling export of your visualization extension*](https://help.qlik.com/en-US/sense-developer/May2026/Subsystems/Extensions/Content/Sense_Extensions/Howtos/extensions-enable-export.htm)