Page tree


Next you will find useful to know information about the usage and limitations of the Secutix-Salesforce connector.

Content table:


Using the Cloning button with Accounts, Contacts and PersonAccounts

Cloning Contacts, PersonAccount and Accounts is perfectly possible, but an aditional action is required from the user in order to avoid inconsistancies in the relation between contacts in Salesforce and those in SecuTix. It is important to remember, just after clicking on the Clone button but after saving the new contact, to delete Sync Id (also Sync Mailing Address ID and Sync Other Address ID if present). Failing to do so will create two contacts in Salesforce linked to the same one in SecuTix, casusing inaccuracies and possible data loss.

(in this picture of the cloning popup, marked in yellow are the fields that must be blank before proceeding)

Secutix enumerated fields

Some fields that in Salesforce accepts as an input any text, in Secutix are limited to a centain set of values. Namely, these field are Title (for Contact and PersonAccount) and the different addresses Country field.
To avoid synchronization errors, some considerations are to be taken into account.
For Title field only valid values will be sent to SecuTix. This doesn´t mean that you cannot enter any value in this field, but it won´t be saved in SecuTix unless it is a recognized value. In case it is not, SecuTix will save a default UNDEFINED value in the field. In any case, the original text will persist in Salesforce. For example, if for a Contact in Salesforce we set the Title to His Majesty (not recognized value in SecuTix) it will be saved in Salesforce, but in SecuTix we will see 'Undefined'. This 'Undefined' value will not be sent back to Salesforce from Secutix later, in order not to override any other possible vlue there might already be, unless it changes to some different and valid value. Valid SecuTix values for this field are: 'MISS', 'MRS', 'MR', 'MR_AND_MRS', 'UNDEFINED', 'LADIES' and 'GENTLEMEN'.
For the Country field, SecuTix recognizes the ISO 3166 list of 2-char country codes. Setting these fields to any other value will cause a syncrhonization error. For the full country code list, please refer to the Alpha-2 column found in this link: https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes.


Picklists

Next releases of the SecuTix App will include pre-defined picklists with the possible values that SecuTix recognizes as valid for certain fields. This way, a Salesforce user may change the default fields associated to these values from an open textbox to this given picklists in order to avoid the potential problem of entering a value not accepted by Secutix. Currently, these picklist will cover the fields Title, Country and Gender (custom field).


Debug file storage

When SecuTix App is running in 'debug mode', text files will be saved with all the relevant debug information on the synchronization process. Although the file size is quite small (50k per document), this will count against the organisation maximum storage for files, because of what it is strongly recommended for user of this 'debug mode' to delete such files once they are no longer useful.


Deletion and deduplication

Contact deletion synchronization between SecuTix and Saleforce is not currently supported. To totally avoid the possibility of a contact deleted in one of the platforms to be created again by an update in the other, said contact has to be deleted in both platforms.
In a similiar way, in both SecuTix and Salesforce we have a way to detect and eliminate potential duplicates. However, as this deletions are not synchonized, this de-duplication processes should run in both platforms to ensure this duplicities are fully eliminated.


One-way sync fields

In general terms, contact synchronization between SecuTix and Salesforce is bi-directional, as changes in any of the platforms will be reflected in the other one. However there are some excetions to this rule, as several fields will be only be synchronized from SecuTix to Salesforce and not in the other way around. Currently, this one-way fields are limited to Opted Out Email (boolean) and any custom fields added in Salesforce by the users.


Custom Settings

Salesforce SecuTix App includes a custom setting object in order to store the necessary configuration for the connection with SecuTix. This custom setting have the fields:

  • Endpoint: url with the SecuTix instance to be synchronized.
  • Username: SecuTix virtual operator used for the synchronization.
  • Password: password for the virtual operator.
  • Activate Debug?: Activate to generate debug files with information about the synchronization process.

From the SecuTix Setting tab in the App, we can fill this values, however note that, for security reasons, saved values are not displayed there once they are saved. So, in order to check the actual configuration, we must go to Setup -> Custom Settings -> click 'Manage' for the object named 'Setting' with Namespace Prefix 'secutix'.

(SecuTix settings screen. See how, even when the textboxes appear empty, we can find the actual values in the setup screen pointed out above)


Mapping language and custom fields

Although it may looks tricky at first sight, the mapping language used in SecuTix App is actually a very simple and quite flexible tool that allow us to cherry-pick the values of SecuTix objects (Individuals, Structures, Addresses...), modify them to some extent (concatenation, negation), and plug the result to a given Salesforce field (standard or custom).


How to create new mappings:
The App comes with a full built-in set of mappings for all the standard fields. For any other custom field that we may want to add and synchronized from SecuTix, we will have to create a new 'Mapping Field' in the correspondant 'Mapping Object' of type 'Secutix to Salesforce'. Every Mapping Object have a Secutix Object Name, which is the entry point from where the mapping language will start looking the selected field.
Mapping Object are composed of Mapping Fields. Every Mapping Field has two important values: Secutix Attribute Name and Salesforce Attribute Name. The latter is just the name of the field in Salesforce as it is displayed to the user. There is no confussion possible filling this vlaue as we will be promted witha list with all the valid possibilities, so we only have to choose one of them.
Secutix Attribute Name is where the mapping language comes into play. In order to understand how this value is built, first we have to be familiarized with SecuTix the contact data model used in the Open Platform and its web services (found here: https://secutix.pos.secutix.com/tnco/apidocs/ContactInformationPublicService_latest.html ). The Secutix Attribute Name have one or more parts separated by '/'. For every part, a field will be searched with that name in the current object, starting from the entry point for the current Mapping Object. For example, if we are creating a Mapping Field to save the first name of an individual, we will do it in Contact Mapping Object, and the Secutix Attribute Name will be: 'IndividualContact/individualFirstName'. Why?
This is because the root object in this case is Contact. Looking at the data model, we can see how Contacts in SecuTix may contain information of an IndividualContact or a StructureContact, but we want the individual name, so the first part of the mapping. The second part indicate which precise field we want from IndividualContact. Should we have wanted the structure name, the mapping would have been 'StructureContact/structureOfficialName'.
These are the basics for the mapping language, but there are more advance options described below.

Other possibilities of the mapping language (TO-DO):

  • Filtering
  • Index selection
  • Concatenation
  • Negation


Interface parameters

With the same mapping language described above, there is also the possiblity to read values from the interface configuration in the form of Interface or Custom Parameters. To do so, the Secutix Attribute Name must be in capital letters, its first part must be PARAM followed by '/', and the second part must match the name of the paramenter we want to use here. This is by default used for the Record Type in both Accounts and PersonAccount objects, but it may be used with any other interface parameter. Below you may find the names of the current standard parameters of the interface: (TO-DO)


  • No labels