/

Extension Components

Once you have created an extension as mentioned in the create extensions help document, the next step is to add components to it. Components are the building blocks of an extension. The components will be available in the Build section at the top.

Components

Preferences

You can customize extensions based on your requirements using these components from the Preferences pane:

Field Customization

If the fields in a module do not meet your requirements, you can create additional fields to store the required information using custom fields. Read our help document on Custom Fields to learn more about the feature.

PDF Templates

Customize the look and feel of sales transactions to suit your brand better in Zoho Commerce. You can customize an existing template or create a new one. Read our help document on PDF templates to learn more about the feature.

Email Notifications

Customize the emails sent from your organization. Read our help document on Email Notifications to learn more about the feature.

Automation

You can automate your day-to-day work processes to save time and money. Here’s a list of automation tasks that can performed in Zoho Commerce:

Workflow Rules

A workflow rule consists of actions that comprises of Email Alerts, In-App Notifications, Field Updates, and Custom Functions that play an essential role in executing a task. A workflow rule may employ one or more workflow actions to automate the tasks of your organization. Read our help document on Workflow Rules to learn more about the feature.

Workflow Actions

Workflow Actions in Zoho Commerce allows you to automate tasks and actions based on predefined triggers or conditions. The workflow actions available in Zoho Commerce are:

Email Alerts

Email Alerts are automated emails that are sent when the criteria in a workflow rule are met. You can create new email alerts and use them in a workflow rule. Read our help document on Email Alerts to learn more about the feature.

In-App Notifications

In-app Notifications help you notify your users of an event or a significant activity that has taken place in your organization. Read our help document on In-App Notifications to learn more about the feature.

Field Updates

Field Updates automatically make changes to a field within a particular module when the workflow is triggered. Read our help document on Field Updates to learn more about the feature.

Custom Functions

Custom functions in Zoho Commerce allows you to write small pieces of code to automate your business processes. Read our help document on Custom Functions to learn more about the feature.

Schedules

Create and run predefined tasks at a specified time or intervals using Schedules. You can create your tasks using a deluge script and schedule this task to be executed at a particular time or on a recurring basis. Read our help document on Schedules to learn more about the feature.

Signals

A Signal sends in-app notifications to users in your organization whenever an action is performed in a third-party app that you had configured. Read our help document on Signals to learn more about the feature.

Widgets

Sometimes, you may want to access features from third-party applications in Zoho Commerce. Widgets can help you achieve this using embeddable UI components. Read our help document on Widgets to learn more about them.

API Configurations for Widgets

API Configurations enable a widget to fetch, process, and update data. They define the endpoints, request parameters, and authentication methods the widget uses to securely access external or backend services. Read our help document on API Configurations to learn more.

Connections

You can connect to a third-party service or other Zoho applications using connections in Zoho Commerce. You can set up a connection from the Deluge editor page. Read our help document on Connections to learn more about the feature.

Custom Views

Create custom views to filter the records in any module based on the criteria you’ve set. Read our help document on Custom Views to learn more about the feature.

Custom Modules

There might be times when the predefined modules in Zoho Commerce may not be sufficient to manage all your business requirements. In such cases, you can create a custom module to record other data. Read our help document on Custom Modules to learn more about the feature.

Payment Gateway Connectors

A Payment Gateway Connector bridges software and a payment gateway, securely transferring payment data from the customer to the gateway for processing, and back to the software.

If you’re a developer, you can create an extension for payment gateways that are not currently supported by Zoho Commerce using Payment Gateway Connectors. Once done, you can publish and sell your extension in the Zoho Marketplace to Zoho Commerce users.

Zoho Commerce users can then install your extension for their Zoho Commerce organization and use it to receive payments.

To create a payment gateway extension, email us at platform-support@zohofinance.com and we will enable Payment Gateway Connectors for your organization.


Extension Creation Guidelines

Now that you’ve learned about the various components of an extension, you can begin building your extension. However, it’s crucial to ensure that your extension aligns with the Zoho Commerce extension guidelines. This makes it easier for your extension to be approved or to be published in Zoho Marketplace.

The guidelines that you have to follow when developing an extension are:

Common Guidelines

  • Do not use any unwanted components or scripts in the extension.
  • Do not use more than 5 custom fields in each module.
  • Ensure that the extension name does not contain the name of the product for which it is developed. For example, if you’re developing an extension for Twilio, the extension name should be Twilio and not Twilio for Zoho Commerce.

Guidelines for Connections

  • If you’re using connections in your extension, enable only the scopes that are required for the connection.
  • If the connection’s authentication type is OAuth2, include access_type=offline in the Authorize URL field.
  • Ensure that the connection name is a combination of the service name and the extension name, separated by a hyphen in Pascal case. For example, ZohoCommerce-Twilio.
  • If individual users of an organization have to connect and authorize the connections used in your extension, set the value for the user access param to true.

Guidelines for Custom Scripts

  • If you want to publish the extension in other Zoho Finance apps, do not use any internal SDK methods. For example, instead of using zoho.commerce.getRecord, use invokeurl.
  • Include api_root_endpoint in the Invoke call’s URL.
  • Do not create components using scripts.
  • If you’re using comments in the custom scripts, ensure that you do not add personal or sensitive information as comments.
  • When comparing the name of a field with a string, use the API field name for comparison instead of its label name. For example, if a custom field’s label name is “Landmark” and its API field name is “cf_landmark”, compare using custom_fields.get(“api_name”)" == “cf_landmark” and not custom_fields.get(“label”) == “Landmark”.

Guidelines for Widgets

  • If you’re using widgets in the extension, ensure that they adhere to the style used in the Zoho Commerce user interface.
  • Ensure that the widget’s data is not displayed in the console tool.

Guidelines for Global Fields

  • If you’re using global fields in custom scripts, check the Allow use of Global fields in this custom function option.
  • If the data type of the global field is Users or Roles, and notifications are sent to the users, set the value of the is_mandatory param to true.

Guidelines for Schedules

  • Set the param User Access to false in connections if you’re using schedules.