![](/books/kb/images/books.png)
Plugin Manifest Configuration
The file plugin-manifest.json in the widget directory holds the configuration details of widgets. Here’s how you can define the keys:
Locale
Locale is the language supported. Currently, Zoho Books supports only English (“en”).
Key | Type | Value |
---|---|---|
locale* | JSONArray | en |
Service
Service is the product for which the widget is created. In this example, the product is Finance.
Key | Type | Value |
---|---|---|
service* | String | FINANCE |
Module
Currently, Zoho Books supports the widgets module.
Widgets
Details about the widgets will be captured here. It holds an array of objects. You can combine two or more widgets to create a new widget as well.
Locations
This key defines the different locations in Zoho Books where widgets can be positioned/rendered. You can have upto 10 widgets per location.
Zoho Books supports the following locations:
Right sidebar in the invoices list page:
The widget is displayed in the list page of the Invoices module.
![List page](/books/developer/images/widgets/inv-list.png)
Other supported location are:
- customer.list.sidebar
- vendor.list.sidebar
- estimate.list.sidebar
- retainerinvoice.list.sidebar
- salesorder.list.sidebar
- creditnote.list.sidebar
Right sidebar in the invoice creation page:
![Creation page](/books/developer/images/widgets/inv-creation.png)
Other supported location are:
- customer.creation.sidebar
- vendor.creation.sidebar
- estimate.creation.sidebar
- retainerinvoice.creation.sidebar
- salesorder.creation.sidebar
- creditnote.creation.sidebar
Right sidebar in the invoice details page:
![Details page](/books/developer/images/widgets/inv-details.png)
Other supported location are:
- customer.details.sidebar
- vendor.details.sidebar
- estimate.details.sidebar
- retainerinvoice.details.sidebar
- salesorder.details.sidebar
- creditnote.details.sidebar
Right sidebar of Zoho Books:
The widget can be displayed in the sidebars of all pages.
Dashboard:
Run widgets in the background:
These widgets can access the API events which are broadcasted from the current viewing page and react accordingly.
Web Tabs:
These widgets will be displayed under the Web Tabs section in the left sidebar.
Used Connections
Third-party authentication and integration can prove to be challenging. To make authenticating easy, we support Connections. Connections is a built-in Zoho service used for authenticating third-party services using OAuth 2.0 protocol. You can easily establish a connection with a third-party service if the service has already been configured. You can find the list of available services by navigating to Zoho Books and then selecting Developer Space. From Connections, select Predefined Services. Learn how to add a custom connection.
Third-party authentication using connectors:
Widgets created for third-party services need a connector to establish a connection with Zoho Books. You can either connect to an available third-party service or request a new one.
To establish a connection with an available third-party service:
Create a new connection. The JSON script generated in the connections page will be used in the usedConnections key of the plugin-manifest.json file.
cspDomains
You can mention the domains that needs to be added in the Content-Security-Policy header to control the resources that the widget is allowed to load.