Table of Contents
CRM client management
Client management
All the customer management (Customer relationship management or CRM) part of Integria IMS is conceived as a support to management, incorporating a database of contacts, companies and contracts. It is designed to be able to keep an integrated follow-up of the management of support contracts, software licenses and their expiration management. It can even be used to issue invoices, but Integria IMS is not a CRM/ERP (Enterprise resource planning) and is not intended for it.
To be able to use the CRM, you must first activate it in the visibility options of the Setup:
Delete the CRM entry that makes it hidden from everyone (except admin users). That way, it is already visible to all users.
CRM permissions
The profile permissions that apply to the CRM are these:
The management of access to the CRM information is given by the companies. The owner of a company (we will see later how this is established) is the one who can modify information. Those who belong to the same company as the owner of the company can also see information. Only those with management permissions can modify data of colleagues' companies (users of the same company). Let's see an example.
User #1 and Manager #1 both belong to the “matrix” company, which we will call My company. Customer #A and Customer #B are two companies, customers, managed by User #1 and Manager #1 respectively. We also have a user, User #2, who is a user who has access to support, but not to the CRM part, and that belongs to the company “Customer #A”.
- User #1 has the following permissions: CRM View and Write.
- Manager #1 has the following permissions: CRM View, Write and Manage.
- User #2 does not have CRM permissions.
- User #1 will be able to see and modify the data related to the Customer #A company since it is its “owner”. You will also be able to see the data related to the Customer #B company since its owner, Manager #1, belongs to the same company (My Company). But you can only see, you cannot modify anything.
- Manager #1 can see and modify data of both companies since it belongs to My company and also has management permissions.
- User #2 cannot see any data as it does not have access to the CRM.
CRM data
When we talk about “data a CRM user can see” we talk about the following elements and their relationship between them:
Companies
The basic element of the CRM and the first to be defined is the company. The basic file of a company looks like this:
The “manager” is the owner of the company, and the main company is the company from which it “hangs”. For another user to have access, they must be a user associated with that company. Remember that there is a field in the “company” user file:
A company that does not have a “main company” will go for free, and only the owner of that company or users with super-administrator permissions will be able to see it. Generally, the first step to work with a CRM is to create the “parent” company of all employees and that this is the company that they have in their user file. Then it will be the parent company of the rest of companies (clients, suppliers, etc.).
The company role is a basic identification to be able to make filters, and the roles can be easily customized from CRM → Companies → Company roles. Fields such as tax ID, country and address are later used to make invoices.
As in other Integria IMS elements, it is possible to create custom fields for companies. To do this, from CRM → Companies → Custom fields. Custom fields are grouped into “custom field sections” to be able to view and manage that information by blocks.
Importing companies
Importing can be done through an export carried out in Integria IMS (in which the structure should not be manipulated as it is generated in the system) and can be done through a CSV file created by hand.
For the first case, the input file will be the same as the one previously exported, which does not impose problems when processing the CSV.
For the second case, a series of parameters must be entered in order, some mandatory and others not, being able to choose empty values for the latter. The fields will be the following, following the logical order established by the tool:
- Name.
- Address.
- Tax ID.
- Country.
- Website.
- Comments.
- Company role identifier.
- Parent identifier.
- Company manager.
- Last update.
- Payment conditions.
- Custom fields: they must exist previously in Integria IMS system and they must be indicated in order, being able to choose a value, or in case of not wanting to give them a value, a blank space.
Example:
Test company,,,Spain,,,,,admin,0000-00-00 00:00:00,,Integria,20
Contacts
Contacts are associated to companies, so any Integria IMS user who has access to a company will be able to see their contacts (and their contracts and invoices). Contacts have nothing to do with users, they are only informative pieces without any access to Integria IMS.
Contracts
Contracts contain varied information, in fact several types of contracts can be defined (for example: services, software licenses) and each type can have its own custom fields, similar to what happens in incidents.
To create different types of contracts, go to CRM → Contracts → Contract types and add or edit any of the existing ones.
Contracts are associated with a company, so a company can have 1 or more contracts. In turn, the contracts may (or may not) be linked to one or more invoices. For this we use the External code field:
If you want to link it to several invoices, enter all of them separated by commas. In the event that the contract is linked to one or more invoices, you will be able to see the invoices associated with that contract in the upper left flap:
There are “fixed” fields of the contract such as the external code (the linked invoice), a short descriptive field (reference of the contract) that identifies it in the lists and where each company can apply its nomenclature, start and end dates and fields to find out whether the contract is active and what type of contract it is. Then the custom fields appear depending on the type of contract you have chosen.
Generation of contract documents
Using the contract data, you may generate a PDF with said data. This can be used to generate “certificates” or “formal documents” that bear for example the contract ID, the name of the client, the dates of validity of the contract, or data that you may have entered in the custom fields.
To do this, from the contract view, click on the button to generate PDF from template:
And it will allow you to choose between the existing templates (you may use the example ones and modify them).
When generating a PDF file based on the contract, this one is automatically added to the contract as attachment:
The default template looks as follows:
To edit this template and modify it (or create a new one), use the template editor that is in CRM → Contracts → Edit template. The template is nothing more than an HTML that uses macros to replace contract data. You may use images and text just by copying/pasting it from another source. You may also use native HTML if you know how to use it for layout.
The macros that can be used in contract templates are as follows:
_id_contract_
: Contract identifier._name_contract_
: Contract reference (the small descriptive field)._contract_number_
: External number (invoice number)._contract_description_
: Long contract description._date_begin_
: Start date._date_end_
: Finish date._id_company_
: Company identifier._private_
: If it is private._id_status_
: Contract status identifier (0 inactive, 1 active)._name_status_
: State name._company_name_
: Name of the company._company_address_
: Company address._company_fiscal_id_
: Company tax identifier._company_country_
: Country of the company._company_website_
: Company website._company_comments_
: Comments of the company._company_manager_
: Company manager._company_last_update_
: Last update of the company._company_payment_conditions_
: Company payment terms._contract_type_id_
: Contract type identifier._contract_type_name_
: Name of the type of contract._contract_type_description_
: Contract type description._custom_XX_
: Custom macros are made with the wordcustom
together with the identifier of the contract type field and this “id” can be seen in the list of contract type fields._template_id_
: Template identifier._template_name_
: Template name._template_description_
: Description of the template._format_long_time_
Long current date format, example:11 Wed April 2021
._format_short_time_
:Short current date format, example:11/04/2021
._format_annual_date_
: Current date format only year, example:2021
.
Contract import
Importing can be done through an export carried out in Integria IMS (in which the structure should not be manipulated as it is generated in the system) and it can be done through a CSV file created manually.
For the first case, the input file will be the same as the one previously exported, which does not impose problems when processing the CSV.
For the second case, a series of parameters must be entered in order, some mandatory and others not, being able to choose empty values for the latter. The fields will be the following, following the logical order established by the tool:
- Name.
- Contract number.
- Description.
- Start date.
- Finish date.
- Company identifier.
- SLA identifier.
- Group identifier.
- Private.
- State.
- Type of contract.
- Custom fields: they must exist previously in Integria IMS system and they must be indicated in order, being able to choose a value, or in case of not wanting to give them a value, a blank space.
Example (type 1 with two custom fields, a text one and a numeric one):
Test contract,123456789,Description,2017-07-25,2017-07-31,1,,,0,1,1, Integria,20
Bills
Similarly to contracts, they help us find out when there are invoices issued without charging, and to know when and how much a specific company has been invoiced. The system is in no case an ERP that is used to calculate treasury cycles, management of defaults or other features of an ERP.
Let's see an example of an invoice:
The most significant fields of the invoices are:
- Company: The invoice will appear in the particular invoice section of the selected company.
- Identification of the invoice: Invoice number. It cannot be duplicated with another invoice in the system. The system automatically calculates the next invoice number according to the invoice configuration of the configuration. Exceptions can also be defined.
- Reference: Informative. Generally to indicate an order number, purchase order or similar.
- Invoice status: Pending payment, paid or canceled.
- Creation, expiration dates and effective payment date.
- Taxes: Withholdings and discounts, which alter the final amount.
- Language: The invoice will be generated in PDF in the language we specify.
- Internal note: An internal comment, which is not reflected in the PDF invoice.
- Description: Text that will appear on the invoice, generally clarifying order details, adding additional information (such as account number for payment, etc).
Once the invoice is created, you may attach files (the purchase order, offers, etc.)
The invoice can be blocked so that only the creator can modify it (padlock icon). It can also be deleted (administrators only) and can be exported to PDF using the option icons in the invoice list:
The appearance of a PDF invoice is intended to be delivered to the administration, the client, the Treasury, etc. Keep in mind that if you modify an invoice, you may regenerate the PDF to reflect those changes and replace the old PDF. This is an invoice PDF:
Leads
Integria IMS allows sales leads managing and administration (business leads or people in charge of business with companies).
Through lead Management, Integria IMS can track potential customers. Generally, these leads get in “externally”, through an integration with the Integria IMS API, although they can also be created manually from the editor. Like other Integria items, a lead has an “owner” who is the person who manages it.
The system allows you to record the activity of that lead, and to modify its status, so that it progresses from a lead without “classifying” to a closed sale (or loss). Leads can be forwarded (mail forward) or managed directly by mail from the tool. If done from Integria IMS itself, sending and receiving responses by email can be managed, which will be reflected in the follow-up of the lead, by including in CC
, so that it can “capture” the response email of the lead.
Macros in lead templates
You may use the following macros in the lead templates:
_DEST_NAME_
: Full name of the recipient of the email, as it is in the lead record._DEST_EMAIL_
: Lead's email mailbox._SRC_NAME_
: Full name of the Integria IMS user who sends the lead._SRC_EMAIL_
: Email of the Integria IMS user who sends the lead.
Lead activity management through emails
Integria IMS allows you to manage lead commercial activity through emails. This Enterprise feature will allow you to update the conversation between the parties and upload files to the lead automatically.
For that, an email mailbox is used as a reference, from which Integria IMS will read the messages to retrieve the information and attachments. In section E-mail settings you may see all the details about the settings of the mailbox.
This feature is used through the Reply email option available in leads. With this option Integria will send an email message adding a token of the type [Lead#35]
at the beginning of the subject of the email. In addition, when sending the mail, the address of the reference mailbox will be added in the CC
field.
That way, when a client or a sales person responds to the email, a copy will reach the reference mailbox and Integria IMS will identify the email and process it. To update the lead, the information in the body of the email will be added to the lead activity and the attached files will be uploaded to the server associating the corresponding lead.
It is very important that both your customers and business employees use the Reply All feature of their email client to ensure that a copy of the email reaches the reference mailbox in the CC
field.
Creating a lead through a web form
Using the Integria IMS REST API, it is possible to create new leads from a contact form on a website. That way, you will be able to enter the information of your leads automatically in the tool. Here is a short example of how to create a script to accomplish this task.
The following PHP code creates a form and collects the data submitted by the form. With them, it composes a call to the Integria IMS API that creates a new lead.
<?php //Config parameters $integria_url = "http://192.168.70.163/integria"; $user = "api_user"; //Get post parameters $name = $_POST["name"]; $email = $_POST["email"]; $company = $_POST["company"]; $role = $_POST["role"]; $country = $_POST["country"]; $comments = $_POST["comments"]; //Create url to call the API $myurl = $integria_url."/include/api.php?user=".$user."&op=create_lead¶ms="; $myurl .= urlencode($name).",".urlencode($company).","; $myurl .= urlencode($email).",".urlencode($country).",0,0,,,"; $myurl .= urlencode($role).",,,".urlencode($comments).",1,0"; // Configure curl $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $myurl); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); // Send curl request and close $ret = curl_exec($ch); curl_close ($ch); ?> <h2>Integria IMS Lead form</h2> <form method="post"> Full name: <input type="text" name="name" size="35"><br><br> E-mail: <input type="text" name="email" size="25"><br><br> Company: <input type="text" name="company" size="30"<br><br> Position: <input type="text" name="role" size="30"><br><br> Country: <input type="text" name="country" size="20"><br><br> Comments and questions:<br> <textarea name="comment" cols="50" rows="8"></textarea><br><br> <input type="submit" name="submit" value="Submit"> </form>
The resulting sample form looks like the following.
Next we will comment on the code part.
The first two variables define the url where Integria IMS is hosted and the user who has permissions to use the API functions
//Config parameters $integria_url = "http:192.168.70.163/integria"; $user = "api_user";
The following assignments collect the values sent by the form and assign them to variables for later use.
//Get post parameters $name = $_POST["name"]; $email = $_POST["email"]; $company = $_POST["company"]; $role = $_POST["role"]; $country = $_POST["country"]; $comments = $_POST["comments"];
Next, a text string is created with the url that we will use to create the leads using the Integria IMS API. In addition to the address of the server and the user, the op parameters are configured with the create_lead
value that indicates the API function to use and with the function parameters.
//Create url to call the API $myurl = $integria_url."/include/api.php?user=".$user."&op=create_lead¶ms="; $myurl .= urlencode($name).",".urlencode($company).","; $myurl .= urlencode($email).",".urlencode($country).",0,0,,,"; $myurl .= urlencode($role).",,,".urlencode($comments).",1,0";
An example of the result of the resulting url could be the following:
http://192.168.70.163/integria/include/api.php?user=api_user&op=create_lead¶ms=Jimmy,PFMS,Rodriguez,Spain,0,0,,,Developer,,,,1,0
Finally, the code makes a call to Integria IMS API through the PHP CURL utility.
//// Configure curl $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $myurl); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); // Send curl request and close $ret = curl_exec($ch); curl_close ($ch);//
When submitting a form such as the following:
CRM configuration and customization
In the configuration section, you will find a tab for CRM management:
You may enable or disable invoice ID automatic generation and modify its structure:
In the Invoice ID pattern field, a text string is stored that will be used as a pattern to generate the IDs. This pattern will contain a fixed part and a variable. The variable part must be numerical and work as the first element from which to calculate a sequence. The variable part will go between square brackets. The rest will be constant on all invoices.
Pattern example: 15/[1000]
In this case, the first three invoices to be generated will be 15/1000, 15/1001 and 15/1002.
Invoice ID generation applies only to Sent invoices.
You may also modify your invoice data, including the logo (to upload images, you may do so using the integrated file manager, under Settings → File Manager),in the Custom logos folder.
In the CRM settings section, you may also change the name of the lead statuses to customize your pipeline.
Macros in lead templates
You may use the following macros in the lead templates:
_DEST_NAME_
: Full name of the recipient of the email, as it is in the lead record._DEST_EMAIL_
: Lead's email mailbox._SRC_NAME_
: Full name of the Integria IMS user who sends the lead._SRC_EMAIL_
: Email of the Integria IMS user who sends the lead.
Lead activity management through emails
Integria IMS allows you to manage lead commercial activity through emails. This Enterprise feature will allow you to update the conversation between the parties and upload files to the lead automatically.
For that, an email mailbox is used as a reference, from which Integria IMS will read the messages to retrieve the information and attachments. In section E-mail settings you may see all the details about the settings of the mailbox.
This feature is used through the Reply email option available in leads. With this option Integria will send an email message adding a token of the type [Lead#35]
at the beginning of the subject of the email. In addition, when sending the mail, the address of the reference mailbox will be added in the CC
field.
That way, when a client or a sales person responds to the email, a copy will reach the reference mailbox and Integria IMS will identify the email and process it. To update the lead, the information in the body of the email will be added to the lead activity and the attached files will be uploaded to the server associating the corresponding lead.
It is very important that both your customers and business employees use the Reply All feature of their email client to ensure that a copy of the email reaches the reference mailbox in the CC
field.
Creating a lead through a web form
Using the Integria IMS REST API, it is possible to create new leads from a contact form on a website. That way, you will be able to enter the information of your leads automatically in the tool. Here is a short example of how to create a script to accomplish this task.
The following PHP code creates a form and collects the data submitted by the form. With them, it composes a call to the Integria IMS API that creates a new lead.
<?php //Config parameters $integria_url = "http://192.168.70.163/integria"; $user = "api_user"; //Get post parameters $name = $_POST["name"]; $email = $_POST["email"]; $company = $_POST["company"]; $role = $_POST["role"]; $country = $_POST["country"]; $comments = $_POST["comments"]; // Create url to call the API $myurl = $integria_url."/include/api.php?user=".$user. "&op=create_lead¶ms=".urlencode($name).",".urlencode($company).","; $myurl .= urlencode($email).",".urlencode($country).",0,0,,, ".urlencode($role).",,,".urlencode($comments).",1,0"; //Configure curl $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $myurl); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); // Send curl request and close $ret = curl_exec($ch); curl_close ($ch); ?> <h2>Integria IMS Lead form</h2> <form method="post"> Full name: <input type="text" name="name" size="35"> <br> <br> E-mail: <input type="text" name="email" size="25"> <br> <br> Company: <input type="text" name="company" size="30"> <br> <br> Position: <input type="text" name="role" size="30"> <br> <br> Country: <input type="text" name="country" size="20"> <br> <br> Comments and questions: <br> <textarea name="comment" cols="50" rows="8"></textarea> <br> <br> <input type="submit" name="submit" value="Submit"> </form>
The resulting sample form looks like the following.
Next we will comment on the code part.
The first two variables define the url where Integria IMS is hosted and the user who has permissions to use the API functions
//Config parameters $integria_url = "http:192.168.70.163/integria"; $user = "api_user";
The following assignments collect the values sent by the form and assign them to variables for later use.
//Get post parameters $name = $_POST["name"]; $email = $_POST["email"]; $company = $_POST["company"]; $role = $_POST["role"]; $country = $_POST["country"]; $comments = $_POST["comments"];
Next, a text string is created with the url that we will use to create the leads using the Integria IMS API. In addition to the address of the server and the user, the op parameters are configured with the create_lead
value that indicates the API function to use and with the function parameters.
//Create url to call the API $myurl = $integria_url."/include/api.php?user=".$user."&op=create_lead¶ms=".urlencode($name).",".urlencode($company).","; $myurl .= urlencode($email).",".urlencode($country).",0,0,,,".urlencode($role).",,,".urlencode($comments).",1,0";
An example of the result of the resulting url could be the following:
http://192.168.70.163/integria/include/api.php?user=api_user&op=create_lead¶ms=Jimmy,PFMS,Rodriguez,Spain,0,0,,,Developer,,,,1,0
Finally, the code makes a call to Integria IMS API through the PHP CURL utility.
//// Configure curl $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $myurl); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); // Send curl request and close $ret = curl_exec($ch); curl_close ($ch);//
When submitting a form such as the following:
CRM configuration and customization
In the configuration section, you will find a tab for CRM management:
Podrá activar o desactivar la generación automática de ID de factura, y modificar su estructura:
In the Invoice ID pattern field, a text string is stored that will be used as a pattern to generate the IDs. This pattern will contain a fixed part and a variable. The variable part must be numerical and work as the first element from which to calculate a sequence. The variable part will go between square brackets. The rest will be constant on all invoices.
Pattern example: 15/[1000]
In this case, the first three invoices to be generated will be 15/1000, 15/1001 and 15/1002.
Invoice ID generation applies only to Sent invoices.
You may also modify your invoice data, including the logo (to upload images, you may do so using the integrated file manager, under Settings → File Manager),in the Custom logos folder.
In the CRM settings section, you may also change the name of the lead statuses to customize your pipeline.