Hello world! Welcome to WordPress. This is your first post. Edit or delete it, Read More → kobi September 2, 2022 1 Comment
Uncategorized Quasi distinctio molestiae quibusdam excepturi quia accusamus Molestias et omnis ex. Corrupti aperiam dolor sed vel veniam praesentium sit. Read More → kobi April 28, 2020 No Comments
Uncategorized Optio cum asperiores vel Id ut ratione porro sed rem ipsa sit A voluptatum in et Read More → kobi April 28, 2020 No Comments
Telephone This controller is available only in the HTML template. Types and Validation A telephone type controller allows typing in fixed and mobile phone numbers by default. On this screen you can change the default and allow mobile or fixed only. The control does not accept non-numeric characters. Conditional permissions When checking conditions on a telephone type controller, the following options are displayed: EmptyIf the telephone controller has no value.Not EmptyIf there is any value in the telephone controller.EqualIf the telephone controller is exactly equal to the entered value.ContainsIf the telephone controller contains the entered value.
Basic HTML and Hybrid template Show form before submissionWhen selected will allow the end user to view the details of the form in final PDF format before submission.Use this option if there is a legal obligation to show the client the form (usually statutory) before sending.Default: UnselectedPost form button textAllows to enter different text for the submit button in the form. Default: Submit FormNext page button textAllows to enter different text for the next button in the form. Default: NextPrevious page button textAllows to enter different text for the previous button in the form. Default: PrevSelect or enter new tagAllows to select an existing tag or enter a new tag. Entering tags in this field will display the tags in the “Templates” screen. So that it will be possible to search by tag and to view all templates with the same [one or more] tags. CategoriesAllows to associate a template with an existing category. For more information see “Categories” section. PDF template Post signed PDF to clientWhen selected will allow the end user to enter a valid email address in order to receive a signed copy of the document. Default: UnselectedMandatoryAppears when “Post signed PDF to client” checkbox is selected.When selected will require the end user to enter an email address in order to send the form.Default: UnselectedSelect or enter new tagAllows to select an existing tag or enter a new tag. Entering tags in this field will display the tags in the “Templates” screen. So that it will be possible to search by tag and to view all templates with the same [one or more] tags. CategoriesAllows to associate a template with an existing category. For more information see “Categories” section. See below an example of selected “Post signed PDF to client” field in the form: Client forms configurations OptionDescriptionAppearance OrderSet order of transaction appearance in client forms. Inputr accept number between 1 to 100. The lower the number is it will be displayed higher in the list of transactions.IconSet Icon for button that opens the transactionIcon/Button textSet text to button that opens the transaction
Safe Select FieldsSelect input fields from the template to save.Select parametersSelect parameters to save. In the example below “Full name” and “ID” fields from the template and “”Parameter1” are saved. Analytics In the Analytics section, you can select these parameters in the filter and perform a search by a specific value. For more information see “Analytics” section. Processes In the Processes window saved parameters are shown under “Vault Parameters” section: It is recommended to change the ID of the saved parameter field to any clear and unique value before the run, so it will be easy to distinguish it from others. When exporting data to the Excel file saved parameters will be shown under “vault” column: For more information about “Processes” window read here.
Getting Started Hello and welcome, we are happy to introduce you with Cellosign, First let’s get the basics. What is Cellosign? Cellosign is a data collection application which can help you easily and securely collect data in shape of forms. From the end client point of view this is as simple as form where pieces of data are injected into, validated and submitted. Cellosign is able to collect and validate data in any conceivable method, as simple as make sure that ID number is correct or with complex cases validating data with remote application to ensure data integrity. But wait there’s so much more.. With Cellosign you will be able to easily configure a complete journey that involves multiple recipients along the way. For example a journey that starts with a remote-client, continue to back office for further inspections can be automated with simple as drag and drop and clicks. Cellosign is easily integrated with 3rd party applications through APIs and Application connectors to GET, UPDATE, CREATE or DELETE data records in a remote source. Where do I go from here? We strongly advise you to read the documentation within the Getting started guide, it includes important information regards getting support, best practices that can get you up to speed with no hassle. Next, for your convenience, our documentation is organized by User Application components, so just pick up the documentation according to your role and your tasks. Articles Best practices Change management How to contact Cellosign support Login Send a form Screen sharing Best practices Security first Regardless if you are using Cellosign builtin login or your organization Single Sign On application, keep your password safe: Do not use passwords or tokens that were not granted to you. This is strictly prohibitedDo not leave notes with password on your deskKeep your password easy to remember and hard to guessIf you have a slight suspicious that something is wrong, logout immediately, report your manager and Cellosign support for immediate response Testing new business processes It is recommended that new or changes to existing business processes will be carried out at pre-production environment rather than production. This will help you to develop the process in a secured and controlled environment with no client access and no disruption to production environment. Every type of business process and it’s related meta data can be easily exported from pre-production and uploaded to production when testes are completed. Change management New releases are distributed every other month in according to yearly plan that takes into account holidays and peek times such as end of Quarters and end of year. On Cellosign cloud application typically new releases are distributed to production occurs at Thursday night. There are also reserved time slots for distribution for on premise clients. Please make sure to read full cycle practice, schedule and change logs in this documentation branch. How to contact Cellosign support Cellosign customers have the option to contact Cellosign support by submitting a ticket using our web form. Important: in case of critical production issues open a ticket and contact your account manager / support by phone. What kind of issues can be submitted: General Support issues. Reporting a bug. New request or CR. Note: in our FAQs section you can find detailed information about common issues. There are several options to submit a ticket. In case you can login to Cellosign application the options are: From “Processes” screen (recommended). From main application menu. In case you cannot login, contact Cellosign support from the web site. See below a detailed explanation of each option. Contact Cellosign support from “Processes” window Login the Cellosign application. Navigate to the “Processes” window. Select the transaction from the list and press “Show Transaction Details” (+). Click “Service call” button. You will be redirected to “Request for support and reporting service” form. Add the details and send the form. Please describe a complete scenario and add as much information as possible. The ticket will be opened automatically with all the attached to the form information. You will receive an email with the ticket number and all the details to the email address filled in the form. To update the ticket or add an additional information click the link in the received email. You will be redirected to the ticket details in the support site. If, for any reason, you have lost access to your Cellosign account, you can still submit a support ticket from the web site (see below). For more information about “Processes” window read here. Contact Cellosign support from the application Login the Cellosign application. Click “Service call” button at the left bottom corner. You will be redirected to “Request for support and reporting service” form. Add the details and send the form. Please describe a complete scenario and add as much information as possible. The ticket will be opened automatically with all the attached to the form information. You will receive an email with the ticket number and all the details to the email address filled in the form. To update the ticket or add an additional information click the link in the received email. You will be redirected to the ticket details in the support site. If, for any reason, you have lost access to your Cellosign account, you can still submit a support ticket from the web site (see below). Contact Cellosign support from the web site Navigate to Cellosign site. Click “Support” button at the top menu at the right. You will be redirected to “Request for support and reporting service” form. Add the details and send the form. Please describe a complete scenario and add as much information as possible. The ticket will be opened automatically with all the attached to the form information. You will receive an email with the ticket number and all the details to the email address filled in the form. To update the ticket or add an additional information click the link in the received email. You will be redirected to the ticket details in the support site. For detailed information about “Privacy statement” read here. Login Connect to the representative interface page using the URL provided to you by Cellosign: 2. Enter your user name and password and click the ‘Sign In’ button. If its the first time you are logging in , you will need to set a new password: Enter a new password on the ‘New password’ field and again on the ‘Confirm password’ field. Click the ‘Change Password’. After the successful login in the header of the interface you can see the user name, where under it you can find Profile details and Logout option. To send a form to the client from the agent’s interface, press the “Show Agent” button. For a detailed explanation about user application read here. Send a form To send a form to the client from the agent’s interface, press the “Show Agent” button at the top of the screen and select a form prepared for you from the list. For more information about forms templates read here. Enter the client’s email address or mobile phone number at the top of the screen and press “Connect” button. At this point, when the client opens the link from the phone message or the email, you can both work together on the form. Visit Screen sharing section for more information about the screen sharing option. When the client sends the form (after all the mandatory fields have been filled in) you will receive the signed form by email. For additional information about how to send a form in Cellosign application read here. Screen sharing Cellosign system allows sending a template to the client and creating a common interface (client and agent) for filling out a common template. The interface allows the agent to view the values entered by the client and the client to view the values entered by the agent in real time. Each of them (agent, client) can add values according to the editing and viewing permissions given in the template. The screen sharing option can be implemented in two ways, through the Show Agent interface or Processes interface. In the Show Agent interface, the option exists by default and under the following conditions: Agent has sent the template (a timer indicator will appear next to the target box for sending the template). Client opened the link sent to him (a green indicator will appear at the bottom of the screen at the agent side in real time). If both conditions are met, you can use the screen sharing option. For more information about Show Agent interface read here. In Processes interface the option exists in the actions screen under the specific transaction. Press “+” next to the transaction that need to share: After it press “Show Agent” button to open the transaction from the agent side: Note: In Processes interface users with organization manager or project manager privileges can also open a client screen by pressing “Show Client” button and view or edit the template with client permissions. For more information about Processes window read here.
Best practices Security first Regardless if you are using Cellosign builtin login or your organization Single Sign On application, keep your password safe: Do not use passwords or tokens that were not granted to you. This is strictly prohibitedDo not leave notes with password on your deskKeep your password easy to remember and hard to guessIf you have a slight suspicious that something is wrong, logout immediately, report your manager and Cellosign support for immediate response Testing new business processes It is recommended that new or changes to existing business processes will be carried out at pre-production environment rather than production. This will help you to develop the process in a secured and controlled environment with no client access and no disruption to production environment. Every type of business process and it’s related meta data can be easily exported from pre-production and uploaded to production when testes are completed.
Show Agent From this window Agent can run already existing template or create Ad-Hoc form with PDF file with or without recipients. Select form to get startedSelect the existing template from the list to be run. Only published templates will be shown in the list.For additional information about templates read here.Enter number or email Add phone number of the client or email address where the client will be able to open the form and add the relevant details.Note: in the template without recipients, when entering the email, a copy of the form will be automatically sent to the client after completion.ConnectPress Connect button to send the form to the client.Client TextAdd the text that will be sent to the client in the message with the link to the form.Client CopyAdd the email address where to send the copy of the form after completion.Upload FilePress the button to create an Ad-Hoc form. See below for more details. Select TemplateSelect the existing template from the list to be used. Only PDF published templates will be shown.DescriptionAdd the description of the form. By default selected template name will be added.Recipients sequenceMark the check box to add recipients to the form. See below for more information about recipients parameters.Attach file and postUpload PDF file by pressing “Choose file” button and selecting PDF file location. After uploading PDF file the form will be opened. Press “Add Fields” button to add controllers. The following controllers can be added to the Ad-Hoc form: SignatureThis controller collects client graphic signatures. Signatures are embedded into the signed document in a way that it associate the signature with the signer.TextThis controller allows to add any text to the form.Signature & SealThis controller allows to combine a signature with the embedded company information.Add fileThis controller allows uploading files of any type, unless limited by file type.Add ImageThis controller allows uploading image files only. For additional information about controllers read here. For each controller it will ask to select who is allowed to fill the field, whether it is required or not, background color [for signature, text and signature & seal] or display name [for file and image]. Example of image controller settings: When the form creation is completed add phone number or email address of the client and press Connect. Timer will be started. Once the client opens the form the green indicator will appear at the bottom of the screen at the agent side for a short time. At the end of the process after the client completed and submitted the form the green indicator will appear at the bottom of the screen at the agent side for a short time. Recipients When the “Recipients sequence” check box is selected the following fields will be shown: Recipient NameAdd the name of the recipient. Default: recip1, recip2 etc..Recipient DestinationAdd phone number or email of the recipient. When added it will be automatically copied to the destination fields [see example below]. Not mandatory, can be added or changed later.Message to recipientAdd the text that will be sent to the recipient in the message with the link to the form.Authentication requiredWhen selected the recipient will be asked to perform the authentication.AddPress Add button to add more recipients. When adding controllers it will ask to select which recipient is allowed to show or edit the field. For more information about recipients read here.
Change management New releases are distributed every other month in according to yearly plan that takes into account holidays and peek times such as end of Quarters and end of year. On Cellosign cloud application typically new releases are distributed to production occurs at Thursday night. There are also reserved time slots for distribution for on premise clients. Please make sure to read full cycle practice, schedule and change logs in this documentation branch.
ID Number This controller is available only in the HTML template. Types and Validation In this controller the “Israeli ID” is selected by default in the Builtin Types section. Validation of the field will be performed according to the ID format. Field’s value Must beTo Value in This fieldThe controller will verify if the field value meets a condition against other number fields in the form.Error Message InvalidIf an invalid value is entered, the form will notify the client by default according to the control type, for example “Data is invalid”. Insert an error message that will be displayed instead of the default.Error if no value enteredIf no value was entered to the field, the form will notify the client by default according to the type of controller, for example “Missing signature”. Insert an error message that will be displayed instead of the default. Conditional permissions When checking conditions on a ID number type controller, the following options are displayed: Grater thanIf the ID number controller is greater than the entered value.Less thanIf the ID number controller is less than the entered value.EqualIf the ID number controller is exactly equal to the entered value.Not equalIf the ID number controller is not equal the entered value.EmptyIf the ID number controller has no value.Not emptyIf there is any value in the ID number controller.
User Application The user application is the user’s main entry point to the application. At the far left is a navigation bar to the various pages in the system. [See below detailed explanation for each page]. Dashboard Processes Projects Intergrations Analytics Users Templates Workflows Transactions File Data sources In the header of the interface you can see: Show Agent button that opens the agent window for running forms. Project to which the user is currently connected. User name, where under it you can see the user profile and the logout option. For more information about Profile click here. At the left bottom corner there is a Service call option to contact Cellosign support: Articles Dashboard Processes Projects Integrations Analytics Users Templates Workflows Transactions File Data sources Dashboard SentAll the forms that were sent to clients in last 24 hours.ViewedAll the forms that were viewed by clients in last 24 hours.WaitingAll the forms that are waiting for clients in last 24 hours.SubmittedAll the forms that were viewed by clients, completed and submitted in last 24 hours.ExpiredAll the forms that were not completed and expired in last 24 hours.FailedAll the forms that were failed in last 24 hours. Under each section it is possible to perform search, filter by user and see the details of each transaction. Show Agent From this window Agent can run already existing template or create Ad-Hoc form with PDF file with or without recipients. Select form to get startedSelect the existing template from the list to be run. Only published templates will be shown in the list.For additional information about templates read here.Enter number or email Add phone number of the client or email address where the client will be able to open the form and add the relevant details.Note: in the template without recipients, when entering the email, a copy of the form will be automatically sent to the client after completion.ConnectPress Connect button to send the form to the client.Client TextAdd the text that will be sent to the client in the message with the link to the form.Client CopyAdd the email address where to send the copy of the form after completion.Upload FilePress the button to create an Ad-Hoc form. See below for more details. Select TemplateSelect the existing template from the list to be used. Only PDF published templates will be shown.DescriptionAdd the description of the form. By default selected template name will be added.Recipients sequenceMark the check box to add recipients to the form. See below for more information about recipients parameters.Attach file and postUpload PDF file by pressing “Choose file” button and selecting PDF file location. After uploading PDF file the form will be opened. Press “Add Fields” button to add controllers. The following controllers can be added to the Ad-Hoc form: SignatureThis controller collects client graphic signatures. Signatures are embedded into the signed document in a way that it associate the signature with the signer.TextThis controller allows to add any text to the form.Signature & SealThis controller allows to combine a signature with the embedded company information.Add fileThis controller allows uploading files of any type, unless limited by file type.Add ImageThis controller allows uploading image files only. For additional information about controllers read here. For each controller it will ask to select who is allowed to fill the field, whether it is required or not, background color [for signature, text and signature & seal] or display name [for file and image]. Example of image controller settings: When the form creation is completed add phone number or email address of the client and press Connect. Timer will be started. Once the client opens the form the green indicator will appear at the bottom of the screen at the agent side for a short time. At the end of the process after the client completed and submitted the form the green indicator will appear at the bottom of the screen at the agent side for a short time. Recipients When the “Recipients sequence” check box is selected the following fields will be shown: Recipient NameAdd the name of the recipient. Default: recip1, recip2 etc..Recipient DestinationAdd phone number or email of the recipient. When added it will be automatically copied to the destination fields [see example below]. Not mandatory, can be added or changed later.Message to recipientAdd the text that will be sent to the recipient in the message with the link to the form.Authentication requiredWhen selected the recipient will be asked to perform the authentication.AddPress Add button to add more recipients. When adding controllers it will ask to select which recipient is allowed to show or edit the field. For more information about recipients read here. Shared dashboards It is possible to add new dashboards by clicking Add -> Create new dashboard. Add the name of the dashboard and select the users’ permissions radio button. Note: Shared dashboards feature requires activation. Please contact your CS contact for activation. Without the activation only dashboards for personal use can be created. Personal useThe dashboard will be shown for the personal use only of the user that created it.Shared with all project managersThe dashboard will be shared with all the users with the project manager permissions under the same project.Shared with all organization managersThe dashboard will be shared with all the users with the organization manager permissions under the same project.Shared with all project usersThe dashboard will be shared with all the users under the same project: users with the organization manager permissions, project manager permissions and agent permissions. Click the “Add Widget” and select the widget from the list. Selected widget will be automatically added to the dashboard. Each widget has it’s own settings that can be edited by clicking the gear icon. The widget can be removed from the dashboard by clicking the trash icon. Press Save button to save the dashboard and Delete button to delete the dashboard. The owner of the dashboard can edit it by clicking Edit button or clone the dashboard by clicking Clone button. Users that are not owners, but have permissions to use the dashboard can add it by selecting from the list and hide or clone the dashboard by clicking proper buttons. About To Expire This section allows you to see all the transactions to be expired. Search options It is possible to perform search or filter by expiration time. Default: 48 hours. At the end of each line there is a menu with additional options. Extend validity Press “Extend validity” to extend the expiration time of the form. Reminder In order to send reminders to the client select “Reminder” in the additional options menu. Add new destination or select an existing destination, add the message and press “Confirm” button. Show Agent Press “Show Agent” to open the transaction from the agent side. For more information about “Show Agent” read here. Show workflow This option will appear only for the workflow and for the template with recipients. Select “Show workflow” from the list to see the workflow status. Delete In order to delete the transaction from the list press “Delete” in the additional options menu. The confirmation message will appear for approval. Waiting For Me This section allows to see all the transactions that are waiting for the user that is logged in to the system. At the end of each line there is a menu with additional options. Show Client Press “Show Client” to open the transaction from the client side. Show workflow This option will appear only for the workflow and for the template with recipients. Select “Show workflow” from the list to see the workflow status. Delete In order to delete the transaction from the list press “Delete” in the additional options menu. The confirmation message will appear for approval. Initiate New Process This option allows you to run existing published templates from the dashboard. Select a template from the list and press Send. The template will be opened at the Agent screen. Add phone number of the client or email address where the client will be able to open the form and add the relevant details. Press “Connect” button to send the form to the client. For more information see “Show Agent” section. Initiate Ad-Hoc Process This option allows you to initiate Ad-Hoc process from the dashboard. Drag PDF file to the field or upload it by pressing “click here to upload” and selecting PDF file location. It is possible to delete the uploaded file by pressing “Delete” button and add description if needed. By pressing “Send” button the file will be opened at the Agent screen. Press “Add Fields” button to add controllers. For more information see “Show Agent” section. Add phone number of the client or email address where the client will be able to open the form and press “Connect” button to send the form to the client. Processes What is a process on Cellosign? A process in Cellosign is running a template to its destination and includes the filling of the form and its sending by the customer.Running a template can be done in 5 ways: Running a template by an operating system (integration) Running a template by a system user Running a template via an external link – from a website or portal (public) With a multi-recipient process – a new process is created for each recipient in the process With a multi-templates process – a new process is created on each template in the process For every action in Cellosign there is an information line in the “processes tab”. This screen shows all the processes performed in your projects according to a section of time, with the default when entering the screen being actions created “today”. At the top of the screen: Panel for selecting a date range Free text search to find processes that contain certain text such as: phone number, email address or template A list of projects to select from in case you have more than one project If you have selected a project, you can also select a specific template An “Export” button that allows downloading all the processes selected by the searching criteria’s to an excel document Below is an explanation of the data appearing in the processes panel: At the table header, the column names where the first column # can be used for arranging the table by ascending or descending order. At the bottom of the table, the number of columns in the selected section appears, as well as a navigator that moves to the following processes. ColumnDescription#A unique number of the operation in the systemCreatedDate and time the process was created [time the form was sent to the client]ProjectThe project which the operation is associated toDestinationThe recipient of the process: usually an email address or a phone number. Note: the destination column is sometimes empty, in cases where the action was taken from an external system such as CRM or the action was taken directly from a browser and then no active sending action was actually performedAgentThe name of the agent who created the process. Sometimes when it comes from a computer creation [one created from CRM for example] the name of the system or a generic name will appearExpirationEach action created in the system has an expiration time, during which time the action will no longer be accessible to the representative and the end customer to whom the action was sent.DeletedDate and time when the action was deleted. An action will be deleted given three possible cases: – Expiration time has passed– Customer sent the form and copies were also sent to the representative and customer or/and was compiled into the operational systems– The agent or project manager deleted the processClient logged in Last date and time the customer opened the formSubmittedDate and time when the customer submitted the formTemplateTemplate nameAn indicatorGreen indicator: everything is fine – Red indicator: error on the operation [see details further down the page] Process details Clicking on the green plus to the left of the process opens the process details screen and displays the process update actions: This action will appear as long as the operation has not been deleted from the system. The buttons allow: Manual deletion of the process Open the form as client Open the form as agent Open a service call for support Bellow them, we have five panels contains the process data, detailed below: Document Displays the process IDs and form processing information. ColumnDescriptionClient View Doc Date and time when the form was viewed by the end client. Note: This is a different documentation than “client logged in”. The information indicates that the form has been fully opened in the client’s browser and that the form is ready for an update operation.Doc GeneratedDate and time of creating a digitally signed file.Doc StatusThe status of the doc created. ‘true’ if a doc was created. empty if not created yet.TokenA unique identifier of the operation in the system. Used as a unique identifier for the form sent to the client.WorkflowIf the action is part of a business process that includes several actions, this content is the unique identifier of the process in which this action is included.RecipientThe number of the recipient during the process. [if this action is part of a process]. Archive If there is a connection [integration] between Cellosign and the CRM system in the customer organization, this panel will show the details of the process archive, after the form has been sent and processed. ColumnDescriptionPostedDate and time when the archive was created (the process product is sent to the core system).Doc NumberDocument number, if received as a response from the core system in exchange for a successful archive.Archive StatusThe status of the archive. ‘true’ if a doc was created. ‘false’ if failed.Archive Failed Error The archive error as received from the core system. Mail to Agent & Mail to Client If copies of signed forms are sent to the email boxes of the organization or the client, their details will appear in these panels. ColumnDescriptionAgent/Client MailMail address of the agent/client.Note: in the template without recipients, when entering the email, a copy of the form will be automatically sent to the client after completion.PostedDate and time of sending.Post StatusThe status of sending. ‘true’ if a doc was sent. ‘false’ if failed.Note: this status indicates if the mail was sent from Cellosign but was not necessarily received at the mail address.Post Failed ErrorError description, if the error failed and was reported to the Cellosign application. Projects Cellosign is a multi-tenant application, so it knows how to handle multiple clients (projects) in a way that produces complete separation between the various projects. The advantage of a project is complete separation between users, templates, logs, interfaces, tokens and a separate repository for custom code. The disadvantage of multiple projects for the client is mainly when using functionality that is not out-of-the-box because then in fact each project manages a separate code repository. Let’s take for example a case where requests from Cellosign to SMTP or SMS server must go through PROXY. In such a case, a specific code should be written for the proxy and be duplicated and maintained for each environment separately. Moreover, the API for our interfaces include the project code in the URL, which means that the client will have to maintain several different repositories in order to communicate with the Cellosign servers. If the main purpose of the separation is for access to templates and performed actions, you can use the functionality of teams because it allows you to associate users, templates and actions to a team. Messages settings Post signed document to agentIf this option is checked, an agent that sent the action to the customer will receive a signed copy of the documents to their email address (PDF, Meta file and attached files). Archive failed messages also will be sent to this address.Default: CheckedE-mail addresses to send signed docsPermanent email addresses that will receive signed documents (PDF, Meta file and attached files) from all the templates in the system. These addresses will be added in addition to the addresses defined in the template. Archive failed messages also will be sent to these addresses.Send logs and errors to this addressPermanent email addresses that will receive system errors.Client mail to reply e-mails toCompany’s email address for correspondence that comes out of the Cellosign application such as signed copies for customers. The address is used as a reply to if the customer replies to the email.Phone number/Text that appears as the SMS senderNumber or name that will appear as a sender in messages. The text should be Latin characters only, upper case and without spaces. Security settings Allow form in IFrameWhen checked Cellosign will be allowed to be hosted as an IFrame.Origins Regex field is opened.Default: UncheckedOrigins RegexOrigins can be configured as regex pattern to adapt to one or many domains. Default is any domain.AutologinWhen checked the login to the system will be performed automatically from outside using API. Default: UncheckedPassword renewalsWhen checked all the users under the same project will have to renewal the password after X days defined in the Interval field.Default: UncheckedIntervalInterval for password renewals in days.Default: 365 Password minimum lengthDefault: 8 charsRequire at least one capital letterDefault: UncheckedRequire at least one digitDefault: UncheckedRequire at least one special characterDefault: Unchecked PolicyThere are two types of policies:– Lock: user’s account will be locked after the number of failed logins and the project manager will have to unlock the user.– Temporary lock: user’s account will be locked for X minutes and then will be able to try again.Default: LockLock account after failed login attemptsNumber of retries for user to login before the account is locked.Default: 5Account will be locked for [minutes]In case of “Temporary lock” the number of minutes to wait until the account is unlocked.Default: 5 User application logout [minutes]User application logout after X minutes if there is no activity.Default: 30 Client application logout [minutes]Client application logout after X minutes if there is no activity.Default: 30 Failure purge intervalLapse time in days until completely remove failed successful transactions after completion.Default: 7 Success purge intervalLapse time in days until completely remove successful transactions after completion.Default: 2 Press “Save” button to save the changes. Note: for users with multiple projects the restricts of security policy will apply according to the highest security measures. Brand settings Language settingsSelect an interface language. For all interfaces and applications in the project.The language is also applied to the form behaviour, left to right text and mobile view.Default: HebrewLogoUpload the company logo. The logo will appear in various forms and applications.For proper visibility, it is recommended that the logo be transparent and up to 250px in width and height.For more information about the logo appearance see below.Company nameFull name of the company for correspondence that comes out of the Cellosign application, such as signed copies for customers. Postal addressFull postal address of the company for correspondence that comes out of the Cellosign application, such as customer’s invitation email.Phone numberCompany’s phone number for correspondence that comes out of the Cellosign application, such as signed copies for customers.Website addressWebsite address of the company for correspondence that comes out of the Cellosign application, such as customer’s invitation email. Logo appearance In HTML and Hybrid templates the logo will appear in the show agent screen when starting the template along with the template name and the Start button. From the client side it will be shown when opening the form link and in the form header. In the HTML template only it also will be added to the header of the final PDF. For all the types of templates it will appear in the invitation email along with an invitation text and “Click to Fill Form” button. After the form submission the logo will be shown at the final screen with the transaction token. Session settings Allow agent to add file into sessionFor occasional operations (Ad hoc form), allow the agent to upload a PDF file.Default: CheckedAllow agent to add fields on the fly into sessionFor occasional actions (Ad hoc form), allow the agent to add fields to the form.Default: CheckedSession expiry time (days)Default timeout for actions created in the application. Select the value in days (up to 40 days).Default: 1 Note: Templates also have Expiration time settings. For more information see “Templates“AttachmentsDefault file attachment extensions for all the templates and ad hoc forms.Note: It can be overridden on the Template level.For more information see “Controller’s Editor“ MFA settings Why would I want to use this? Because user/password is sometimes just not enough. Simply put, apart from hacking methods, the weakest chain in protecting our resources is …us. We tend to leave notes with our user and password on desk, push it through emails and text apps and we keep passwords to our most valuable resources easy to guess????♂️. Case your organization deploying on Cellosign sensitive clients, employees and company data and typically it is, we strongly advise to use this feature. Case your organization is bound to GDPR, ISO/SOC or other methodologies for security regulations such as ISO-27001, you would need to incorporate this feature into your operation nonetheless. Cellosign offers 2FA as a security module that can be plugged into your tool set with a click of a button. Please consult your success contact for activation of 2FA module or post a mail to service@cellosign.com. How does it work? Once 2FA module is enabled: login to Cellosign application and click on “project settings” (you will need Administrative permissions) Click “Activate MFA” on “MFA settings” pane That’s it! Once 2FA is activated, each user associated with the project, will be compelled to go through a process of selecting default Authentication method. Pane below is used to select and configure 2FA delivery method. Select delivery method Enter corresponding email/mobile number And click “Send code” Once you received code to your email/mobile device, enter the code to complete the authentication coupling. Case 2FA method and activation needs to be changed. Login to “Profile” tab, scroll MFA section Click on “MFA configuration” Follow activation process on-screen Integrations Apps and databases connector Aside from API integrations, connector is a method in Cellosign to interact with your core apps and database with no additional code. Once Cellosign and your data source are coupled, an implementation of business processes can be carried out my mapping your data source objects (or tables) using drags and drop and clicks by, hence no code. With an integration using database connectors Cellosign is able to provide one way CRUD operations (Create, Read, Update and Delete operations) seamlessly. With an integration using an application connector, such as for Salesforce, you would be able to do the above plus the ability to trigger actions directly from your application. API Cellosign includes comprehensive set of RESTful API for both inbound and outbound traffic. The underlying concept is that the client core applications (such as CRM/ERP applications) are the system-of-proof. Meaning it is well informed by Cellosign regards business process activities. Let’s take for example an on boarding process that involves clients, back office and specialists that are attached to the process given the right conditions. Cellosign is perfectly able to report a status of each station as the process progress both by pull (querying) or by pushing it into your core app at the time of event. How does it happen? When a core application starts new business process (any) with an API call, it receives in response process keys specific to the process. Based on that set of keys, you will be able to pull data from Cellosign regards the process status. Also, if configured, our outbound API (aka webhooks) can post the data to the CRM SMTP Cellosign includes the ability to post emails to users and clients for purpose of invitations, reminders, alerts etc. On cloud installations we use 3rd party providers to post and manage email traffic. Using our integrations you are able to integrate and deploy SMTP service of your organization. Why do I need this? There are number of reasons to integrate with your organization SMTP: Emails from cellosign are posted with cellosign’s sender such as “invite@cellosign.com”. Using custom SMTP will control the sender and better service to your clients Have tighter control on outbound email traffic and content You can add as many SMTP as you need to serve as fallback. For example, assume there are SMTP1 and SMTP2 integrations. In case SMTP1 fail to respond, Cellosign will automatically try to send it with SMTP2 integration. Also see below fallback option to trigger Cellosign SMTP service in case of failure. Setting up SMTP Follow these steps to add SMTP integration: At the dashboard click integrations locate SMTP integration pane click “Add” FieldWhat it’s for?AliasProvide an alias for integrationSenderInsert name that will appear as sender on Email. sender can be formatted for RFC 5322 specifics, for example: “Your company <email@company.com>”System wide fallbackIf fallback is turned then in case your SMTP fail to respond it will trigger Cellosign SMTP to make sure your emails to recipients will be posted.HostInsert host address or IPPortInsert port. * Note that Port 25 is considered harmful and it is not supported on cloud installations.SSLSwitch SSL on or off as required by your SMTP protocolTLSSwitch TLS on or off as required by your SMTP protocolAuthenticationSelect type of authentication: Simple, SASL XAUTH2, No Auth (See below)SecretIn case od SASL select secret from “Client secret” paneUserInsert user namePasswordInsert password. In case of SASL password is produced via secret integration Save the integration and test it by entering email address under “Recipient” and click “Test”. Authentication types “Simple” use the standard SMTP protocol for Authentication and require user and pasword”Simple use the standard SMTP protocol for Authentication and require user and pasword “SASL XAUTH2” option is a secured way to Authenticate mainly SMTP requests with services such as GMAIL, Office exchange etc. To use SAL XAUTH2 option, first you will need to define the Authentication method through secret integration and then connect your SMTP resource with the authentication. Note that regardless of Authentication method, the service is integrated over SMTP protocol to post emails. “No Auth” method does not require authentication at all. Be advised that this is not a recommended approach. In case your SMTP relay has no other way to connect with authentication please make sure to whiten relevant Cellosign IPs. NOTE: “SASL XAUTH2” IS DEPRECATING. DO NOT USE THIS OPTION SMS SMS are typically used when posting invitations to clients, reminders and also as an evidence for processing at the end of client engagement. Cellosign is typically bundled with SMS out of the box service, however, in case your organization requires to explicitly integrate with your own provider you are able to easily configure top SMS providers such as: inforu, bezeq, 019 and unicell with configuration only. Case you require additional provider, let us know. Why do I need this? In case your organization requires to have tight control on outbound SMS for any reason such as regulatory, you may add your provider as plugged in SMS integration. Once done, all SMS traffic for your project will consume your integration. Note that SMS integration is deployed per project and not organization. Case you need custom integration for all your organization projects, this has to be done one by one. Also you may add as many SMS integration as you need for purpose of fallback. For example assume you have configured SMS1 and SMS2 with different providers, in case SMS1 will not respond, Cellosign will automatically fire off SMS2 integration. Note: SMS failure means that an error response received from the SMS provider. It doesnt mean if message was arrived to recipient or not. Setting up SMS integration To add SMS integration, follow these steps: At the dashboard click integrationslocate SMS integration paneclick “Add” FieldWhat it’s for?AliasProvide an alias for integrationSenderInsert name that will appear as sender on SMS. Be aware that some countries has limitations on sender name. Typically phone numbers and digits are prohibited. Please consult with your provider regards this issue.Integration providerSelect your provider from the listUserInsert user name provided by your SMS providerPasswordInsert pasword provided by your SMS provider. In case inforu provider is selceted, you also have the option to use Inforu API token authentication. Your token goes into password. Save the integration and test it by entering phone number under “Recipient” and click “Test”. SECRETS A secret facilitates an Bearer token authentication method (i.e. OAuth2) that is consumed in builtin web-hooks and with application connectors such as Salesforce. While Secrets for application connectors are created automatically, secrets for Web-hooks are required to be created manually. This is a guide for manually creating and testing your secret integration. OAuth2 Conventions With Cellosign Secrets are managed in two standard conventions that are slightly defer in implementation. Username/password [General username and password] Client ID/Client secret [Microsoft Graph Rest API] General username and password ParameterValueTypeSelect General – username and passwordurlInsert URL to post token requestGrant typeEnter the grant typeScopeinsert scope valuesUser nameInsert usernamePasswordInsert password Request example With the example above this is how the request from Cellosign looks like { "username": "Myusername", "password": "Mypassword", "grant_type": "password", "scope": "('read,write',)" } Expected response Cellosign expects at least two parameters in response: { "expires_in": 300, "access_token": "BULvsea4JtiGRiSDSJSI%3DEUifiRBkKG5E2XzMDjRfl76ZC9Ub0wnz4XsNiRVBChTYbJcE3F" } “access_token” that will be used in web hook request header for Authorization “expires_in” is a lapse time, in seconds, that the access token can be used before it is expired Microsoft Graph Rest API ParameterValueTypeSelect Microsoft Graph REST API v1.0urlInsert URL to post token requestGrant typeEnter the grant typeScopeinsert scope valuesclient_idInsert client idclient_secretInsert secret Request example { "client_id": "8e17edb9-0f05-46cc-8741-a937e351e631", "client_secret": "Mysecret", "scope": "read,write", "grant_type": "password" } Expected response Cellosign expects at least two parameters in response: { "expires_in": 300, "access_token": "BULvsea4JtiGRiSDSJSI%3DEUifiRBkKG5E2XzMDjRfl76ZC9Ub0wnz4XsNiRVBChTYbJcE3F" } “access_token” that will be used in web hook request header for Authorization “expires_in” is a lapse time, in seconds, that the access token can be used before it is expired Notes and gotchas Note the difference in SCOPE parameter value between the two methods. Cellosign will use token until the time of expiration provided for token request. When token is expired, Cellosign will initiate a request for a new token. STORAGE At the end a business process Cellosign produces number of files that can be shipped via email, API or directly to your storage. Currently we support out of the box integrations for FTP/FTPs and Google drive. Storage service can be deployed with “callback”, which means an API request will be executed from Cellosign to let you know that a storage call has been made. If you have decided to use storage integration, it is recommended to couple it with a callback webhook so you can close the gap between completion on Cellosign to acknowledge in your application. Why do I need this? There are number of reasons to integrate with your organization Storage: Occasionally business process ends up with huge and heavy list of attachments that it makes hard for an API to process massive requests You may have more options on files transformation such as the ability to compress all in a single zip archive Follow these steps to add Storage integration: At the dashboard click integrations locate Storage integration pane click “Add” Basics and storage type Insert an alias for the integration Set implicit or Explicit. Implicit means that whenever a business process is completed, this integration will fire off. Explicit means, don’t fire unless instructed. See below reference for setting up explicit/implicit Select storage type FTP or Google drive. See below reference to each type Enter relative path Apply file transformations as needed. see details below Setup callback webhook. See details in Webhook: Callback Upload file and test Configure Google drive integration First step with Google drive integration is to prepare and download your service account.1. Use Service key link to create service key at your Google Cloud Platform -> Google Drive Api -> Credentials -> Create Credentials -> Service account 2. download your JSON file with service account credentials 3. Modify default scopes case required 4. Configure path where files will be uploaded into Configure FTP/s integration Enter the following details to integrate with your FTP server FieldWhat it’s for?HostInsert DNS name name or IPPortInsert listening port. Note that we may from time to time inform, in advance, on a blockage for ports that are considered dangerous.Base pathRelative path for the files to be uploaded intoUserInsert user name to authenticatePasswordInsert passwordMax connectionsSet maximum connections allowed. This is the maximum concurrent engagement from Cellosign with your FTP server. processes will be queued as neededSSLSwitch SSL on for FTPs Explicitly/Implicitly Storage integration Storage can be setup to fire off Implicitly that means every business processes will fire this integration. For example a storage action will be executed to your when every business process within your project is completed. This is the recommended approach if indeed all your business process should end up in in this manner. However if there are different use cases, such as: separate endpoints or some business process does not need storage, it is recommended to couple your integration with a business process Explicitly. To explicitly couple a Storage with business process we purpose two options: Manually connect it to specific template(s), which means, templates configuration will include explicit coupling with your storage integration. See details below Ad hoc integration for a business process: When the integration is set to explicit, the storage pane display the integration code that can be added to create session request. Simply add the code to your request. All ad hoc integration can be add within the integrations Array Setting up storage connector Follow these steps to apply the storage integration into the template: Login to your template Select “Integrations” on the top right and then click on “Connectors” Storage can be applied to “Submit” only. Click “Add Live Connector” On source, select “Storage” On Type: select your integration [by alias] Turn it’s status to “Active” Save the connector and the template File transformations Initial set of files can be transformed with simple rules. Each rule selects some files and applies some action to selected set. It is possible to select files by tag, by content type or select all files. Initial set of files in the end of session looks like this DescriptionTagsContent typeFile with process metadatametadataapplication/jsonSigned pdfsigned_documentapplication/pdfFile attachmentsfile, attachment*/*Image attachmentsimage, attachmentimage/* Transformation examples Collect all files to zip and apply unique name Click “Add”, Select “All files” from left drop down and “Archive Zip” in drop down on the right. With only this option you will receive to your FTP file named “archive.zip” Click “Add” Select “By tag” from the left and “set name” on the right On select tag, enter “archive”. In “New template path” enter this string “{% now “Y-m-d_H-m-s” as the_time %}{{ reference }}_{{ the_time }}.zip” This parameter join the process reference id and add to it the current date time : “b7eeb82f-9aab-4dea-813c-7ba06b515867_2025-01-08_14-01-06.zip” Why this is a good option? All process product are aggregated into a single file (And not scattered) Zip ensure single commit. As oppose to separate files where 1 file can go through and the other wont Unique by date time. Reference that always exists in our output ensure that process can be located easily on our dashboards File Cleansing In the digital age, safeguarding data integrity and security is a top priority. To ensure that files uploaded by clients during data collection are free from malware and other malicious content, Cellosign has integrated advanced file cleansing technology into its platform. This integration acts as a robust layer of security, meticulously scanning every file uploaded into forms. The process involves real-time inspection and sanitization of documents, ensuring that only clean, safe files are accepted before being archived. This proactive approach mitigates risks associated with file-based attacks, protecting both users and the system from potential vulnerabilities. Beyond security, the integration enhances user trust, offering peace of mind that their data and interactions with Cellosign are handled securely. It also aligns with industry compliance standards, reinforcing Cellosign’s commitment to delivering a reliable and secure document management experience. This seamless file cleansing feature empowers businesses to collect data confidently, knowing that every document meets stringent security requirements. With this integration, Cellosign continues to set a benchmark in secure, efficient, and trustworthy digital solutions. How it works? File cleansing integration does not work by default. You will need to activate it. See “Setting up File Cleansing integration” below. Couple of points before explanation on how this works. Files and images in Cellosign retained as base64 encrypted files. They are never stored as file objects when collected from clients and users. Also when shipped to your endpoints via API (archive) files are delivered in base64 as well. Cellosign has co-browse extension, so user and an agent can sync data in between. For example client can upload a file and an agent can download it for inspection Data collected in form is preserving its state. As such files and images are stored in Cellosign DB until form is submitted or expired. Our approach for securing and validating the files is by allowing only clean filles to be uploaded into our database, while exposing as little as possible to a potential attacker. In case a file was successfully uploaded, it will be stored in Cellosign DB and be available to sync any which way, given the appropriate permissions. In this manner we are ensuring that only validated data is stored and ready to sync and distribution. What is not covered in file cleansing integration? There are a few endpoints in which Cellosign accept files and images for which File cleansing integration is not covered. All the endpoints below require authenticated user API. Inbound files and Images from your application API to Cellosign. Management application when constructing new template Agent app when uploading a PDF for ad hoc transaction Setting up File Cleansing integration To setup file cleansing integration, log in to application console and click projects page.Locate pane “Secured file upload”. OptionWhat it doesNot activatedDefaultCleansingPerform file cleansing (Recommended)DetectionPerform detection only, does not clean the uploaded file In addition please note the switch “Allow upload if service is not available” (Default to false). Because we are using 3rd party provider service for file cleansing, we need to be ready for events that are beyond our control. Having that we are leaving to your disposal the option to allow upload in case file cleansing service is not available. We recommend that it will remain switched off. Rest assure that we have taken our stand to monitor the service and take action as needed. Audit log Each file uploaded to cleansing is recorded in Audit log. Log is preserved in case of success as well as failures. Following are audit details. LabelValuesTypeSESSION_FILE_CLEANSINGSeverityMessage: successCritical: Failure.ErrorError descriptionSessionSession IdFieldField ID in a formFile nameFile name that was uploadedHash beforeHash of file prior to cleansingHash afterHash of file after cleansing.In case of success the hash may be differ in case that the actual file required cleansing. Otherwise Hash before and after are identicalis file changedboolean indication on hash before and after. False if file unchanged, True if changed.response_timelapse time from POST request to cleaning service until response or timeout SSO Cellosign has a built-in authentication and authorization system, you can also hook-up Cellosign to your SSO/Idp (Identity provider) application to provide user authentication. For that purpose, Cellosign is already equipped with SAML2/Idp integration. This integration works with any SAML applications, such as Okta or AzureAD. Why do I need this? If your organization is already coupled with Idp application then you are already managing users access to resources, in that perspective Cellosign is a service provider (SP) that can be mapped to group of users with set of permissions. The alternative is to self-manage users within Cellosign and make sure that new employee have an account with Cellosign or account is blocked on leave. In terms of Information security you can control Access, Authentication requirements with your Idp seamlessly. How it works? The goal for integration is retain users credentials in a single place, with the Identity provider (IdP), and use it in Cellosign, as a Service Provider(SP) for authentication. The way it works is that user request a resource from Cellosign application that requires authentication, such as access to template editor or initating a business process. Let’s assume this is first-time user. The process works as follow: User access Cellosign resource (through browser). Cellosign identify that the resource is coupled with your Idp Cellosign redirects the request to your Idp for authentication On a successful authentication, Cellosign will record user details such as name and email and mark user’s record as managed with Idp Once user has been automatically registered he will be redirected to the required resource Notes: Cellosign keeps some data of the user since the application requires some level of engagement such as emails, alerts and other notifications. Cellosign does not keep users password For a returning user the process is pretty much similar, instead of creating user, we are validating and updating user details. Integration strategy Clients structure with Cellosign works as follow: Organization is a top level entity Within organization we have “project”(s). Some of the resources are shared on organization level, others are project specific. Users are mostly coupled with projects, for example users from HR department requires exclusive rights to HR Business processes, Digital department requires exclusive rights as well For some users, you would like to have access rights to more then one department or even access to the entire organization resources, for example support or implementation. Integration with your Idp can work both on organization, project and users layer. See details in setup section. Setting up Idp integration To integrate Cellosign with your Idp we need to couple if both ways. Before you start, you will need to get: Cellosign domain Your project(s) in Cellosign Choose role assignment strategy. For quick starter you may choose to assign minor permissions automatically in Cellosign Step 1: Integrating Idp to Cellosign In your Idp edit the Entity ID which is global unique ID of service provider. with Cellosign the components are: https://domain/project/saml2_auth/acs/ For example assuming this is an integration with shared cloud production and your project is “digital” then your entity id would be:https://app.cellosign.com/digital/saml2_auth/acs/ Same value also goes to ACS, that is url for callback. The image on the right is taken from Azure AD for setting up Entity ID and ACS[Reply URL]. Make sure to get metadata data URL (aka federated data url) or download metadata XML file, you will need it for next step Step 2: Integrating Cellosign to Idp Follow the steps below to set up Cellosign Integration: At the dashboard click integrations locate SSO integration pane click “Add” and continue with the table below for an explanation on setup SAML2 INTEGRATION PANE FieldWhat it’s for?AliasEnter an alias for your integrationmetadataInsert url to federated data or upload XML metadata fileUse on company levelCheck if you require to use this integration in the organization levelForce authenticationCheck if you require to force this integration for authentication and disable any other typeClaimsMap user details from IdP. Claim definitions must be identical in Idp and Cellosign (Mind case sensitive). For a user friendly operation map all fields. See example on the image on the right.Role assignmentsSee details below Role assignments The steps above are bout Authentication. This step is about Authorization. There are couple of options here: This is the most common implementation. When a new user is introduced, he will be assigned with the lowest permissions or no permissions at all. The permissions level, if need to be upgraded or setup, will be controlled in Cellosign application by your admin user Another option is that the authorization will be controlled by a claim or list of groups. list of groups is useful when our users are diverse, for example user may have lower permissions on Project A and higher permissions on Project B. (Keep in mind that this permissions can be made both manually or automatically with the proper setup) For option one, select “Do not assign user role” for having no permissions at all, or “Assign default role” and then select the appropriate role. Select “Agent” for minimal permissions. For option two, you are able to: Select role from a claim Select role from list of groups For selecting role from a claim, insert the claim name. The value of the claim should be one of: “agent”: For lower permissions “manager”: for project admin “company_manager”: for organization administration For getting role from list of groups. Insert claim Insert the ID for project admins group. This id represents a list of projects in cellosign that the user will be associated with for agent permissions. for example: [“hr”,”it] Insert the ID for agents group. This id represents a list of projects in cellosign that the user will be associated with for agent permissions Note: Project names should be identical to those in Cellosign. Azure AD, EntraID Specifics Setup Azure/Entra like so: Matadata is a url starting with https://login.microsoftonline.com/ Use the claims notation as demonstrated: name, givenName, surname,emailAddress In case you require to use assignment policy per claim, set it up like so” Payment integration Before creating an integration with the Cellosign system, the integrity of the terminal must be checked against Credit Guard.Get the login information from Credit Guard and perform a terminal health check on the payment page. In order to create payment integration in the Cellosign system go to “Integrations” screen and press “+Add” under “Payment” section: Basic settings AliasAdd the alias name (any value).TypeSelect the Type – “Credit Guard MPI”.LanguageSelect the language. Default: HEB.CurrencySelect the currency. Default: ILS. Terminal settings Note: the following information must be obtained from the payment service provider. server_urlAdd the payment server address.terinalNumberAdd the terminal number.protocolVersionAdd the protocol version, default 2000.midAdd MID details. Authentication settings UserAdd a valid user name to the payment interface.PasswordAdd a valid password. Save and press “Test” button to verify connection with your payment server. For more information about the implementation of the Payment controller click here. How credit guard integration works? The integration with credit guard works in 3 steps: StepWhat it does?InitializeWhen user clicks of payment control in form this step requests credit guard for a url to display terminal in an Iframe. Note:The responsibility for logic, ui and data that included in the iframe is on the client. Cellosign has no way of managing business logic and looks.InquireAfter client confirm the transactions, Cellosign API receive a callback. This callback activate Inquire step that accept data from Credit guard.Note: Inquire response is does not include all the data from Credit guard.This step is terminating the integration with Credit guard only if the result code is not success (“000”)Data from interface will be pushed to formIn case your business case requires to stop the process at this point you will need to make sure that the result is any other than success.VerifyThis step is triggered if Inquire returns a success. It produce tokens from CG and push back to views and Archive API. Registrar of Companies integration This integration allows to validate the company ID when user fills the form. There’s a public GOV API available that exposes data of Israeli companies, including: ID, name, status etc.. Company ID validation includes two steps: creating a WebHook integration and configuring a connector from the template side. WebHook integration In order to create WebHook integration in the Cellosign system go to “Integrations” screen and press “+Add” under “WebHook” section: AliasAdd the alias name (any value).TypeSelect the type “Request when form field was changed”.Use implicitlySet the Use implicitly to ON.URLAdd the following URL:http://prod-cs-company-registry.default.svc.cluster.local/api/v1/israel_companies/form_field_change/TimeoutDefault: 30 All the other parameters should not be changed, default values will be used. Save and press “Test” button to verify connection with the WebHook server. Template implementation From the template side need to add relevant fields and change their IDs according to the table below: company_idCompany ID field – can be Text, Number or ID controllers.company_hebrew_nameCompany name in Hebrew.company_english_nameCompany name in English.company_existsCheck if the company exists. Returned values: true or false.company_statusThe status of the company. Company ID field example: Company English name field example: Go to “Integrations tab” and press “+Add Live Connector” under Connectors section: In the Source field select the created WebHook integration. Set the Trigger action on “Change” of the company ID field or use “Click” action in case of button. Map the company fields from the template. Alias will be completed automatically according to the field ID. In the client side when entering the Company ID value all the other fields will be completed automatically with the returned values from the Registrar of Companies API. For more information about templates options click here. Analytics Analytics screen allows you perform the analysis of your transactions and perform filtering by date and specific templates. In addition it is possible to save parameters and fields in the template and perform search by specific parameters and values. For more information about saved parameters and fields read here. Users Cellosign manages three types of user’s permissions: PermissionsAbilityAgentA user with agent permission can:– Access the agent interface and management interface.– Send a form or initiate a process [agent interface, dashboard screen].– View actions sent by him only.Project managerA user with this permission can do everything a user with agent permission can, plus:– View all the actions in the project in which he is set as a manager.– View and update the Project settings.– Create and update Integrations.– View Analytics data.– Create and update Templates.– Create and update Processes.– Create and update Users.– Perform Post Transactions from file.– Create and update Dictionaries [linked lists], Tables and Categories.– Create new dashboards with different widgets.Organization managerA user with this permission can do everything that a user with project manager permission can do, plus:– Create and update additional projects in the organization in which he manages.– Set up SSO integration for providing user authentication. In Cellosign, there is the option to create users and also the option to connect to Active Directorysystems, so the login process will take place as part of the corporate identification system. In case that Cellosign is connected to the Active Directory system in your organization, the creationof the user will be automatic, without the need to create the user in Cellosign as well. Users panel This panel can be used to view and locate existing users, add new users and set permissions. Search box filterAllows searching by any text relevant to the user: name, email, phone number, etcSelect Project filterAllows searching by project. Relevant if the organization has several projects“Search” buttonAllows searching after changing filters+ Add ServiceAllows adding a new service+ Add UserAllows adding a new userExportAllows exporting the list of users to the external .csv file To update a user, select a user from the list. Perform the needed changes and press “Update User” button. Add Service Service user are used for an API connection with Cellosign. Service user cannot login to UI applications and can only be used for integrations. To create Service user, login to Cellosign”, click on “Users” on left pane and click “Add service”. Enter details as instructed below. FieldDescriptionUsernameMandatory field.Enter a username in English and without spaces (recommendation to enter a full email address).*The field is case sensitive.Project permissionsMandatory field.You can define a project manager or a project agent permissions by entering the project name and automatic completion from a list.*The default for adding a new user is agent permission.EmailThe email address of the user to be used as archive default email. To reveal the Access token click on “Show token”. This will display the access token for integrations Add User FieldDescriptionUsernameMandatory field.Enter a username in English and without spaces (recommendation to enter a full email address)*The field is case sensitiveFirst NameMandatory field.You can enter a name in Hebrew or English.Last NameYou can enter a name in Hebrew or English.MobilePhone number is also used to locate the agent on the form submission screen.EmailThe email address of the user to be used as archive default email.Project permissionsMandatory field.You can define a project manager or a project agent permissions by selecting organization, project and role details from the lists.*The default for adding a new user is agent permission. At the end of registering a new user, select the “Save User” button and additional options will immediately open. For more information see “Password control” section. In order to change user’s permissions for the same project, first remove the existing permission by clicking the “Delete Permission” button. Then select the organization from the list, the project and the desired role from the options. Click the “Update User” button to save updated data if a change is made to the user’s details. Email and mobile phone The user’s email address and phone number are supported by a quick search on the form submission page. Type a part of user’s details to locate it in the list of users and send to the relevant destination, email, or mobile phone. The access to the list of users may therefore also be for you a kind of contact list for those without any specific role in your organization who may receive self-filling forms. In the list of users must only be people from your organization and not from another external source. Password control Send Temporary PasswordAllows a project manager/organization manager to create a temporary password, that can be copied and sent to the user. It will require the user to change his password in the next login.Force Reset PasswordAllows a project manager/organization manager to force the user to change his password in the next login.Block/Unblock UserBlock or Unblock user from accessing Cellosign.*If the user entered the login information incorrectly more times than defined in “Lock account after failed login attempts” under Project, his user will be blocked. Notes: password operations on user are allowed for users with manager and organization manager permissions. In case user has permissions to more then one project, the password requirements will be the strict one. for example if on project A password is limited to 5 characters and on project B to 8 characters. User will be obligated to 8 characters password. Profile In the Profile area user can view and edit his account details, change password, add the private signature, view and change his token, and configure MFA for login additional verification. Note: user details cannot be changed by the third party user and should be updated by the organization. Private signature The signature allows to input the user’s signature into the form automatically. The functionality is usually used for automatic signing of files, such as invoices or a certificate “authorized to sign” in the organization. API Show Token/Hide Token/Refresh Token will show, hide and change the token accordingly. “Open documentation page” link will open the related API documentation. MFA configuration User can configure 2-Step verification for login by choosing code destination. Templates Templates panel displays the list of templates related to the project. The page is accessible for users with “Project manager” and “Organization manager” permissions. In the header of the page there are buttons “+ Create New Template” and “Upload Template From File”. ColumnDescriptionTemplate NameIncludes the name of the template as well as categories attached to the template.Status – Publish: The form is published and can be sent to customers. – Edit: The form is in editing mode, has not yet been transferred to production, can’t be sent to customers.UpdatedDate and time of the last update of the template.Updated ByThe name of the user who performed the last update of the template. You can filter templates by using “Search by template or tag” field. Create New Template A form in the Cellosign application can be created using the following types of templates: Responsive HTML template, automatically adapted to the client’s screen and rich of display capabilities and directing the end user. For more information see “HTML template“. A template based on a PDF form that is loaded when the form is created. For the most part, the form is quite limited in its functional richness by nature. For more information see “PDF template“. A template that combines a PDF and HTML form, when the customer fills the details in HTML form and the information is embedded to the PDF form. For more information see “Hydrid template“. Add the Template Name. Choose one of the options: If you would like to create a template based on HTML experience and you do not have a file, select the “HTML Template” option. If the product should be a PDF, select the “From PDF file” option. Upload PDF file by pressing “Choose file” button and selecting PDF file location. If the product should be a combination of PDF and HTML form, select the “From PDF file” option. Upload PDF file by pressing “Choose file” button and selecting PDF file location. When you click “Save”, the template editor will open. Template toolbar Template NameTemplate Name field is editable and the value can be changed.EditPress the button to set the template in Draft status. Default state for the new created template.PublishPress the button to set the template in Publish status.SavePress the button to save the template.ClonePress the button to create a copy of the template.New created template will be automatically saved in the application.Default name of the new template: “Copy of <original name>”.DownloadPress the button to download the template. JSON file will be saved automatically in the computer location.Change underlying PDFPress the button to change the PDF file.Available only in PDF templates.Show AgentPress the button to open the template in the Agent screen.For more information about “Show Agent” screen click here.DeletePress the button to delete the template. The confirmation message will appear. To update a template, select a template from the list and click the template name. Perform the needed changes and press “Save” button. Custom CSS Disclaimer Upload Template From File This option is intended to transfer a template from one system to another, such as a test server to a production server. The file can be downloaded from a template editor before. For more information about template tools read here. PDF template It is recommended to use the PDF format only for documents that are regulatory such as powers of attorney and insurance forms. And in any case, even if the template is a PDF, it is recommended to use it in combination with an HTML template to provide a better customer experience. For the explanation about the HTML integration in PDF template read here. After loading a PDF file and saving, the application will go to the template editor screen with the template in “Draft” mode. On the right side is a list of possible controls for a PDF template and on the left side is the PDF file uploaded for the template. Click any controller on the right, drag and drop it to the desired position on the PDF. For more information about controllers read here. Clicking on the controller will move the right side to the controller editor. For more information about controller editor read here. Basic options In the PDF form the label does not appear, but a value must be entered in this field for accessibility purposes. The screen readers read the value embedded in the label for the accessibility of the form. For more details about accessibility read here. For a detailed explanation about controllers: mandatory fields, dependencies and more, read here. Position To reposition the input field on the PDF there are two options: Click on the control and drag it to the desired location on the PDF or, Click on the control and click on the “Position” tab on the right side of the screen. The “Top” and “Left” controls indicate the distance [in percent] from the top and left edges of the PDF page. To decrease or increase the input field there are two options: Click on the control on its right or bottom side and drag to fix the height or width of the input field, or Click on the control and click on the “Position” tab on the right side of the screen. The “Height” and “Width” controls, specify the height and width [in percent] of the height and width of the PDF page. Upload files and images Under the list of controllers on the right side there is an option to upload files and images: Add the Display Name: instruct client what file to upload. Select the Type of file: Image upload or File upload. Select whether the file is mandatory or not. When finished, click “Add” [green V button]. Default attachment extensions are defined in the Session settings under Projects. For more information read here. Archive Information in the archived PDF file based on PDF template is aligned to the center according to the width of the field in the form. HTML template HTML template is responsive, automatically adapted to the client’s screen and rich of display capabilities. After adding a template name and saving, the application will go to the template editor screen with the template in “Draft” mode. HTML template is built from four nested components: Page: The template contains one or more pages. Switching between the pages in the form is possible for the user using the navigation buttons at the bottom of the page. Section: Each page contains one or more sections. Row: Each row contains at least one column and up to three columns. Column: A column may contain one or more controls. At the top of the template editor is “Intro” section, that allows a Welcome message to be displayed in the form. At the bottom of the form editor is “Outro” section, that allows the completion message to be displayed to the person filling out the form. Below is an example of a template consisting of one page, in which one section includes four rows and three columns in each row. Page Template contains pages that the user can navigate through. It is recommended to use division into pages when the form is loaded with controllers, and we want to create a more pleasant experience when filling out the form. For each page in the template, you can apply a title and additional design options. To enter the page’s options, click on the margin of the page, the page will have a light green background and a panel for the page’s options will open on the right. Page titleInsert a textual title for the page.ClassUsed by developers to generate additional options in the code.Delete pageDeleting the page with all the components. Page design includes the following options: Title Background Select the color of the page title background.Title styleHeader 1 is the largest font and Header 4 is the smallest.Font colorSelect the color of the page title text.Title position “Fixed at the top” will mean that on a mobile phone the title will be pinned to the top. “Non fixed” will scroll along with the page.Show logo Set to ON to add the logo to the title.Height in pixelsHeight of the logo in pixels. Section As mentioned before, page contains one or more sections. Similar to the page options, the section also includes design options. To enter the section’s options, click on the section’s margin. The section will have a pink background and a panel for the section’s options will open on the right. Section titleInsert a textual title for the section.CLASSUsed by developers to generate additional options in the code.Delete SectionDeleting the section and its components from the page. Background colorSelect the color of the section background.Title styleHeader 1 is the largest font and Header 4 is the smallest.Font colorSelect the color of the section title text.Title BackgroundSelect the color of the section title background.IconsSelect the icon for the section title, its color and position to the right or left of the title.Search Icons [English] Search Icons [English] Allows searching by English text relevant to the icons, for example “arrow”. Rows and columns The template editor allows us to create a form that will automatically adjust to the size of the user’s screen. If we use only one column per row throughout the form the entire form, the form will be presented to the client as one column of the fields. If we use more than one column in a row, then: If the client uses a large screen such as a tablet or a desktop computer, the controls will be displayed as they are displayed in the template. If the client uses a narrow screen, for example a mobile phone, the controls in the column will be displayed in a column one after the other. Display of the form on a tablet and a desktop computer. Display of the form on a mobile phone. Intro Clicking on the “Intro” button at the top of the template entry will display the panel on the right. The “Hide Welcome screen” button will hide the rest of the parameters in the panel and will also hide the welcome screen for the client, so that the link to the form will go directly to the form itself. Hide Welcome screenWhen set to ON it will hide the rest of the parameters in the panel and will also hide the welcome screen for the client, so that the link to the form will go directly to the form itself.TitleText that appears in the title of the welcome page. The default font is H1, size and color can be edited in the text editor.Description Text that appears below the welcome page title. The default font is H3, size and color can be edited in the text editor.Start text buttonIf no value was entered the default value “Start” will be used. Outro The completion page displays an indication that the procedure has been completed successfully and even navigates it to another page such as your home site. Auto redirectIf set to ON, enter a web address to which the client will automatically redirected without going through an end page in Cellosign.Title Text that appears in the title of the Outro page. The default font is H1, size and color can be edited in the text editor.DescriptionText that appears below the Outro page title. The default font is H3, size and color can be edited in the text editor.Redirection buttonThe button to redirect to another address. If set to ON, enter a text of the redirect button and a web address to which the client will be redirected. Archive In the HTML template it is possible to hide any specific controllers from the preview and the final PDF by adding “pdf_hidden” class under the Developer tab. In this case fields with pdf_hidden class will be shown in client’s form to add the values and complete the form. But they will not be shown in the preview and in the final PDF after submission. For more information about the Developer tab click here. Hybrid template A template that combines a PDF and HTML form, when the customer fills the details in HTML form and the information is embedded to the PDF form. When creating a hybrid form first the PDF template should be created. For more information, see “PDF template“. To create an HTML template from the controllers entered in the PDF template, click “HTML Template Editor” on the top toolbar at the right side, and then click “Create HTML template”. Once clicked, all controls from the PDF template will be injected into the HTML template. Read about the HTML template editor here. Archive Information in the archived PDF file based on Hybrid template is aligned to the center according to the width of the field in the form. Controller types A template usually consists of a collection of controllers, some of which are read-only and some of which are intended for the user to enter data, upload a file, or select one or more of the displayed options. In “Controller editor” section we will describe common options for all controllers. See below a detailed explanation of each controller type and additional editor options. Controller editor In this section we will describe possible options for all controllers. For additional options for a specific controller see “Controller types“. Basic options # Controller identifierWhen adding a controller to the template, a new value is provided automatically by the system. Change the value if there is a need for integration between the operating system and the Cellosign application. In this case the controller will receive the value that will be injected into the form and Cellosign will compile the data back to the operating system with the same identifier. For more details see “Integrations”.LabelThe title of the field. This is the main instruction for filling out the field in the form. In order for the form to be accessible, a clear explanation of the field purpose must be entered. See more accessibility guidelines here.DescriptionAdditional explanation that appears under the controller.RequiredIf set to ON, the system will check that the field has a valid value when submitting the form.ShowWhether to show the field or not. Usually used together with dependencies when, for example: the field is intended for entering a TIN number and it will be hidden when the customer type is a company and displayed when it is an authorized dealer type. In this case it is recommended to set the parameter to OFF. See more details in the dependencies section below.Agent AllowedWhether the agent is allowed to edit the field in the form or not. If not, the field will be set to read-only for the agent.Client AllowedWhether the client (recipient) is allowed to edit the field in the form or not. If not, the field will be set to read-only for the client. Values & Display The options in the tab allow you to enter values for the controller according to the type of controller. For each controller its related collection of options will be shown, like list values, etc. See “Controller types” page for detailed information. Field clone allows copying the value to a field from another input field. It is recommended to use when the customer has already filled in his name at the beginning of the form. Control specific settingsSee control specific documentation for available features in this tabShow clear buttonsAllows adding the clear button [x] in the field for the client with editing permissions. Types and Validation This tab includes options for data validation and possible input types for each controller. For example, in a signature field we can choose whether it is a signature and a company seal; in a text field we can limit the number of characters to a minimum and maximum. Error Message InvalidIf an invalid value is entered, the form will notify the client by default according to the control type, for example “Data is invalid”. Insert an error message that will be displayed instead of the default.Error if no value enteredIf no value was entered to the field, the form will notify the client by default according to the type of controller, for example “Missing signature”. Insert an error message that will be displayed instead of the default. Conditional permissions This tab allows you alter user permissions given a set of conditions. For example field will be required if a client is of “Business type”. To add a dependency, click the “Add Dependency” button. Select the behaviour of the control as result of the dependency: ShowIf the dependency is met the controller will be shown/hidden to the user.RequiredIf the dependency is met the controller will be mandatory or optional.EditIf the dependency is met the controller will be in edit mode [read/write] or read only. To add condition[s] for the dependency, click the “Add Condition” button. Select the controller on which the condition will be applied and the values on which the condition will be applied. If two or more conditions are added, the dependency will only be activated if they are all met [AND]. You can add more than one dependency, all the dependencies are related to each other. The dependency that will be activated is the one that meets all the dependency conditions. Note that the first condition met will trigger the permissions. This pane allow you to reorder the permissions order with drag and drop. Conditional values This tab enables you to carry out the following settings: Clone. If assigned value as clone of another field than its value will be fetched from the field it’s pointing at. This is very useful in cases where client name needs to be collected once and paste in multiple positions. In case clone is not defined then you are able to set default value or conditional value with this pane. Default value. Set up a value for the form control that will be propagated into the control whenever new session is created Conditional value. Similar to above conditional permissions you may query other form controls and based on that set up a new value to form control. Conditional value supports: concatenation of strings and arithmetic calculations. For instance This value “=OrderSum * 0.17” will search for a value in control “OrderSum” multiply it with “0.17” and return round up number. Arithmetic are always rounded. Thus value “=textA textB 123” will concatenate values in textA, textB (given that these are form controls, if not textA and textB will be added as plain text) and append to it “ABC” given that this is not a form control. Note that the first condition met will trigger the permissions. This pane allow you to reorder the permissions order with drag and drop. Style All the options in Style tab are to design the controller, such as the Background color of the field and the Font color and choosing an icon to be attached to the field. In order for the form to comply with the accessibility standard, it is recommended not to edit and use background colors for fields and fonts and to use only the design of the template to select colors. Developer In this tab there are additional options for developers: Regex ValidationCorrectness verification in Javascript flavour. It is recommended to check the token of the regex on sites specializing in regex.CLASSAdding tags of type CLASS. The tags are attached to the input field in the HTML form in order to activate CSS and Javascript adapted to the form. See more details in Javascript under Configuration. Built-in classes pdf_hiddenHide field on PDF generation In the HTML template only it is possible to hide any specific controllers from the preview and the final PDF by adding “pdf_hidden” class under the Developer tab. In this case fields with pdf_hidden class will be shown in client’s form to add the values and complete the form. But they will not be shown in the preview and in the final PDF after submission. For more information about the HTML template click here. remove-clearPerform “page-break-inside: auto” on row. Use this class in the section settings when need to remove irrelevant blank spaces in the final PDF. Controller group It is possible to create a group of controllers with the same basic settings and conditional permissions. In order to create the group, go to the Control Group tab, under the template editor, and press the “Add Group” button. Press the Edit button and add the group name. Click on the controllers in the template to be added to the same group. They will be marked in green, and will be shown under the group in the right pane. Press the Settings button and add the basic settings and the conditional permissions that will be applied to all of the controllers in the same group. In the example below the fields ID, Email, Phone and Signature will be shown to the client and will be required and editable only when the check box is selected and the Full name is not empty. Client side before the conditions are met: Client side after the conditions are met: Note: the controller that belongs to the group will have only the label and the description parameters in the Basic settings tab. Also Conditional Permissions and Conditional values tabs will not appear. They should be defined as part of the group. Example of the Text controller that belongs to the group: Example of the Text controller that does not belong to the group: To remove the controller from the group, click on it in the template or use the trash button. The green mark will be removed from the field and it will not be shown under the group in the right pane. Note: the controllers that have been removed from the group would keep the definitions of the group after it has been deleted. In order to change or remove those definitions you would need to do it manually. Design The Design tab is divided into two parts. It is possible to choose the design that is already ready for you or to set your own style for each component in the form. Part of the parameters are available only in HTML form or HTML combined with PDF. Page design Page backgroundSelect the page background color from the palette. Additional backgrounds and designs can be applied by using CSS. See more details in “Javascript” and “Stylesheet” sections.Page Background imageSelect the background image for the page. Additional backgrounds and designs can be applied by using CSS. See more details in “Javascript” and “Stylesheet” sections. Form design Form Background ColorSelect the form background color from the palette.Default: #ffffffForm Background OpacitySelect the form background opacity: 1 is most transparent, 10 is not transparent.Show table of pagesWhen selected the table of pages with the number of fields to complete will be shown at the client side.Show template name on HeaderWhen selected the template name will be added to the form header.Text colorSelect the color for all the texts appearing in the form. Default: #555555Titles colorSelect the color for all the titles appearing in the form. The landing and the final pages get the color of the titles from this element.Default: #555555 Buttons design Buttons Background ColorSelect the buttons background color from the palette (see example).Default: #eeeeeeButtons colorSelect the buttons text color from the palette (see example).Default: #555555 Buttons design settings will be applied to all types of buttons in the form, including navigation buttons, radio buttons and check boxes. See below the example of controllers according to the design: Controllers Icons colorSelect the icon color of the controller (see example).Input background colorSelect the background color of the input field.Default Input bordersSelect the border color of the input field (see example).See “Full input border” parameter for more information about full border.Default: #555555Input borders selectedSelect the border color of the input field when the field is selected by the user.Default: #555555Labels backgroundSelect the color of the fields labels background (see example). Labels colorSelect the color of the fields labels text. See “Mandatory fields titles in red” parameter for more information about mandatory fields.Mandatory fields titles in red (Accessibility)When selected the labels of mandatory fields will appear in red and override the defaults.Default: UnselectedFull input borderWhen unselected only the lower border will be shown in the input field.When selected the input field will be shown with the full border and “Border Radius” field will appear to select the radius value.Default: UnselectedStatic labelsWhen selected the field label will be fixed above the input field even when there is no content in it (see example).Default: UnselectedFontSelect the text font from the list. The font style will be applied to all the texts appearing in the form. Default: OpenSansHebrew Note: Error messages will always appear in red. PDF form design PDF font sizeSelect the font size in the signed document. Sometimes an additional control of the font size is required. It is recommended to use the default.Default: MediumPDF font colorSelect the font color in the signed document. Default: BluePDF bordersSelect the frames color for the for all the columns in the form. Relevant for HTML format only. It is recommended to leave frames without color. It is possible to select the completed design from the “Custom theme” tab. Configuration Configuration of the template includes the following tabs: Basic configuration: show form before submission, text for general buttons, categories for the template, etc. Messages & Reminders: client messages that go out of the application, text messages and emails throughout the life cycle of the form. Workflow: multiple recipients workflow, definition of different roles in the form while everyone can have a different experience. Templates sequence: definition of a triggering action (sending another form) when this form is sent by the client. Javascript & Stylesheet: options for developers [Extensions]. Errors: definition of custom error messages. Custom PDF template: definition of a unique header and footer for PDF final form. Information Security This chapter describes information security options in the template. Also, apart from the identification options shown in this chapter, there are additional security settings under Projects. For more information read here. Activate OTP Activating this option will generate a random 4-digit one-time password for entering the form by the person filling out the form. The password will be sent to the destination to which the action was sent. In case the operation cannot be sent through Cellosign in SMS or email, it is not possible to use the OTP. Default OTP validity is 5 minutes. Selecting the OTP option allows you to set a validity between one minute and 1440 minutes (which is a day). eIDAS The eIDAS standard implemented in the template generates a log of activity in the signature fields. Every event of signing or deleting a signature is saved in the system log and exported together with the results of the operation in an archive to email or to the core systems of your organization. The sample output below is a sample of a signature deletion event: Add browser timestamp to signature field When set to ON the timestamp of the browser will be added to signature field: Clone graphic signature for approval When set to ON it will use the last signature added by the customer and insert it into the signature field for the customer’s approval. Note: Although this is a signature that requires approval, it is recommended to consult the legal department to validate the solution of the process. Combining input fields from the form to the signature field In addition to a digital signature that is embedded in the product, it is also possible to embed input fields from the form into the signature field. In this way a signed document can be presented when the signature fields contain identifying details of the client. Require password When activated the client will be asked to fill in data that was inserted by the agent into the form, for example an ID Number. To activate this option, you must select an input field from the list of fields in the form. The field label will also serve as a guide to the client regarding what to type. Expiration in hours A working assumption is that a form contains sensitive information such as personal details, photographs of sensitive documents and signatures. Each operation has a predefined lifetime, according to the following hierarchy: At the project level: valid for 24 hours [1 day], unless otherwise applied. At the template level: valid for 48 hours by default. Valid values between 1 to 960 hours. This value overrides the project default. At the operation level [in integration only] that overrides all defaults. If the form is not sent by the client, the token [the unique link to the action] will be deleted automatically after the action is expired and will no longer be accessible. The message to the customer “404”. Additional parameters Initialize controls on form loadWhen set to ON will clear all values when client opens a form. (Pre-populated values will also be cleared).Collect geolocation dataWhen set to ON will collect geolocation data. Input validation Cellosign forms comprised of various input fields, images and datasets. Some of the inputs, such as paragraph may include rich text editor features as: html, css and javascripts. In order to secure your forms and restrict inputs it is advised to use the proper data types where needed. For example, use “Number” controls instead of plain “Text” fields to ensure that number value will be collected. Use “Email” for the same reason. In addition, Cellosign template studio include rich configuration to limit the allowed input values. For example Text field includes variety of configuration options to make sure that the right data is collected. In addition, you may also use REGEX to narrow down input options even further. Read only When activated, client will not be able to submit the session. Integrations Workflows BMPN engine Drag & Drop establishment of exclusive, parallel, or dynamic business processes while integrating a round of approvals between internal and external organizational users, collecting and automatically completing data from tangential systems, creating digital forms, and driving tasks required for the business process by a representative or a core system. The process can begin from any digital point starting from the company’s portal or website of the end user (customers, suppliers, employees), web landing page, CRM, DWH, ERP systems as well as from a representative through individual or multiple sending. Workflows panel displays the list of workflows related to the project. The page is accessible for users with “Project manager” and “Organization manager” permissions. In the header of the page you can see buttons “+ New Workflow” and “Import From File”. ColumnDescriptionNameName of the workflow.CreatedDate and time when the workflow was created.UpdatedDate and time of the last update of the workflow.ActiveStatus of the workflow, whether it is active or not. The following options are available in the workflow screen: Create new workflow by pressing “+ New Workflow” button. Import workflow from file by pressing “Import From File” button. Update already existing workflow by selecting it from the list and pressing the name. New Workflow Workflow window consists of the controllers list at the left side, workflow toolbar at the bottom and parameters editor at the right side. Workflow toolbar Start BPMN from chosen start pointPress the button to start the workflow from chosen start point.Save BPMNPress the button to save the workflow.Download an image of BPMNPress the button to download an image of the workflow. SVG file will be saved automatically in the computer location.Download a .json of BPMNPress the button to download a .json file of the workflow. JSON file will be saved automatically in the computer location.Backup whole processPress the button to download a .cellosign file of the whole process. Cellosign file will be saved automatically in the computer location.Delete BPMNPress the button to delete the workflow. Confirmation message will appear for approval.Reset zoomPress the button to perform zoom reset.Zoom inPress the button to perform zoom in.Zoom outPress the button to perform zoom out. Controllers Controllers allow to create the workflow with different forms, messages, dependencies and tasks. See below the explanation of each controller. Activate the hand toolUse this controller to activate the hand tool and move the whole workflow.Activate the lasso toolUse this controller to activate the lasso tool in order to mark a part of the workflow and move it to another place.Activate the create/remove space toolUse this controller to activate the space tool in order to add or remove the space between controllers in the workflow.Activate the global connect toolUse this controller to create the connection between two controllers.Create start eventIt is required to add the start event at the beginning of each workflow as a start point.Create finish eventIt is required to add the finish event at the end of each workflow as the end point.Create formUse this controller to add a template to the workflow, select roles, insert data to the form fields etc.Create messageUse this controller to create SMS or Email messages of different types with default or custom messages.Create parallel gatewayUse this controller to create parallel tasks in the workflow. It is recommended to add this controller at the beginning of each set of parallel tasks as open point and at the end of each set as close point, so the workflow will wait for all the parallel tasks to be completed before continue. Create exclusive gatewayUse this controller to create an exclusive path of the tasks and to add conditions.Create script taskUse this controller to add scripts to the workflow.Create service taskUse this controller to add services to the workflow, like Webhook, Archive etcCreate call activityUse this controller to create a call activity. In addition a new controller can be added from another controller by clicking the relevant icon and they will be automatically connected to each other. Additional options RemovePress the icon the remove the controller from the workflow.Change colorPress the icon to change the color of the controller in the workflow.Change typePress the icon to change the type.Append typePress the icon to append the type.Append form created eventPress the icon to append the form event. For example, to send a message to the recipient. Example of the workflow Import From File This option is intended to transfer a workflow from one system to another, such as a test server to a production server. The file can be downloaded from a workflow editor before. For more information about workflow tools read here. Create start event This controller is used as a start point of the workflow with input parameters and other configurations. When pressing “Start” controller in the workflow the settings panel will be opened at the right side. General settings IdID has a unique value that is automatically generated by the system.NameDefault name “Start” can be changed by the user to another value. The name is shown under the controller in the workflow.Default start pointSelect the check box if the start point is default.Is public availableSelect the check box for public start point. Upon selecting public checkbox additional parameters will be shown. Public linkPublic link that can be copied and used for the access from the public location.Public nodeSelect the public node to which the user will be redirected after the start of the process.Authentication requiredSelect the check box if the authentication is required. Inputs settings This screen is used to add input parameters to the start event controller that will be displayed when the workflow starts and used in the following sessions and messages. Add input specificationPress “+” icon to add a new input parameter.IdID of the input parameter. The value is automatically generated by the system and is unique for the specific controller.NameName of the input parameter.SourceSource of the input parameter. TypeType of the input parameter. Default: StringDefaultDefault value of the input parameter.RequiredRequired or not. Default: No Public link screen example Create form This controller is used to create a session with a specific template and role, input parameters and other configurations. When pressing “Session” controller in the workflow the session settings panel will be opened at the right side. General settings IdID has a unique value that is automatically generated by the system.NameDefault name “Session” can be changed by the user to another value. The name is shown inside of the controller in the workflow and with a unique value it is easy to distinguish it from others.Use session as defaultsSelect the default to get the data from. In case the controller was added from “Append form” option the value will be automatically added and configured to the previous session result. It is very important to define the default when there is more than one entry to the session. For more information see “Inputs” section below.DescriptionAdd the description of the session. Inputs settings This screen is used to add input parameters to the session controller from the previous controllers or from the form. Add input specificationPress “+” icon to add a new input parameter.IdID of the input parameter. The value is automatically generated by the system and is unique for the specific controller.NameName of the input parameter.SourceSource of the input parameter. Can be any of the previous controllers or the session result from the form.TypeType of the input parameter. Default: AnyRequiredRequired or not. Default: No Example of the input parameter from the Start event: Example of the input from the previous session result: Example of the input parameter from the Form Result of the client session: Form settings TemplateSelect the template from the list of existing templates to run in the current session.RoleSelect the role (recipient) from the list that is automatically created based on the template definition.Is seal sessionSelect the check box if the session is seal.DocumentPress “Choose file” button to attach the document to the session or the link button to select the reference.Input Press “+” icon to add the fields for the template parameters.KeyAdd the ID of the field controller in the template where the value will be inserted upon running the session.ValueAdd the value that will be inserted to the template field or select it from the list of input parameters.Redirect URLAdd the redirect URL or select it from the list of input parameters.Archive URLAdd the archive URL or select it from the list of input parameters. Create message This controller is used to create SMS or Email messages of different types with default or custom text, input parameters and other configurations. When pressing “Message” controller in the workflow the message settings panel will be opened at the right side. General settings IdID has a unique value that is automatically generated by the system.NameDefault name “Message” can be changed by the user to another value. The name is shown under the controller in the workflow and with a unique value it is easy to distinguish it from others. Inputs settings This screen is used to add input parameters to the message controller from the previous controllers or from the form. Add input specificationPress “+” icon to add a new input parameter.IdID of the input parameter. The value is automatically generated by the system and is unique for the specific controller.NameName of the input parameter.SourceSource of the input parameter. Can be any of the previous controllers or the session result from the form.TypeType of the input parameter. Default: AnyRequiredRequired or not. Default: No Example of the input parameter from the Start event: Example of the input parameter from the Form Result of the client session: Message settings This screen is used to configure the kind of message, recipients, message text etc. Select the kind of the message: SMS or Email. Parameters of the window will vary according to the selected kind. Email Email message settings KindSelect the kind of the message Email for email message.SenderSelect the sender from the list defined in the system. Default: support@cellosign.comPrioritySelect the priority of the email. Default: NormalAdd recipientPress “+” icon to add the fields for the recipients emails according to the number of recipients.RecipientsAdd the email address to the field or select the input parameter from the list.Add CCPress “+” icon to add the recipients to send a copy of the email.Add BCCPress “+” icon to add the recipients to send an invisible copy of the email.SubjectAdd the subject of the emailBody templateSelect the body template:– “Invitation” is the email that will include the link of the form for the recipient to sign and complete.– “Archive to rep” is the archive email, that will be sent to the agent after the form completion.– “Signed document” is the email to the client with the signed copy of the form.– “Default” is the email that will include only the Body text.Body textAdd body text. If not added, default text will be sent.Session for invitationSelect the session for invitation. SMS SMS message settings KindSelect the kind of the message SMS for phone message.SenderSelect the sender from the list defined in the system. Add recipientPress “+” icon to add the fields for the recipients phone numbers according to the number of recipients.RecipientsAdd the phone number to the field or select the input parameter from the list.Body typeSelect the body type:– “Invitation” is the SMS message that will include the link of the form for the recipient to sign and complete.– “Inline template” is the SMS message that will include only the Body text.Body textAdd body text that will be sent in the SMS message.Session for invitationSelect the session for invitation. Create exclusive gateway This controller is used to create an exclusive gateway in the workflow with Javascript or Expression Builder conditions, input parameters and other configurations. When pressing “Create exclusive gateway” controller in the workflow the settings panel will be opened at the right side. General settings IdID has a unique value that is automatically generated by the system.NameDefault name “ExclusiveGateway” can be changed by the user to another value. The name is shown next to the controller in the workflow.Default waySelect the way where the workflow will go by default. Inputs settings This screen is used to add input parameters to the exclusive gateway controller from the previous controllers or from the form. Add input specificationPress “+” icon to add a new input parameter.IdID of the input parameter. The value is automatically generated by the system and is unique for the specific controller.NameName of the input parameter.SourceSource of the input parameter. Can be any of the previous controllers or the session result from the form.TypeType of the input parameter. Default: AnyRequiredRequired or not. Default: No Example of the input parameter from the Recipient1 session result: Example of the input parameter from the Form Result of the Recipient1 session: Condition definition When pressing the gateway in the workflow the settings panel will be opened at the right side. Press “Condition” tab to add conditions to your exclusive gateway. Expression language can be “Javascript Expression” or “Expression Builder”. Transactions File For detailed information about this section see “Post transactions from spreadsheet”. Post transactions from spreadsheet This function enable you to post transactions from data you have in EXCEL spreadsheet. This is a convenient option for mass distribution in case posting from API is not available to you. Quick brief on this function To use this option select “Transaction file” from the left menu. Select template that you would like to distribute and select template fields that you wish to inject values into’ for example client name, address etc.. Download Cellosign spreadsheet that includes structure to fill data into Update Cellosign spreadsheet and upload it back Uploaded data will be displayed and will highlight invalid data, such as incorrect email address or phone number, that needs to be fixed Fix or remove rows and post transactions Cellosign will post all transactions one by one. At the end of posting you should be receiving an email on posting completion Configure Start by selecting template from templates select box. Note: users with “Agent” permissions will get templates in status “Publish” in the list and users with “Project manager” permissions will get both “Publish” and “Edit” templates in the list. Select fields that you would like to inject values into. Filtering fields to for selection includes to options: Filter all required fields. This will display fields that are setup as “required” by default in the template By Class. This function can be very handy if you are using this function a lot. Filter by class will enable you show only fields of some attribute that are per-configured in the template. To configure a class for a template field. Go to template studio Select field you wish to apply class for and enter class name. You may enter classes as many as you wish to filter for different needs Once fields are configured are setup your Class be displayed in your filter list You may add as many templates as you wish on the configuration. This can be useful in cases you wish to post a client more than one form to fill out. So in that event, each row on your spreadsheet can be submitted to a single recipient. will see how it is done shortly. Prepare data Once configuration is done: Click on “Export transaction template”. A spreadsheet file will be downloaded to your browser. If it’s not: Check your browser for blocked pop ups and allow popups from this page Otherwise, please consult with your system administrator, as this might be an blockage on your network Open the spreadsheet and you will see the following columns. To assist you with the spreadsheet column, you can hover the column header row to reveal helper tooltip. #Column textWhat it is used for1invite_messageYou may use this to post a personal message when delivered to recipient in mail or SMS. This will override the default SMS or email configured in your template. You may leave blank.2rep_idIf left blank all transaction that are posted will be associated with your Cellosign user. If you wish to associate them with another user, you may enter his user name (email address), make sure you have the correct user name, otherwise the transaction will be blocked. You may leave blank3client_copyIn case you wish to post your recipient a copy of the final PDF you may upload here your recipient email address. However, normally when the recipient destination is an email (and not SMS), Cellosign will automatically post the PDF result to the destination email. This field is useful in case the form destination is a phone number or you wish to post the PDF result to additional destination. 4expiry_durationEach transaction that is generated in Cellosign has an expiry duration, normally 24 hours, unless configured otherwise on your template or globally withing your project settings. With this field you may override any default. The value to apply here is between 1-960 hours (that’s 40 days max). If you are not sure please leave blank, or consult with your administrator. 5@recip-1-some id..Columns that start with “@” (can be many) is the destination to send the form to. The value for this column can be email address or phone number. “-1-” in the string represents the 1st recipient for the template. In case of a workflow with many recipients, you may see “@recip-2-“, “@recip-3-” and so on, each column represents the destination of that recipient. The long string afterwards, is the template ID.Hover on the column header to see the tooltip it will show some explanation such as: “Destination back office for template Direct Debit” where “back office” is role name of a recipient and “Direct Debit” is the form name6#idColumns that start with “#” are columns for injecting data into forms. Hover the column header to show the tooltip to display the field Human name. When filling up data into these columns, make sure that data types are correct, for example in case that your template field is of type Number, the field value cannot be Text or Date. Upload Once spreadsheet is ready. go back to Cellosign configuration screen, upload the file and click “Next” Validate On next screen your data will be displayed with the entire data set from your spreadsheet. Cells with a light-red background indicate an invalid value, such as wrong email format or date field that the value assigned has incorrect format. Hover the cell to see the details regard error. In addition, you may check the switch “Alert on required fields with no value” to highlight and prevent submission where row has required field that has no value. On the left most column all rows are checked, if you wish to prevent a row from being posted, simply uncheck it. Once all errors are cleared or rows unchecked Click “Post” to send transactions file for process. Once all is done you will be receiving an email with notification on transactions submission. This email will also include an id, like this one “fd52f83a-19d4-4bce-b6f8-8dacbe90b23f”, use it to filter all the batch transactions in the transactions board. Limitations Posting transactions from file is carried out in sequence (one at a time) and may take time to complete Make sure to use Spreadsheet that was downloaded from Cellosign, otherwise it might not work correctly Although this function is available for your disposal, it is advised to use API or Connectors instead as these options are faster, cleaner and in general a superior alternative Data sources Dictionaries This screen allows you to add a “data list” manually or from a file (An excel, csv or a json) and associate the data list with a “List of values” type control while editing the template. Several data dictionaries can be associated with the same template and the same data dictionary can be associated with several templates. To create a dictionary, login to application and click “data sources” and “Dictionaries”. At the top on the right there is a button for adding a new dictionary and a button for uploading a file. You can use the upload button for loading a file for your dictionary. You can see on the bottom the explanation on every item at the dictionary table. Also, you can click on the Add button to create the new dictionary. In this case, you can add data manually to the dictionary by using the green + or use the replace and append buttons to load files to the dictionary. Here you can also export the dictionary that you are viewing/editing using the ‘Export” Button. The exported files will be on CSV format by default and on JSON format if you choose it using the arrow on the “Export” button: Here are the editing options on current dictionary (from left to right): The name of the dictionary, you can change this as needed. Save button, to save a new data dictionary or save changes to an existing data dictionary. Replace button for replacing the existing dictionary with a loaded excel or csv file Append button for adding the loaded file data to the existing dictionary Delete button for deleting the dictionary This table will explain the dictionary table: ColumnDescriptionIDA number that is automatically entered TextRepresents the text that will be shown to the client in the “List of Values” control. If you upload the dictionary from a file, the text should appear in column “A” in the fileValueRepresents the data that will be received in the archive and in the json file. Intended for cases where the text shown to the client is not the same as the text they want to receive in archive. For example, the customer will select the name of the bank in the “List of Values” control, and on the archive will receive the bank code and not the name of the bank. The value should appear in column “B” in the uploaded file.GroupRepresents a name of a group, intended for cases where you want to link several data dictionaries together. Like for example a list of cities and streets.Entering a group name that is identical in value from two different data dictionaries allows a connection in the value selected in the “List of Values” control. The figure should appear in column “C” in the uploaded file. Notes and Gotchas For security reasons some characters are disallowed. Disallowed for Text column: '<', '>', ';' Disallowed for value and group columns: '<', '>', '#', '$', '%', '^', '&', '*', '|', ';', ':', '{', '}', '[', ']', '=', '+', '-' Data Tables Think about it as a custom table hosted in Cellosign. You can customize it any way you want and connect it to template. What it’s for? Consider the option when you have large repository of texts and inputs that needs to be incorporated into business process either as initial value, as a condition to other selection or per user engagement. Up until now that way to handle this process would have required to configure fields and conditions inline the template. In case texts and inputs needs to be incorporated into large amounts of fields and templates, this can be quite tedious. With this feature you will be able to configure relational table with keys and data and use it in cellosign templates using our connector editor. This is specially become handy when you have extensive conditions to handle the texts and in case you have texts such as terms/legal that are expanded over large amount of templates, so you can keep it all in one place. Configuring data table To configure data table login to application and click “data sources” and “Tables”. Click add table and define: table name, columns as instructed on screen. Click to add rows. Eventually, you will have a data table with rows and columns. Note that “key” type columns are designated for the connector in next step so you can search matching records. Adding data and inputs to data table Let’s add some data and input elements to it. In the screen capture on the right we added: “House” as key for selection Texts with input elements to Application Additional texts for Conditions. To add input elements, simply click the icons bordered with blue. The icon on the left is a “Checkbox” Icon in the middle is text input The right most icon is Dropdown(select) input. Configure a template Lets add a new template that includes Select element and two paragraphs. Select will include values “Car” and “House”. What we require to occur is that when client selects “Car” or “House”, Cellosign will fetch via the connector the matching “Application” and “Conditions” for his selection. Switch on “Display bottom border only for input” in case paragraph includes input elements that otherwise might conceal upper text lines. Note: In order to secure your form you will be required to toggle a paragraph in order to allow parsing input elements into the form. So whenever data table data includes input for parsing, the toggle displayed on the right, must be checked. Connector configuration On template editor click integrations on top pane and then “Connectors”. In this screen you will see “Preset”, “Live”, “Submit” and “Post submit” for which our connectors will be integrated into. “Preset” is the ability to get values from the table on session initiation, requires no user intervention. “Live” will be configured when the connector require some of interaction from the user such as selecting value or click on a button. “Submit” and “Post submit” are for databases and apps such as salesforce or Dynamics [that are coming up in next releases]. To configure connector to data table click “add” on “Preset” or “Live” sections. Select data table you have configured Set status “Active” Define the lookup: keys from the data table [one or more] Equation [for data table equal only is applicable] To which entity to compare with: form field value, label [integration] or fixed value Add conditions as many is needed for the lookup Define what happens if query return no results, one or more than one result On “Live” you will need to configure how the connector is activated on “Change”: As the user types in. Select the field from the list to attach the connector with on “Click”: select a button from the form that will activate the connector Finally map the query result into the form fields. which value from data table goes to which field in form Demo For your convenience, this is a demo form already setup with the example above. Categories Categories are an easy way to sort our business processes into groups. We can relate any template or BPMN process to a category. First we will see how to create categories and then we relate our templates and BPMNs to the categories. How to create a category? To create a new category, login to application and click “data sources” and “Category”. Click Add category: TBD
Messages & Reminders Email address to post when process is completeAdd in this field permanent email addresses to which a copy will be sent at the end of the process.Description Description of the template in the dashboard screens. The text can contain dynamic data from the form. Click “@” to select an input field.Date filter Select a field from the form to display in the dashboard screens.SMS text message when open a linkText that will appear in the phone message to open the form. A link will be automatically added to the text.SMS text when process is completeA text message that will be sent to the client at the end of the process. Click @ to select an input field from the form. So the message to be sent can contain personal data such as: “Hello Israel, we received the form…”.Select SMS destinationSelect the destination of the SMS that will be sent at the end of the process, based on the data from the form.Default: Current destinationInvitation Email subjectText that will appear in the email subject to open the form.Invitation email bodyText that will appear in the body of the email to open the form.Email subject for copyText that will appear in the email subject at the end of the process (copy to the client). The text can contain dynamic data from the form. Click “@” to select an input field.Email body for copyText that will appear in the body of the email that will be sent as a copy to the client at the end of the process (signed copy).Signed PDF file nameThe name of a PDF file that will be sent as a signed copy at the end of the process. The name can contain dynamic data from the form. Click “@” to select an input field. A “#timestamp” tag can be added to the filename to make it unique.Default: signed.pdfRemind about the expiration of the formWhen set to ON the client will get a reminder about the expiration of the form.Default: OFFSend with linkWhen set to ON the reminder will be sent with the form link.Default: ONRemind before (minutes)The time when the reminder will be sent, will be calculated from the Expiration time. Default: 15DestinationThe destination of the reminder message.Default: CurrentReminder textText that will appear in the reminder message.Export XLSXWhen set to ON the XLSX file will be sent in addition to the JSON file in the signed copy email at the end of the process.Default: OFFExport data to archive emailWhen set to ON the input data from the form will be exported to the archive email.Default: OFFTitle tableTitle of the exported data table in the archive email.Select fields to displaySelect the fields to be exported to archive email.Recipient targetSelect the recipient of the exported data: agent, client or both.Default: BothShow empty fieldsWhen set to ON empty fields will be shown in the exported data table in the archive email.
Shared dashboards It is possible to add new dashboards by clicking Add -> Create new dashboard. Add the name of the dashboard and select the users’ permissions radio button. Note: Shared dashboards feature requires activation. Please contact your CS contact for activation. Without the activation only dashboards for personal use can be created. Personal useThe dashboard will be shown for the personal use only of the user that created it.Shared with all project managersThe dashboard will be shared with all the users with the project manager permissions under the same project.Shared with all organization managersThe dashboard will be shared with all the users with the organization manager permissions under the same project.Shared with all project usersThe dashboard will be shared with all the users under the same project: users with the organization manager permissions, project manager permissions and agent permissions. Click the “Add Widget” and select the widget from the list. Selected widget will be automatically added to the dashboard. Each widget has it’s own settings that can be edited by clicking the gear icon. The widget can be removed from the dashboard by clicking the trash icon. Press Save button to save the dashboard and Delete button to delete the dashboard. The owner of the dashboard can edit it by clicking Edit button or clone the dashboard by clicking Clone button. Users that are not owners, but have permissions to use the dashboard can add it by selecting from the list and hide or clone the dashboard by clicking proper buttons.
Public link While running a public link the user will be asked to add a full name, email and mobile number. In Processes screen the template that was run from the public link will be shown with the agent name “public@cellosign.com”. It is possible to run the public link with predefined values of the full name, email and mobile number, as shown in the example below: https://form.cellosign.co/public/1234567890111222333444aa555bbb12?mobile_number=0500000000&fullname=israel&email=israel@example.com In this case all the related fields in the template should be defined with proper IDs (fullname, mobile_number and email). The values will be automatically added to the form and the connect window will not appear. For more information about templates click here.
Email Email Validation Email validation will be performed according to the correct email format including “@” and “.”. For example “israeli@cellosign.com”. Validation limits Email validation is conformed to RFC 5322 which is basically composed of a string given that it includes “@” and a”.” in specific places, there are no limitations on domains and sub-domain. In case you require limitation on email addresses, consider using text field and combine with regex. To do that: Add text control Use this regex ^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+.(com|net)$ to validate an email structure that must include “.com” or “.net” extensions Customize the error message if needed Note that by using a text field you will loose email functionality such as “client copy” as described below. Values & Display While setting the “Client copy” to ON, a signed copy will be sent to the entered email address. Types and Validation Field’s equation The controller will verify if the field value meets a condition against other field in the form and it can be case sensitive or not. In case the field with compare with has no value to comparison will not occur. If comparison is required that make sure the field to compare with is required.Error Message InvalidIf an invalid value is entered, the form will notify the client by default according to the control type, for example “Data is invalid”. Insert an error message that will be displayed instead of the default.Error if no value enteredIf no value was entered to the field, the form will notify the client by default according to the type of controller, for example “Missing signature”. Insert an error message that will be displayed instead of the default. Conditional permissions When checking conditions on the email type controller, the following options are displayed: EmptyIf the email controller has no value.Not EmptyIf there is any value in the email controller.EqualIf the email controller is exactly equal to the entered value.ContainsIf the email controller contains the entered value.
Workflow In order to describe the workflow screen, consider the process of joining a new client when the joining details have to be validated by a representative in your organization (agent). When the details are incorrect or incomplete (for example: no appropriate power of attorney is attached) the agent can return the form to the client with notes. A recipient has a role in filling out the form: in the above example, the client and the agent both have roles. A person in the role of filling out the form can be a customer, a representative in the organization, an authorized signer, or the spouse of a main signer whose approval/signature is needed. Defining a role in the template enables the following capabilities: Application of a template in such a way that each role will have its permissions at the viewing and updating level, so for example we would like the client to have the option to type in an ID number and type of requested service, and the agent will only have the option to view the data without updating. Automatic sending of actions according to the sequence defined in the workflow screen and according to the conditions. Cellosign process engine makes it possible to produce more complex process logic than automatic sending, but still use the recipient’s application settings and especially the permissions provided to each recipient. Turn workflow onWhen selected the workflow will be created and each recipient will be able to fill only his designated fields.Recipient nameA name that will represent the recipient’s role.Submit orderThe form will be sent to the recipients according to the order defined in the workflow.Default userAn email address of a user in the application to whom an action will be sent. Usually this is a regular user to whom a sequence of actions reaches.Allow recipient enter address of next recipientIn some cases, we will not know the target for the next action in the sequence, such as a spouse who must also approve the form. In this field we select the input field from the form from which the value will be drawn to send to this role holder.Requires authenticationWhen selected the recipient will get a login screen to enter the application in order to verify that it is an authorized user.Activate OTPWhen selected the recipient will get one-time code to the selected destination in order to enter the application.Require passwordSelect one of the form fields as password, so only an authorized recipient will be able to enter the form by entering correct data.Read onlyWhen activated, client will not be able to submit the session. Session will be expired as usual. Make sure to use on a single session configuration or with BPMN. Note that it does not make sense to use it with a regular workflow unless the only last recipient is read only.Add RecipientClick “Add Recipient” button to add as many recipients as needed.Delete RecipientClick “Delete Recipient” button to delete recipients. Workflow conditions At the bottom of the recipients screen it is possible to add conditions in the sequence of recipients, so for example we can create an action that returns the form from the client to the agent in case the agent does not confirm the completeness of the details in the form. Select the recipient that forwards the action. Select the recipient to whom the action will go. Select the input field for the condition and its value. In the example above you can see that if the checkbox field is not selected, the action will go from the agent back to the client until it is checked. Recipients and their influence on controllers defined in the template In the example above there are two roles client and sales representative. We would like to allow the client to edit the full name field and for the sales representative to only view it and not edit it. The lower part of the controller settings is intended for appearance on the recipients’ screen: set “Show” ON for the recipients that are allowed to see the field data and “Edit” ON for the recipients that are allowed to edit the field data. Note: Regarding the “Agent Allowed” controller settings, this option is intended for a screen sharing operation and is not relevant for operations between recipients. Recipients and their influence on controllers’ dependencies In the example above we will activate show\required\enabled for the client only if a certain condition has been activated [in this example a value selected from the radio buttons list]. Dependencies can be activated for all recipients by selecting “All recipients”. Notes and Gotchas Workflow is limited to 10 recipients. In case you need to deploy a process that include more than 10 recipients you may add recipients in workflow pane, however the business process must be conducted using the BPM.
About To Expire This section allows you to see all the transactions to be expired. Search options It is possible to perform search or filter by expiration time. Default: 48 hours. At the end of each line there is a menu with additional options. Extend validity Press “Extend validity” to extend the expiration time of the form. Reminder In order to send reminders to the client select “Reminder” in the additional options menu. Add new destination or select an existing destination, add the message and press “Confirm” button. Show Agent Press “Show Agent” to open the transaction from the agent side. For more information about “Show Agent” read here. Show workflow This option will appear only for the workflow and for the template with recipients. Select “Show workflow” from the list to see the workflow status. Delete In order to delete the transaction from the list press “Delete” in the additional options menu. The confirmation message will appear for approval.
How to contact Cellosign support Cellosign customers have the option to contact Cellosign support by submitting a ticket using our web form. Important: in case of critical production issues open a ticket and contact your account manager / support by phone. What kind of issues can be submitted: General Support issues. Reporting a bug. New request or CR. Note: in our FAQs section you can find detailed information about common issues. There are several options to submit a ticket. In case you can login to Cellosign application the options are: From “Processes” screen (recommended). From main application menu. In case you cannot login, contact Cellosign support from the web site. See below a detailed explanation of each option. Contact Cellosign support from “Processes” window Login the Cellosign application. Navigate to the “Processes” window. Select the transaction from the list and press “Show Transaction Details” (+). Click “Service call” button. You will be redirected to “Request for support and reporting service” form. Add the details and send the form. Please describe a complete scenario and add as much information as possible. The ticket will be opened automatically with all the attached to the form information. You will receive an email with the ticket number and all the details to the email address filled in the form. To update the ticket or add an additional information click the link in the received email. You will be redirected to the ticket details in the support site. If, for any reason, you have lost access to your Cellosign account, you can still submit a support ticket from the web site (see below). For more information about “Processes” window read here. Contact Cellosign support from the application Login the Cellosign application. Click “Service call” button at the left bottom corner. You will be redirected to “Request for support and reporting service” form. Add the details and send the form. Please describe a complete scenario and add as much information as possible. The ticket will be opened automatically with all the attached to the form information. You will receive an email with the ticket number and all the details to the email address filled in the form. To update the ticket or add an additional information click the link in the received email. You will be redirected to the ticket details in the support site. If, for any reason, you have lost access to your Cellosign account, you can still submit a support ticket from the web site (see below). Contact Cellosign support from the web site Navigate to Cellosign site. Click “Support” button at the top menu at the right. You will be redirected to “Request for support and reporting service” form. Add the details and send the form. Please describe a complete scenario and add as much information as possible. The ticket will be opened automatically with all the attached to the form information. You will receive an email with the ticket number and all the details to the email address filled in the form. To update the ticket or add an additional information click the link in the received email. You will be redirected to the ticket details in the support site. For detailed information about “Privacy statement” read here.
Connectors Connector is a method in Cellosign to interact with your core applications and databases. For more information see “Apps and databases connector” section.
Client applications Articles Form support and accessibility toolbar Client forms Form support and accessibility toolbar Support and accessibility toolbar incorporated in all forms. The toolbar receives first focus when open a form link so screen readers can read through its content. To open the menu click the hamburger icon at the top of your frame. Accessibility features Activate accessibility option Transform inputs to valid accessible collection. Date input transformed from a date or date-time widget to manual input Signature pad will require upload a signature image rather then drawing the sugnature In addition focus on input or (Tab/Shift+TAB) between fields will draw a border on the focused input Monochrome option This option modifying colors to monochromatic that makes to contrast accessible. It is advised to use high contrast as a default, regardless if the Monochrome option is activated or not. Accessibility statement Link to our accessibility statement Assistance Download file for print This option, if activated, allow client to download a PDF file based on the data already propagated into the form. please consult with our support for activation of this feature. Privacy statement Link to our accessibility statement About View display form and client data. On some cases were client has an issue we will require this data Release: Cellosign release Token: Session ID in view Browser: Client browser Client forms Client forms is a user interface that present to a client a list of forms that needs to be filled in an organized and secured fashion. Clients receives one link against they will need to identify and authorized for access. The interface is highly customizable and include rich function customization and looks configuration to match your brand. Why do I need this? Client forms is a great way to communicate with your clients, push new forms that needs to be filled, Client can see show how much time left to complete and all in a single link and one time authentication. Setting up client forms Login to projects page and locate “Client forms” and follow the tabs to set it up. Before modifying default colors and backgrounds make sure to read accessibility section below. Background settings This setting is optional. It affect the authorization pages only. It does not propagated in transactions page. SettingHelperBackground imageClient forms ius responsive and will adapt to any device automatically. We advise to pick an image with 4 (width):3(height) proportions, it scales better.In addition, we advise to upload an image smaller than 100 KB to expedite loading time for your clientBackground image settingThere are 3 CSS settings available for your disposal, check what works best for you when device is table, mobile or desktop.Alternative textMake sure to enter a meaningful name that represents the image, typically it would be a “background image of <my brand>” Color settings Button background color and button text color All buttons on transactions view and authorization page gets there attributes from the first two color pickers. including the shading below a transaction row. The image on the right is a result of a red background and white-gray text color as configured in the image below Remember to make sure to pick colors that contrasts well. Text color Most of the texts in client forms view will pick on this color, including transactions text and hello text as can be seen in the image above. Authentication settings This tab includes a collection of settings to process the authentication stage and configuration of footer links Identification header, text, error and support text Configure texts for intro page. For accessibility compliance make sure your text are simple and direct Suppress leading zeros Client forms viewer collects all client’s transactions that share the same password, see require password for details. Occasionally the access password is a number, such as ID that has fluid representations to include or exclude leading zeros. As such when client insert the password it will not include leading zero and when the transaction is initiated from your core application it does include it. Essentially, we might end up with mismatch when client enters “7673899” as password and your DB inject “07673899”. These will never match. This is where “Suppress leading zeros” become handy. It will suppress leading zeros to match. As such “000123” is equal to “123”. Note: Be aware on what data to use for password authentication. Make sure that “0123” and “123” are not different entities. In Activate OTP We encourage you to use this option. OTP will guarantee that clients can access their transactions can do so only after we have doubled checked their identity. To apply OTP to transactions, at least one transaction that match the password will need to have an OTP associated. If there are more that one OTP address then the viewer will list the propagated OTP destinations. Footer links By default Cellosign displays links to Accessibility, Privacy and terms of use pages. Use the switch to turn off any of the links. Alternatively. You may override the defaults to include links of your own. Make sure to add valid markup and texts. i.e.: Markup to open external web address: “https://yourdomain.com” To pop up phone app. “tel:0500001234” (For mobile apps) To display only the label please enter “#” in url Transactions settings Introduction text Enter here text that will appear before the list of transactions Show validity When activated the date and time on which a transaction will be expired is displayed below the transaction button. Aggregate Enable this option if you are using business models and wish to display collections of transactions associated with business case. In the example below we have two business case aggregations and two stand alone transactions: Loan 12345-67: Has 2 transactions and is expanded Loan 456778-90: Has 3 transactions and is collapsed “Change of banking information” and “Direct debit consent” are stand alone transaction Note that stand alone transactions are displayed only after business case aggregations. Show submitted transactions and document options These options are related with data model option which is not yet released. Popup Enter title and texts (or HTML markup). The popup will be displayed after each successful login. In case you are using HTML markup make sure to test the result on different browsers. Order of appearance OptionDescriptionExpirationDefault option for order is transaction expiration. Transactions that are first to expire will be displayed first by default.Template order numberOrder is arranged by template order of appearanceTemplate nameOrder is by template name: Note that evaluation is case sensitive. “z” (small letter) is prior to “A” (Capital) Note that aggregated transactions appear prior to standalone transactions Additional control on looks Template configuration offers the option to control the icon and the text of the button that opens up a transaction. Make sure to select a proper icon and a “call to action” text Client forms security We are investing great deal of efforts protecting your and your clients data. For some of the methods we are providing the coverage. others require your attention. Following is a list of protections we have for client forms Rate limit This feature is builtin and is not optional. Rate limit prevents a client from posting too many requests for access in a given time window. The conditions of lock and release can be modified from time to time o our discretion. Captcha This feature is builtin and is not optional. Google captcha to prevent brute force Password This is a preliminary condition to access client forms. We advise to use passwords that cannot be mined such as sequence numbers. Instead make sure that the password include checksum/parity and it needs to be captured as part of the password. OTP OTP option is at your discretion and we encourage to make use of it. Auto logout on idle On idle (No use of client forms view) client is automatically logged out after 5 minutes Auto logout if no transactions left on view When completing a transaction client is be redirected to main client form view. If there are no transaction he will be automatically logged out after 1 minute Poplast option When appending ?poplast=true parameter to client forms it will automatically open a form in condition that there is only one transaction in view. Note that transaction will be displayed after authentications and regardless if there is a popup message configured. Accessibility guideline As in any other interface builder, we are making our best efforts to bring you all the goodies for collecting data and create amazing interface for your clients that reflect your brands. However this also come with a responsibility on your side. Although we are try to protect you in whatever way we possibly can to avoid accessibility errors, there are couple of ground rules to pay attention to. Contrasts Make sure that colors setting has sufficient contrasts. A button with pale background and pale text is not accessible. same goes to background image. make sure to incorporate background and colors sets that has contrast. How much contrast? check out this tester. Messages and text Make sure your messages, errors and instructions are clear and not implied. for example “Open” is better than “Transaction” as a text on a button to open new transaction.
Templates Sequence To explain the sequence of actions, consider the following example: a representative in the human resources department recruits a new employee for the position of software developer and a laptop should be issued for him. Upon sending the employee intake form, we can use this screen to send a form to an IT representative in the organization only if a certain condition is met. In such a way the data from form A will be transferred to form B without the need for additional typing. If so, form A is the form where we use templates sequence. To activate the option of templates sequence, click on “+New”. Template NameSelect a template from the list [in our example the template to send to the IT representative].Select destinationSelect destination address to which the form will be sent: – A value from an existing field in the form, a phone number or email. – Current destination: the destination to which the current form was sent, a phone number or email [in our example, the new employee procedure form]. – No destination: usually implemented by an application for field personnel.Select conditionSelect the condition (input field), if any, to activate the additional template. This field is not mandatory, so if the operation condition is not selected, it will be sent unconditionally.If equalIf the condition is selected, select the value that will be applied to the condition. In the example above, a condition will be applied to the field “Position” and the value “Programmer”. In this way we activate an additional form that will be sent to the IT representative, only if a candidate has been accepted for a programmer position. A new templates sequence can be added according to need, in a way that a separate form can reach the payroll department, etc. Note: In order for data from form A to be transferred to form B, it should be maintained that the IDs of the controllers have the same value.
How to Articles Move a process to another project Move a process to another project This page described how to move a process with all of its related elements into another project on the same environment. We will have to download/export every element separately in order to do so. (BPMN processes, templates and also Dictionaries and Tables – if we are using them on our templates) Follow the bellow steps: 1.Go to all the elements that are used on your process (BPMN processes, templates, Dictionaries and Tables) and download each one of them using the download or the export option. On a BPMN process, use this button for download: On a template, use this button for download: On a Dictionary, click on the arrow next to the export button, and than ‘Export JSON’: On a table, use this export button: 2. After you are sure that you have all the files related to you process saved on the side, delete from your current project all the data you want to move. (You can’t have identical processes/templates on the same environment) 3. Open the wanted project on the app. 4. Upload the data to the wanted project on this specific order (for remaining current connections):-Dictionaries and Tables-Templates-BPMN processes 5. Connect integrations if needed. 6. Run the all process for making sure its working as expected.
Login Connect to the representative interface page using the URL provided to you by Cellosign: 2. Enter your user name and password and click the ‘Sign In’ button. If its the first time you are logging in , you will need to set a new password: Enter a new password on the ‘New password’ field and again on the ‘Confirm password’ field. Click the ‘Change Password’. After the successful login in the header of the interface you can see the user name, where under it you can find Profile details and Logout option. To send a form to the client from the agent’s interface, press the “Show Agent” button. For a detailed explanation about user application read here.
Waiting For Me This section allows to see all the transactions that are waiting for the user that is logged in to the system. At the end of each line there is a menu with additional options. Show Client Press “Show Client” to open the transaction from the client side. Show workflow This option will appear only for the workflow and for the template with recipients. Select “Show workflow” from the list to see the workflow status. Delete In order to delete the transaction from the list press “Delete” in the additional options menu. The confirmation message will appear for approval.
Text Types and Validation MaskSelect a data entry format from the list. In this option, the controller will allow data entry only in the format selected for the controller.Starts withEnds with ContainThe controller will verify that the value entered corresponds to the settings entered and will display an error message if it was not entered correctly.Switch All charactersInclude Hebrew and Latin characters, numbers, and punctuation characters like space, dash, commas, underscore, middle dash. Choose specific options to exclude irrelevant characters.Switch Hebrew lettersAllow Hebrew characters plus: Single quote (“‘”), Double quote(“””), Slash (“\”), Space (” “), Underscore:(“_”), Hyphen (“-“)Switch Latin lettersAllow English characters A-Z and a-z plus: Single quote (“‘”), Double quote(“””), Slash (“\”), Space (” “), Underscore:(“_”), Hyphen (“-“)Switch NumbersAllow only digits. Min lengthMax lengthThe controller will verify the minimum and maximum length in the field integrity check.Field’s equation The controller will verify if the field value meets a condition against other text fields in the form and it can be case sensitive or not. In case the field with compare with has no value to comparison will not occur. If comparison is required that make sure the field to compare with is required.Validate bank account numberWhen set to ON the controller will verify the bank account number added to the field.Need to set Bank code and Branch code fields in order to perform the validation.Bank codeSelect the bank code field for the bank account validation.Branch codeSelect the branch code field for the bank account validation.Error Message InvalidIf an invalid value is entered, the form will notify the client by default according to the control type, for example “Data is invalid”. Insert an error message that will be displayed instead of the default.Error if no value enteredIf no value was entered to the field, the form will notify the client by default according to the type of controller, for example “Missing signature”. Insert an error message that will be displayed instead of the default. Conditional permissions When checking conditions on a text type controller, the following options are displayed: EmptyIf the text controller has no value.Not EmptyIf there is any value in the controller.EqualIf the text controller is exactly equal to the entered value.ContainsIf the text controller contains the entered value.
Release management Release management is our process to introduce new versions of Cellosign. Typical release include: New features Bug fixes Maintenance and upgrades to software components Adaptation to regulations and compliance requirements Performance related changes We are releasing approximately 6 new versions of Cellosign every year. That is every other month. What a release cycle looks like? Each release includes the following steps and thresholds. Each cycle is a two months lapse time starting from step 2 to step 7. Step#StepDescriptionLapse time1AssembleCollect and prioritize release requirements. Bugs and security issues prioritized higher2DocumentationBuild supporting documentation for development and testing1 week3Requirements freezeA stage we are not receiving new requirements to release unless it’s a critical bug or security related04DevelopmentDevelopment of release content3 weeks5Internal test cyclesIncluding: Regression, Automated and manual tests for bug and new features, security, compliance and vulnerabilities test3 weeks6Beta releaseReleasing beta version to cloud pre-production environment were our clients may also conduct acceptance testing and report us findings. 1 week7ProductionReleasing version to shared cloud production environment0 Articles Notes for Release 4.9.0 Notes for Release 4.8.0 Notes for Release 4.7.11 Notes for Release 4.7.9(8) Notes for Release 4.7.8 Notes for Release 4.7.4 Notes for Release 4.7.0 Notes for Release 4.6.0 Notes for Release 4.5.0 Notes for Release 4.3.5 Notes for Release 4.2.0 Notes for Release 4.3.0 Notes for Release 4.1.84 Notes for Release 4.1.83 Notes for Release 4.1.82 Notes for Release 4.9.0 Over the past mobths we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed Release rollout schedule Pre production [preprod.cellosign.com]: xx Production [app.cellosign.com]: yy Security Allowed browsers We have updated our blacklisted browsers. Rate limit This new addition is builtin, none optional and controlled exclusively by Cellosign staff. In end-client views this feature limit a client to post too many requests for access in a given time window. The conditions of lock and release can be modified from time to time to our discretion. Cellosign views that includes rate limit are: Client forms (new addition shipped with this release) OTP and Challenge with Client session Javascript limitation Due to security concerns we are reducing our support to Javascript extension in templates. Please make sure that your templates does not contain javascript code. If it does, find configuration alternatives in Cellosign or seek our support team assistance. Upload file size limits Forms already include builtin limitations to upload files. Be advises that with this release we have also applied 5Mb limit when: Posting file(s) through API Configuring template Creating Adhoc session Heads-up for using iframe Over the past year browser providers were and still consistently preventing and deprecating usage of iframes. Technology wise the prevention is about blocking cookies and outbound communications from the guest. Eventually, it is widely accepted, that iframe technology will be deprecated all together sooner or later. Although Cellosign allows to deploy views in iframes, we encourage you to adapt other methods. Template changes Signature field button text Added option to change default text for signature button Default values for select field Added preference to pick default option for select field Lock template Until this release a template could be edited and changes are reflected on live sessions. With this new release we are promoting template lock per session for which a session will also hold the template properties at the time a session is initiated, which eventually result that changes in templates will have no impact on forms that have sent to clients. No clients will automatically work like so and by the end of Q1 2025 we shall enforce this change. Font David Removed Font David deprecated from Template configuration for the reason that it has issues with mixed char-sets and special characters, such as “@”. Be advised to replace template to other font face in case you are using it. Autodate field Added formats to auto date and now include breakdowns for day, month and year. Zip and password Depreciation notice. Zipping files in archive email has been depreciated. Download PDF for print We have added a new feature for client toolbar to create and download a PDF out of the data that is incorporated in a form without submitting the form. Changes in connector integrations Added functionality to modify integrations inline when moving template from one environment to another. Read only Added a read only configuration for session that disable the ability to submit a form. Integrations Filter archive web hook data Added ability to exclude data and paragraph filed types in archive web hook. Group data Added “group_data” array to archive api for future use. Dashboards Expiration widget Updated search expiry, Added 3 days and 1 week options. Applications BDI Builtin BDI interface. Electronic 101 form (טופס 101) We have renewed our 101 certification. Please consult with your reference regards fully compliant 101 template. All new client forms application Refactor of client forms application. It includes many new configuration and UI settings to match your brand looks Notes for Release 4.8.0 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. Release rollout schedule Pre production [preprod.cellosign.com]: xx Production [app.cellosign.com]: yy New features & enhancements Heads-up for using iframe Over the past year browser providers were and still consistently preventing and deprecating usage of iframes. Technology wise the prevention is about blocking cookies and outbound communications from the guest. Eventually, it is widely accepted, that iframe technology will be deprecated all together sooner or later. Although Cellosign allows to deploy views in iframes, we encourage you to adapt other methods. Sooner the better. Notes for Release 4.7.11 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. Release rollout schedule Pre production [preprod.cellosign.com]: released Production will be released at 28/07/24 New features & enhancements Attachments to client email With Cellosign we have two types of recipients that may receive an email at the end of a business process: agent and client. At the end of a business process a recipient of type agent will get on email that includes: signed PDF, raw data (Typically json file), attachments that were collected during the process. Client receives only the signed PDF. With this change. A file upload and image upload controls include option to attach the file to client email as well. Search in list of values field Typically a remote search in LOV fields should include some flexibility to avoid cases where spell is wrong or an hyphen is in between words. This is called a “Fuzzy” search. Cellosign search works this way and it’s good for most cases, in other cases it doesn’t. Mostly it doesn’t work well when the words are long 7 letters or more. For that purpose we have added option for select type. The default one is “Fuzzy” as it is today and the new option is “Strict”. The values Cellosign will look for are only ones which were typed. Fort more information see List of values control. Notes for Release 4.7.9(8) Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. Release rollout schedule Pre production [preprod.cellosign.com]: released Production will be released at 19/06/24 New features & enhancements Email validation On previous releases, Cellosign validated email extensions. With this release email validation is conformed to RFC 5322 standard which is basically composed of a string given that it includes “@” and a”.” in specific places. With this change there is no limitations on domain or sub domains. Company seal from image Cellosign includes a signature feature that embeds company details: name, company ID altogether with a graphic signature. With this release we added a new feature for which a client will be required to upload an image that will be used as a background for graphic signature. Email buttons recolored With this release button colors in emails has been modified from yellow to grey that conforms with contrast requirements for accessibility. Embed Image in PDF template Image controls for PDF and Hybrid templates are enhanced and can be embedded into the final PDF produced in Cellosign. Read here for further details and customization. Get sessions API enhancement Get sessions API enhanced to include assignee filter, that is the user whom created a session or was assigned to (“puh client”). See API Documentation for further details Notes for Release 4.7.8 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. Release rollout schedule Pre production [preprod.cellosign.com]: released Production will be announced separately New features & enhancements Company Registrar API We are happy to announce that we have added an interface to Israeli companies registrar (“רשם החברות”). The interface allow you to validate that a company number actually exists. In addition the interface enable to fetch the following company details: name (Hebrew and English) and company status. This feature is available on cloud installation. Please contact our support to check your eligibility for this feature SMTP Authentication Added new option to SMTP integration that requires no authentication. Please read the following documentation prior to implementation Security enhancement: blocked login pages on iframe In order to protect your data and your users from Click jacking and phishing vulnerabilities we have disabled the ability to carry out user login from an iframe. This security enhancement added to all pages that requires your users authentication: Login to main application, Login to Agent application and Login Tasks application. Client authentication to open invitations, client forms and OTP remain unchanged. Form control dependencies split Currently dependencies tab includes a query to trigger change of permissions and value to form control. This tab has now been split to two separate tabs: Conditional permissions and Conditional values. See here documentation page. It is advised to make sure that template with conditions values and permissions are working as expected. In case of an issue, please contact our support and we will be happy to help Notes for Release 4.7.4 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. Release rollout schedule Pre production [preprod.cellosign.com]: 17/08/23 Production [app.cellosign.com]: 23/08/23 New features & enhancements Default date and date time to date control Currently date control accepts a fixed date as a default value. With this release we have added the option to configure Date control to accept the date when transaction is generated. To configure current date apply “$now” to default value. Salesforce formula editor We have added into Salesforce “Percent” data type and now it can be edited and converted prior to propagation into form. Enhancements to paragraph control Added to new functionality to paragraph control: Input elements: Add input controls into paragraph. Placeholder: Add none-editable reference to other controls in the template Notes for Release 4.7.0 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. Release rollout schedule Pre production [preprod.cellosign.com]: 26/6/23 Production [app.cellosign.com]: 06/07/23 New features & enhancements Table footer We have added to Table control ability to configure footer row to include textual values and SUM function that SUM column values. See here for more details SMTP/SASL XAUTH2 Autentication We have added SASL XAUTH2 authentication for SMTP integrations. SASL protocol is a secured way to Authenticate SMTP requests with services such as GMAIL, Office exchange etc. See here for more details Validation errors On previous releases a “Custom error message” was ignored in some validations. With this release , in case custom error message is added to field configuration it will be used in case of validation error, regardless of the test case. If no custom error message is added, specific mesage for the test will be displayed. Ordered lists font We have made changes to ordered lists to include formatting of bullet items. See here for more details Notes for Release 4.6.0 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. Release rollout schedule Pre production [preprod.cellosign.com]: 18/5/23 Production [app.cellosign.com]: 01/06/23 New features & enhancements Connectors filters We have enhanced our connector functionality greatly to query and sort data from remote source based on complex conditions. Conditions can now meet any complexity of “AND/OR”, querying based on field types and compared with either fixed values or values already populated in a form. This option improves connector flexibility and to simplify connectors configuration. More details in Integrating a connector. Connector fields mapping We have enhanced our data mapping for filling forms automatically. On top of building a formula for converting native datasets, we have added the ability to CONCATENATE values and into one string and also the ability to repeat those as many as records matches the query. For instance this feature will enable you configure a result that include first, last name and DOB for all account contacts. More details in Integrating a connector. Client forms We have enhanced client forms view with automatic redirecting to list of transactions after form has been submitted. Also added texts to navigation buttons for better usage. Transaction board We have added to Transaction board the new features to access Workflow and BPM processes: Click on “See Workflow” to open Workflow or BPM diagram. Click on search icon to filter list based on workflow/BPM unique key to get all related sessions Click on Copy icon to copy the aggregating key to your clipboard Bug fixes On earlier releases search items on multiple selections in PDF documents was not enabled. Please see notes on configurations in List of values. Fixed issue with a display of conditions in a control group after modifying control ID. Notes for Release 4.5.0 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. New features & enhancements Enhancements to paragraph control Added option for nested numbering, i.e. 1, 1.1, 1.2 etc.. with configuration Added option to display text in columns (similar to news paper) using configuration Note: this features requires activation. Submit ticket to our support to apply. Enhancements to table control Table control was added with: Design options to control Font size and cell padding, Alignment Automatically add prefix and suffix to cells Improved responsive by automatically collapse rows in case table is wider then view Connector data mapping enhancements We have added new features for mapping of data objects from remote sources: Conversion of numbers Representation and format to numbers Representation and format to dates For more details see Data mapping and conversions. Connector description Descriptions for connectors have been improved to provide better visibility on the connector content. Heading texts improved to include reference to objects in remote data source Ability to add description on connector level Data tables enhancements Improved usage with format text switcher to display or hide text styling for clear view on content Row editor is fixed for easier navigation On paragraph connectors we added the ability to override border display. See more details in data tables Faster SEAL document SEAL API is used to create sealed (closed) PF documents without user intervention. We have improved this feature to response faster by 50%. This features requires activation. Submit ticket to our support to apply. Salesforce package enhancements We have added new methods to Salesforce package: SEAL: Create signed documents Delete: Revoke transaction See more details in Salesforce guide Apply signatures at bottom of PDF pages Normally when using HTML template to produce signed PDF documents, signatures like any other form element are applied per relative position on the PDF result. With this release we have added the ability to create Signature controls that can be applied to the bottom of the signed PDF. See more details in Signature documentation. This features requires activation. Submit ticket to our support to apply. Bug fixes On earlier releases landscape documents could be uploaded for which the result could have contain errors in signed documents. To prevent that, we have added an error response when landscape PDF document is uploaded with an API or agent application Announcements Cloud migration As previously announced, an upgrade to our cloud infrastructure (migrate to Azure) in production is planned at 23/4.As a result of the upgrade our IP addresses will also be changed.This is a list of current production IP and new infrastructure IPs: SegmentCurrent IPNew IpsInbound:Requests to https://app.cellosign.com, i.e. login, API request for new sessions34.120.149.10220.31.141.237OutboundRequests from Cellosign for Outgoing requests are API, Webhooks, SMTP, FTP, SSO and all custom integrations that submitted from Cellosign to your infrastructure.The new infrastructure includes only one IP that serve as a proxy for outbound traffic.35.195.39.15734.140.217.12835.195.63.17534.78.57.11220.126.234.162. Please make sure to list the new IPs before the planned migration date 24/03/2023 to prevent service blockage.As soon as the IP addresses have been whitewashed, please submit a service request to set up a joint inspection date. Make sure the new IP addresses are enabled before the test. We recommend for a joint test as soon as possible. Notes for Release 4.3.5 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. New features & enhancements Temporary account lock Prior to this change, five consecutive failed logins were locking a user account. Only user with project admin or above can release the account. While this is remain the default option, we have also added the option for a temporary lock. With this option, you will be able to setup a lock policy: Lock policy: Lock account after X consecutive failed logins. [That is the default policy] Temporary lock to prevent login for X minutes temporary lock based on two parameter: After how many consecutive failed logins the temporary lock kicks in For how long (in minutes) the account will be locked What‘s next? We advise you to review this change together with your organization security officer and choose appropriate lock policy for you. Adhoc form permissions Prior to this change, when a temporary session is created, permission defaults are applied to each field. In order to prevent errors in permissions, we have removed default permissions and leave it to the agent to define explicit permissions to each field. When field is added without permission a warning is displayed for adding permissions “Agent allowed” or “Client allowed”. Accessibility enhancements Over the last minor releases 4.3.1 to 4.3.5 we have released various changes and bug fixes for accessibility. Initial focus Prior to the following change the initial focus was applied to START button. With this modification, the focus has been moved to Hamburger icon on the Top-Left corner in left-to-right forms and Top-right corner in righ-to-left forms. Color switcher We have removed “Normal” color toggler from accessibility menu. With this change when “Monochrome” is activated form colors will be mokdified Preview texts We have added texts to screen reader in order to describe the PDF document applied to preview. Notes for Release 4.2.0 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. New features & enhancements Salesforce integration With this release we are very happy to introduce you with Salesforce integration to Cellosign. This feature opens up a world of new possibilities were the entire digital journey can be implementation with no APIs on the client can be carried out with APIs integration. Simply couple Cellosign and Salesforce, configure what data is connected for two ways integration. For more information please visit Connectors and Salesforce documentation pages. Geo location Added ability for Geo coding client location that includes a visible map, inserting an address or location manually or automatically with Client GPS or IP when applicable. Read more Passwords vulnerability check In addition to the regular passwords complexities, two-factor authentication we have applied additional security layer that check passwords renewals and passwords for new users with an internal vulnerable passwords database. When a user applying new password, password will first match the complexity and length according to your organization requirements and than match the password with passwords known to be vulnerable. Underline placeholder for empty fields New design option added to entry fields. Checking this option will include an underline where input value is empty. This is specially helpful when you need the final PDF result will show an empty value. To set this option: Click on template fieldClick on Design tabCheck “Apply underline in result PDF when field has no value” Note: This option is available for field of type: text, number, select, textarea, paragraph, date, pad, date, email, phone only. Email on Archive errors On previous version we have added a feature that post Email to configured recipients notifying them regards failed archive. Within this release we have incorporated meta data file that includes identical content and structure to data which was pushed through the API. Note: We advise you not to use the meta data from email to your application from number of reasons: Email servers are typically rendering files content, encoding etcWe can’t always be sure regards the failure reason so you may consider the meta data file as unsafe As a result of the notes above we will not be able to support cases where meta data from email is failed to upload into your APIs. Fixes #DEV-1052: Archive error notification in email are now posted with updated archive structure#BUG-1173: Signature padding on HTML to PDF when additional field on same column is now fixed#BUG-1351: Redirect URL at the end of session fail to redirect#BUG-1477: Client form screen fail to render data fields but instead display fields id Notes for Release 4.3.0 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. New features & enhancements Updated Content Security Policy (CSP) We have updated our security policy to prevent access from forms to unknown web resources. Why is that important? We are considering that any form that posted to remote client contain sensitive and valuable information (health, financials etc). By adding external resources to forms, such as image backgrounds from external URLs or PIXEL implementation such as google-tag-manager, the form is exposed to external Attack that prevent us from keeping you and your clients data safe. What has been carried out on our side in that respective? We have scanned your templates, checked and validated external resources and explicitly added resources that are secured to our CSP whitelist. What should be done on your side? Background images to forms using URLs must be avoided. Use base64 strings for background images. This is how to do it. Case you require PIXEL support, please submit a ticket our support team. Add your PIXEL URLs to ticket for inspection. Software upgrades Software packages that are effecting remote client forms and agent application (co-browse) has been updated to latest release. We have carried out comprehensive testing to make sure applications are intact. However, in case your templates includes Custom CSS and Javascript we advise to carry out tests to make sure your custom software works as expected. To see custom code, login to application console. For each template, open “Settings” and on the right pane click “Javascript” and “Stylesheet”, case the left pane is not empty, please double check your template at work. Public page enhancement As you probably aware, template and BPM processes can be launched using a public template. Typically public pages require an input to initiate a process. Up to this release, public page is presenting page with required input. With this upcoming release input requirements can be added to URL in a querystring format. For example: Open the this url. https://preprod.cellosign.com/public/02774a7724ae4211a903043bd4171c96. It display a page where you will be required to enter name, mail and phone number. Alternatively, you can open this URL. All the required parameters are injected using a query string and the form will be opened instantly. Be advises that although this option is available use it wisely. Public pages with client data should be secured and posted to clients directly. DO NOT leave public URLs with client data out for grabs. Apply user context to form With this release you will be able to apply Agent context into form automatically. This can be helpful if you require Agent name,phone or email to appear on form automatically with no user intervention. To do so, you will need to apply context as default values to field in a form. For example, you would like an agent email to appear on form automatically. Add email field to form On field settings add “$initiator.email” to default value. Once new session is created the agent email will be displayed automatically Note: It is advised to use this option when it’s required. Do not expose your employees data when not needed. The following contexts are available for your disposal: DataContextNoteemail$initiator.emailUser login name$initiator.usernameTypically emailPhone$initiator.phoneFirst name$initiator.first_nameLast name$initiator.last_name Added “Table” element Due to multiple requests, we have added “Table” element to our form builder. For more details see reference to table in this guide. Data tables enhancements We have added new feature to data tables, that is the ability for data table cell to include input elements as well as static data. When this is useful? Let’s assume that you have an “Insurance proposal” that needs to be implemented. Your proposal might end up with hundreds or thousands of texts and input elements that are varied as our client engaging with the form, for instance, when “Second driver” is required, we want to show legal notice and inquire regards the potential driver(s). One way of doing this is implement the entire data set within the form as it’s normally being done, this can be tedious when there are lots of form elements… Another way is to implement it with data tables. With this enhancement, data table cells can include input elements as well as static data, so when client selects “Second driver” in the form, the entire set of texts and input will be displayed automatically, without the need to configure them in the form itself. More details in data tables reference. Fixes #BUG-1436: Date element accept wrong format when entered manually is fixed and now accepts manually entered values as configured in data time format options. #BUG-1362: On previous releases, when file was added to Google drive through Archive integration, date-time stamp was added to file name. This has been removed and file name includes only the file name convention, without date-time stamp. Notes for Release 4.1.84 Over the past weeks we have been working on improvements to Cellosign platform. In this blog post, you can see a list of what has been changed, updated, and/or what bugs have been fixed. Other than routine maintenance and bug fixes, the highlight for this release is infrastructure for Connectors. In this release and the next releases to come we will deploy direct connections to applications and databases that will enable you to design end to end applications with no APIs. NEW FEATURES & ENHANCEMENTS Data Tables Think about it as a custom table hosted in Cellosign. You can customize it any way you want and connect it to template. What it’s for? Consider the option when you have large repository of texts that needs to be incorporated into business process either as initial value, as a condition to other selection or per user engagement. Up until now that way to handle this process would have required to configure fields and conditions inline the template. In case texts needs to be incorporated into large amounts of fields and templates, this can be quite tedious. With this new feature you will be able to configure relational table with keys and data and use it in cellosign templates using our connector editor. This is specially become handy when you have extensive conditions to handle the texts and in case you have texts such as terms/legal that are expanded over large amount of templates, so you can keep it all in one place. Configuring data table To configure data table login to application and click “data sources” and “Tables”. Click add table and define: table name, columns as instructed on screen. Click to add rows. Eventually, you will have a data table with rows and columns. Note that “key” type columns are designated for the connector in next step so you can search matching records. Configure connector On template editor click integrations on top pane and then “Connectors”. In this screen you will see “Preset”, “Live”, “Submit” and “Post submit” for which our connectors will be integrated into. “Preset” is the ability to get values from the table on session initiation, requires no user intervention. “Live” will be configured when the connector require some of interaction from the user such as selecting value or click on a button. “Submit” and “Post submit” are for databases and apps such as salesforce or Dynamics [that are coming up in next releases]. To configure connector to data table click “add” on “Preset” or “Live” sections. Select data table you have configuredSet status “Active”Define the lookup:keys from the data table [one or more]Equation [for data table equal only is applicable]To which entity to compare with: form field value, label [integration] or fixed valueAdd conditions as many is needed for the lookupDefine what happens if query return no results, one or more than one resultOn “Live” you will need to configure how the connector is activatedon “Change”: As the user types in. Select the field from the list to attach the connector withon “Click”: select a button from the form that will activate the connectorFinally map the query result into the form fields. which value from data table goes to which field in form Connectors We have created a consolidated editor for all communications with a template. That includes: Integration with WebhooksTemplate integration to get data from remote source [See additional notes below]Data tables described in the section aboveUpcoming connector to Salesforce in Release 85 [next release]Upcoming connector to Dynamics and Databases in R86 What it’s for? Consolidation of connectors has been carried out to provide the user a complete 360 view on all inbound/outbound integrations with a business process. What has changed for Webhooks? Webhooks for template, on previous release, is configured under Template->integrations -> Webhooks. With this change Webhooks can be now edited under Connectors view. The new view is also includes “implicit” webhooks by default. What has changed for Template services? Template services, previusly on Template->integrations -> Template services, has no migrated both UI and functionality to Connectors with webhook. A new webhook type has been defined “WHEF_FORM_FIELD_CHANGED”. The new webhook, like any other webhook allow to define the endpoint for integration: url, methods and many more capabilities, on top of the previous implementation, such as authentication method, timeout etc. Once defined, on the project resources, it can be defined per template as well by adding fields mapping and behavior, button click or field on change. Form preview We have added the ability to view form before submission. This is very useful feature when you required that the end client will see the final PDF view before submitting it. To activate this feature, log in to template editor, click settings icon and tick “Show form before submission”. preview will be displayed with watermark so it cant be used as an evidence before actual submit. Note: up to release 84, this feature was available in PDF or Hybrid forms. Starting this release this feature is also available in HTML forms as well. Recipient password To secure forms for online clients Cellosign has OTP, password and authentication functionality that can be activated on a template Currently OTP and authentication are activated both globally and also on recipients level, meaning a template can be configure that first recipient requires OTP and second requires authentication. We have modified password functionality to be activated on recipient level as well. All templates carrying passwords functionality will be migrated with the new functionality. Note: Make sure to double check on pre-prod or production rollout that templates are working correctly. Extended recipients We have extended the maximum capacity for recipients in template configuration. Up until now max number of recipients per template was 7. With this enhancements there’s no limit on number of recipients that can be configured. Legacy archive: depreciation notice By the end of the year we will deprecate legacy archive method. The replacement for legacy archive is Webhook archive. This is relevant for you if you are using archive in one of these ways: Configurable archive in template settingsUse “archive_url” tag on integration Please be aware that deployments with this feature will not be supported by the end of 2022. Feel free to consult our support for transition. Other changes and Fixes Tokens removed from web server response headers to reduce visibility on application informationPer WCGA 2.0 for accessibility best practice we have removed high contrast view and applied changes for better engagement on “Monochrome” viewIsraeli ID validation now includes requirement for 9 digits Notes for Release 4.1.83 Over the past weeks we have been working on improvements to Cellosign platform. In this blog post, you can see a list of what has been changed, updated, and/or what bugs have been fixed. Some of the highlights for this release are: A) Visibility: We’re continuously investing lots of efforts to collect, provision and deliver to you quality heads up on errors. This release includes automatic notification on errors and ability to report directly from application console onto our ticket system while collecting valuable information that can save time on turn-around. B) Consistency: Several changes has been made to ensure inbound and outbound data with external applications is exchanged timely and accurately. Both SMS and Email default providers has been replaced to provide consistent service. New services our complied with ISO-27001, ISO-27799 and GDPR standards. NEW FEATURES & ENHANCEMENTS Errors notifications As part of our efforts for consistency we have published a tool that will alert closed circle of application administrators to receive email notifications regards errors in business processes. Errors may occur from time to time as result of incorrect process configurations, connectivity with 3rd party applications or issues with software. Rest assure we are constantly monitoring business processes on our monitors. When an issue occurs admins will receive an email with as much information as possible to extract from Cellosign in order to complete process manually so valuable data will not be comporomised. For example, a business process is completed, Cellosign is failed to transmit the product to an API [i.e signed pdf, attachments and metadata]. In this scenario Cellosign will deliver the signed document and metadata to admins in order to be archived manually. We are constantly improving our visibility on failures and this feature is planned to be improved in every new release . To configure admins to receive error notifications you will need organization or project manager privilege. Log into Cellosign, on the left tool bar click projects and enter email(s) in field “Send logs and errors to this address” on “Messages” tab We advise to add at least one recipient Inline ticket submission We have incorporated a ticket form within the application. Ticket can be submitted from two locations in the application: 1. At the bottom of the leftmost toolbar, click the headset icon2. In transaction board, toggle a transaction and click the headset icon We will collect as much information as possible into the ticket including the reporter contact details and post it to our support team. Clear field toggle button New functionality added to enable inline clear button in form. Using this functionality requires opt-in per field (turn it on)Clear button is enabled only when edit permissions are granted To turn on clear button enter into field configuration -> Values & Display tab and toggle on “Show clear button” Old browsers deprecation notice Cellosign is designed to provide clean and smooth user experience both for agents and remote clients. As part of our efforts, we have started a process of deprecating old browsers, first in line is IE11. [Specific notice for IE 11 published at April 18th]. We are planning to deprecate more browsers down the line. Heads up will be published in advance. For a remote client we will display the view below that will enable the client to capture QR code that carry the url provided and also a click to copy into other browser. Default Email provider We are in process for replacing our email provider from Mailchimp to Sendgrid. Over the last month we have successfully deployed Sendgrid service on our per-production and lower grade environments. Sendgrid proven to be more reliable in delivery and tracking. You may test the new mail provider on our per-production service on your convenient. The service will be rolled out to production altogether with this release. Specifically In case emails from Cellosign are transported to you by an organization mail server (i.e. Exchange) please make sure emails are not blocked. Certificate change During the upgrade of this release we will also replace our outdated certificate which due to expire on June 24th. New certificate is already installed on our per-production service. Should you require a CA file to flush it onto your ends please contact our support at service@cellosign.com Other changes and Fixes Templates listing is now ordered by Template nameAdded the ability to release user from lock where the Authentication system is remote such as in OKTA, Active Directory or Azure AdReplaced SMS provider. we have deployed inforu as SMS provider which has been prove to be more timely and consistent service. The change is seamless and does not require any action on your end. you’re welcomePer WCGA 2.0 for accessibility best practice we have removed high contrast view and applied changes for better engagement on “Monochrome” view Notes for Release 4.1.82 First and foremost we are happy to announce that we have been certified for both ISO-27001 & ISO-27799. As you probably aware, certification process requires lots of efforts to make sure we are working and abiding to information security’ best practices and standards in order to keep your data safe. Nevertheless, we haven’t slowed down with enhancements and over the last weeks, we have been working on improvements to Cellosign platform. In this blog post, listed what has been changed, updated, and/or what bugs have been fixed. NEW FEATURES & ENHANCEMENTS Client Identity Verification CIV module authenticates remote client identity, throughout comparing an official document such as ID or Driving License with a liveness test and a live selfie . The entire verification process is completely automated and does not require an agent intervention. Read more about this feature on this post. Image Upload and Compression First, for your convenient, we have removed upload limitation on image upload file size. And couple of notes on this change: All images uploaded to Cellosign are compressed and resolution is reduced to 1300px max (width/height)Mostly after compressions, image file tends to reduce up-to 1Mb. Please be aware to set up your APIs in case your forms use lots of image uploads OTP screen re-design One time password screen for clients has been re-designed now includes more engaging UI, Send again and post OTP to other location buttons. Fixes Transactions are now displaying list of destinations where invite posted to and not just the first destinationAccessibility: PDF files generated from Cellosign are now compatible to be read automatically with NVDA screen readerAccessibility: Paragraph elements are now added with new attribute presentation used by assistive technologiesAccessibility: Improve Monochrome and High contrast for accessibility modeAccessibility: Headings has been modified to adapt context hierarchy to headings:Page heading defaults to H1. Styling options moved to page style tabSection heading defaults to H2Template/form heading has been modified with shorthand “…” case template name is too longLogo on top is now hidden on mobile screen
Send a form To send a form to the client from the agent’s interface, press the “Show Agent” button at the top of the screen and select a form prepared for you from the list. For more information about forms templates read here. Enter the client’s email address or mobile phone number at the top of the screen and press “Connect” button. At this point, when the client opens the link from the phone message or the email, you can both work together on the form. Visit Screen sharing section for more information about the screen sharing option. When the client sends the form (after all the mandatory fields have been filled in) you will receive the signed form by email. For additional information about how to send a form in Cellosign application read here.
Initiate New Process This option allows you to run existing published templates from the dashboard. Select a template from the list and press Send. The template will be opened at the Agent screen. Add phone number of the client or email address where the client will be able to open the form and add the relevant details. Press “Connect” button to send the form to the client. For more information see “Show Agent” section.
Number Values & Display Show counter buttonsUse this option to display buttons that allow the user to increase or decrease the field value on click.Counter stepsEnables skipping according to the specified value when pressed. Default: 1 This is how the controller will be displayed on the user screen: Types and Validation Built-in TypesSelect data check from the list – ID number or company number. The controller will verify if the entered number is correct.Minimum/MaximumThe controller will verify that the entered value is according to the values entered in Minimum and Maximum fields.Field’s equation The controller will verify if the field value meets a condition against other field in the form. In case the field with compare with has no value to comparison will not occur. If comparison is required that make sure the field to compare with is required.Error Message InvalidIf an invalid value is entered, the form will notify the client by default according to the control type, for example “Data is invalid”. Insert an error message that will be displayed instead of the default.Error if no value enteredIf no value was entered to the field, the form will notify the client by default according to the type of controller, for example “Missing signature”. Insert an error message that will be displayed instead of the default. Conditional permissions When checking conditions on a number type controller, the following options are displayed: Greater thanIf the number controller is greater than the entered value.Less thanIf the number controller is less than the entered value.EqualIf the number controller is exactly equal to the entered value.Not EqualIf the number controller is not equal the entered value.EmptyIf the number controller has no value.Not EmptyIf there is any value in the controller.
Javascript This option is under deprecation and it is disabled on new projects. Be advised that templates that include Javascript are not supported and you may also expect errors when imitating from an API. A template editor comes with the option of customizing CSS and JAVASCRIPT. Note: Templates that contain CSS and JAVASCRIPT code are not supported as part of the service’s maintenance and support. Javascript component in the template can be used to generate various events: for example, integration with analytics systems for the purpose of measuring events. Cellosign includes a test option when sending the form that does not depend on the out-of-the-box application, so it is possible, for example, to validate some data before sending the form. To activate this validation, create a “custom_submit” function in the Javascript panel of the template editor to generate a relevant error message and return true or false, so the process of sending the form will stop. As noted in the Stylesheet, CLASS or ID elements can be used at the controller level. It is recommended to use native Javascript. Note: each textual controller includes an option for REGEX Validation, so it can be used at the controller level without code. For more information see “Controller editor”.
FAQs Articles How to empty Cache? Client did not receive email or SMS. What to do? Client uploaded a file and I received a ".bin" file, why? PDF is generated with empty page. What to do? Client could not submit a form. What to do? Client entered the form, started filling in details and then the form disappeared. What to do? Client sent the form, but the form did not reach my email. What to do? How do I know that the client has opened the form? How do I know that the client has submitted the form? Client clicks the form link, but the form does not exist. What to do? Client could not enter data into a certain field. What to do? I exited the agent screen and I want to help the client to complete the form. What to do? How can I send a form to the client? How to empty Cache? Using chrome browser: On your chrome browser page, click F12. Right click the refresh image: A menu will open with 3 options. 3. Choose the 3rd option – Empty Cache and Hard Reload: Client did not receive email or SMS. What to do? Emails and text messages in Cellosign are posted through 3rd party services. In case a message was posted successfully from Cellosign and acknowledged by the provider, you will see a green check next to to recipient address in the transaction board. Green check means that message has been provider has accepted Cellosign request for posting a message to the recipient. We do not have the visibility if messages actually delivered to recipient or has been blocked somewhere on delivery. Message block may occur for any number of reasons, such as, Phone that has no permit for text messages, company email that may receive message from known source. In case your organization requires a complete visibility on messages delivery it is advised that you will integrate with service providers to gain access to full transaction trail. Please see SMTP and SMS integrations to connect with your provider Client uploaded a file and I received a ".bin" file, why? For security reasons, file that is uploaded into form is scanned and also a check for its identity is carried out. Cellosign process does not take the file extension for example “.txt” that was uploaded for granted but rather check that the file signature (“identity”) and calculate the output file extension. In some cases a file could be uploaded as “.txt”, “.pdf” for example but the archived document could be “.bin”. That is because the file carries binary identity, mostly octet-stream identity. OK, so what do I do next? Since this file cannot go through Cellosign with the original extension contact your client to get the file in other mean. PDF is generated with empty page. What to do? Each block printed on a PDF includes a markup to clear and preserve space from the content above it. The block also takes into account the height it needs to preserve. Mostly this would work just fine as expected. However on large text blocks (Mostly with paragraphs and tables), in case that the block appears in top of the page please use the following class remove-clear on section level (As appear in the image) to prevent your text-block from “jumping” to the next page. Client could not submit a form. What to do? Step 1: check mandatory fields First, check with the client if he has filled in all the mandatory fields in the form. If the mandatory fields are not filled in, the customer will not be given the opportunity to send the form. In Cellosign, verification of the correctness of data is activated for certain fields. Therefore, make sure that the mandatory fields are filled in according to the requirements. For example: ID field contains a proper 9-digit number, an email address in a proper format, a customer number in the accepted format, and so on. In these cases, there is a red note under the field that the value entered to the field is incorrect. Step 2: Check internet connection If the client is still unable to send the form, it is recommended to check the Internet connection. If the client’s internet connection is fine, there may be a problem with the application of the form. Step 3: Check if submit size exceeded Templates may include Image and File collection controls. Specifically files can get to 5Mb each. Assuming template has many controls to collect files and images, the entire submit might exceed Cellosign limit for maximum body size: On production the limit is set to 50Mb. On Pre-production environment the limit is set to 30Mb. How to verify that this is the issue? Open browser console and search for HTTP code 413 which implicates that this is indeed the problem. How to resolve? Reduce the amount of file and image collection and make sure to reduce the maximum weight allowed for each. Step 4: Contact support Please contact support in your organization, if issue is not resolved, your support should contact Cellosign support with the relevant details If no problems were found in the form implementation, please contact Cellosign support. Client entered the form, started filling in details and then the form disappeared. What to do? The definition of the length of time in which a form can be filled out or a business process can be completed in Cellosign is determined by the implementer of the form, according to the definitions and needs of the organization. The default form availability for a client is 48 hours, however for various reasons such as a time limit or on the other hand a complex form that requires complex input of fields and attachments, it is possible to extend or shorten the time that the form will be available for the client. Every time we send a form to the customer, we send a unique link. If the defined period of time has passed, the form will no longer be available and it is required to send the form one more time, by sending a new unique link. If the expiration of the form has not passed, the client should enter the same link again, and continue until the end of the process. All the details entered by the client and/or the agent will be saved in the form, until the end of the availability period of the form. For more information about the expiration of the form read here. If the expiration of the form has not passed, however the customer clicked the link again and the form still did not open, please contact Cellosign support to check or restore the form. Client sent the form, but the form did not reach my email. What to do? In this case there can be several options. The first and most common possibility is that the customer did not actually complete the form submission process. To verify that the client has indeed sent the form, check in the Processes screen, under “Submitted” column. If no information (date and time) appears under “Submitted” column, it can be concluded that the client did not complete the process of sending the form at all, and therefore the form was not received by email. See the image below. A second option is when the information appears under “Submitted” column, meaning that the customer did send the form. Please check that the email was not received in spam or another folder. If an email was not received in spam or other folders, then the next option is to check in the application of the form. In the process of creating the digital form, you can choose with each sending of the form who will receive a signed copy. Often the reason why a form does not reach the email is that the definition has been changed to another email or there is “no email” defined. If this option has also been checked and rejected like all the other options, please contact Cellosign support to check or restore the form. How do I know that the client has opened the form? There are three ways to check if the client has opened the form: Verification from Dashboard. Verification from Processes screen. Verification online from the Show Agent screen. Verification from Dashboard In Dashboard screen there is a section called “Viewed” where you can see all the forms that were viewed by clients in last 24 hours. In addition, in all the other sections there is a column “Viewed”, that is automatically updated with the date and time details once the client opened the form. For more information about Dashboard read here. Verification from Processes screen There is another way to check if a client has opened the form, for any user with agent or project manager permissions. In Processes screen there is a column with the title “Client logged in” and there you can check last date and time the client opened the form. For more information about Processes window read here. Verification online A representative from the organization works in screen sharing with a remote person online. The work is done on top of Show Agent interface. Once the client opens the form the green indicator will appear at the bottom of the screen at the agent side for a short time. For more information about Show Agent read here. How do I know that the client has submitted the form? There are three ways to check if the client has submitted the form: Verification from Dashboard. Verification from Processes screen. Verification online from the Show Agent screen. Verification from Dashboard In Dashboard screen there is a section called “Submitted” where you can see all the forms that were submitted by clients in last 24 hours. For more information about Dashboard interface read here. Verification from Processes screen There is another way to check if a client has submitted the form, for any user with agent or project manager permissions. In Processes screen there is a column with the title “Submitted” and there you can check date and time when the client submitted the form. For more information about Processes interface read here. Verification online A representative from the organization works in screen sharing with a remote person online. The work is done on top of Show Agent interface. At the end of the process after the client completed and submitted the form the green indicator will appear at the bottom of the screen at the agent side for a short time. For more information about Show Agent interface read here. Client clicks the form link, but the form does not exist. What to do? First, check that the client is properly connected to the Internet. Then check the time settings of the form. Every time we send a form to the client, we send a unique link that is valid for a certain period of time determined by the implementer of the form, according to the definitions and needs of the organization. For more information about the expiration of the form read here. If the defined period of time has passed, the form will no longer be available and it will be necessary to send the form one more time, by sending a new unique link. If the expiration of the form has not passed, please contact Cellosign support to check or restore the form. Client could not enter data into a certain field. What to do? In Cellosign system it is possible to define permissions for each field separately, who is allowed to enter data into a certain field. Data can come from another system in the organization or can be entered by the agent or by the client or both, and so on. First, need to check with the form implementer that the client is allowed to enter data. See the image below. If it was defined that the client does not have permissions to enter data in a certain field, he will not succeed. It can be said that in most cases where a client will not be able to enter data into a certain field, the problem is in the permissions of the specific field. If the issue is checked by an implementer and indeed permission is given to the client and yet he is unable to enter data, apparently this is a malfunction. Please contact Cellosign support to check the form. I exited the agent screen and I want to help the client to complete the form. What to do? Agent screen can be opened again from Processes interface, for any user with agent or project manager permissions. Press “+” next to the transaction that needs help: After it press “Show Agent” button to open the transaction from the agent side: For more information about Processes window read here. How can I send a form to the client? There are several options to send a form in Cellosign application: From Show Agent screen. From Dashboard screen. From Templates screen. Send a form from the Show Agent screen Press the “Show Agent” button at the top of the screen and select a form from the list. Enter the client’s email address or mobile phone number at the top of the screen and press “Connect” button. At this point, when the client opens the link from the phone message or the email, you can both work together on the form. For more information about Show Agent read here. Send a form from the Dashboard panel There are two options to send a form from the Dashboard: Initiate New Process section. Select a form from the list and press Send. The template will be opened at the Agent screen. Add phone number of the client or email address where the client will be able to open the form and add the relevant details. Press “Connect” button to send the form to the client. Initiate Ad-Hoc Process section. Drag PDF file to the field or upload it by pressing “click here to upload” and selecting PDF file location. By pressing “Send” button the file will be opened at the Agent screen. Press “Add Fields” button to add controllers. Add phone number of the client or email address where the client will be able to open the form and press “Connect” button to send the form to the client. For more information about Dashboard read here. Send a form from the Templates screen Templates panel displays the list of templates related to the project. The page is accessible for users with “Project manager” and “Organization manager” permissions. Go to the Templates screen, select a form template from the list and click the template name. From the template toolbar press the “Show Agent” button to open the template in the Agent screen. For more information about Templates read here.
Checkbox Checkbox is a single selection option. Can be checked or unchecked. It is possible to set an initial button value for the checkbox, “True” or “False”, which means that the form will open for the first time with the initial value marked. Conditional permissions When checking conditions on a checkbox controller, the following options are displayed: SelectedIf the checkbox is checked.Not SelectedIf the checkbox is unchecked.
Initiate Ad-Hoc Process This option allows you to initiate Ad-Hoc process from the dashboard. Drag PDF file to the field or upload it by pressing “click here to upload” and selecting PDF file location. It is possible to delete the uploaded file by pressing “Delete” button and add description if needed. By pressing “Send” button the file will be opened at the Agent screen. Press “Add Fields” button to add controllers. For more information see “Show Agent” section. Add phone number of the client or email address where the client will be able to open the form and press “Connect” button to send the form to the client.
Stylesheet A template editor comes with the option of customizing CSS and JAVASCRIPT. It is allowed to use these options with caution and after performing the required comprehensive tests. Note: Templates that contain CSS and JAVASCRIPT code are not supported as part of the service’s maintenance and support Cellosign contains an option to produce CLASS (plural) in the elements: page, section and controller. Also, each controller includes a unique ID for which a CSS tag can be created. Since Cellosign forms come by standard with accessibility components, to use CSS with caution to avoid overriding existing accessibility functionality. For more details see “Accessibility” section. Additional highlights: Background images, icons, and media: It is allowed to load different backgrounds as “background-image” in CSS with a path to an external source, or use icons from an external source, but emphasis should be placed on the issue of copyright. It is not recommended to use a font face that is not part of the design content. Cellosign is served in a Bootstrap grid layout, it is recommended to generate CSS code in this framework.
Screen sharing Cellosign system allows sending a template to the client and creating a common interface (client and agent) for filling out a common template. The interface allows the agent to view the values entered by the client and the client to view the values entered by the agent in real time. Each of them (agent, client) can add values according to the editing and viewing permissions given in the template. The screen sharing option can be implemented in two ways, through the Show Agent interface or Processes interface. In the Show Agent interface, the option exists by default and under the following conditions: Agent has sent the template (a timer indicator will appear next to the target box for sending the template). Client opened the link sent to him (a green indicator will appear at the bottom of the screen at the agent side in real time). If both conditions are met, you can use the screen sharing option. For more information about Show Agent interface read here. In Processes interface the option exists in the actions screen under the specific transaction. Press “+” next to the transaction that need to share: After it press “Show Agent” button to open the transaction from the agent side: Note: In Processes interface users with organization manager or project manager privileges can also open a client screen by pressing “Show Client” button and view or edit the template with client permissions. For more information about Processes window read here.
Dashboard SentAll the forms that were sent to clients in last 24 hours.ViewedAll the forms that were viewed by clients in last 24 hours.WaitingAll the forms that are waiting for clients in last 24 hours.SubmittedAll the forms that were viewed by clients, completed and submitted in last 24 hours.ExpiredAll the forms that were not completed and expired in last 24 hours.FailedAll the forms that were failed in last 24 hours. Under each section it is possible to perform search, filter by user and see the details of each transaction. Articles Show Agent Shared dashboards About To Expire Waiting For Me Initiate New Process Initiate Ad-Hoc Process Show Agent From this window Agent can run already existing template or create Ad-Hoc form with PDF file with or without recipients. Select form to get startedSelect the existing template from the list to be run. Only published templates will be shown in the list.For additional information about templates read here.Enter number or email Add phone number of the client or email address where the client will be able to open the form and add the relevant details.Note: in the template without recipients, when entering the email, a copy of the form will be automatically sent to the client after completion.ConnectPress Connect button to send the form to the client.Client TextAdd the text that will be sent to the client in the message with the link to the form.Client CopyAdd the email address where to send the copy of the form after completion.Upload FilePress the button to create an Ad-Hoc form. See below for more details. Select TemplateSelect the existing template from the list to be used. Only PDF published templates will be shown.DescriptionAdd the description of the form. By default selected template name will be added.Recipients sequenceMark the check box to add recipients to the form. See below for more information about recipients parameters.Attach file and postUpload PDF file by pressing “Choose file” button and selecting PDF file location. After uploading PDF file the form will be opened. Press “Add Fields” button to add controllers. The following controllers can be added to the Ad-Hoc form: SignatureThis controller collects client graphic signatures. Signatures are embedded into the signed document in a way that it associate the signature with the signer.TextThis controller allows to add any text to the form.Signature & SealThis controller allows to combine a signature with the embedded company information.Add fileThis controller allows uploading files of any type, unless limited by file type.Add ImageThis controller allows uploading image files only. For additional information about controllers read here. For each controller it will ask to select who is allowed to fill the field, whether it is required or not, background color [for signature, text and signature & seal] or display name [for file and image]. Example of image controller settings: When the form creation is completed add phone number or email address of the client and press Connect. Timer will be started. Once the client opens the form the green indicator will appear at the bottom of the screen at the agent side for a short time. At the end of the process after the client completed and submitted the form the green indicator will appear at the bottom of the screen at the agent side for a short time. Recipients When the “Recipients sequence” check box is selected the following fields will be shown: Recipient NameAdd the name of the recipient. Default: recip1, recip2 etc..Recipient DestinationAdd phone number or email of the recipient. When added it will be automatically copied to the destination fields [see example below]. Not mandatory, can be added or changed later.Message to recipientAdd the text that will be sent to the recipient in the message with the link to the form.Authentication requiredWhen selected the recipient will be asked to perform the authentication.AddPress Add button to add more recipients. When adding controllers it will ask to select which recipient is allowed to show or edit the field. For more information about recipients read here. Shared dashboards It is possible to add new dashboards by clicking Add -> Create new dashboard. Add the name of the dashboard and select the users’ permissions radio button. Note: Shared dashboards feature requires activation. Please contact your CS contact for activation. Without the activation only dashboards for personal use can be created. Personal useThe dashboard will be shown for the personal use only of the user that created it.Shared with all project managersThe dashboard will be shared with all the users with the project manager permissions under the same project.Shared with all organization managersThe dashboard will be shared with all the users with the organization manager permissions under the same project.Shared with all project usersThe dashboard will be shared with all the users under the same project: users with the organization manager permissions, project manager permissions and agent permissions. Click the “Add Widget” and select the widget from the list. Selected widget will be automatically added to the dashboard. Each widget has it’s own settings that can be edited by clicking the gear icon. The widget can be removed from the dashboard by clicking the trash icon. Press Save button to save the dashboard and Delete button to delete the dashboard. The owner of the dashboard can edit it by clicking Edit button or clone the dashboard by clicking Clone button. Users that are not owners, but have permissions to use the dashboard can add it by selecting from the list and hide or clone the dashboard by clicking proper buttons. About To Expire This section allows you to see all the transactions to be expired. Search options It is possible to perform search or filter by expiration time. Default: 48 hours. At the end of each line there is a menu with additional options. Extend validity Press “Extend validity” to extend the expiration time of the form. Reminder In order to send reminders to the client select “Reminder” in the additional options menu. Add new destination or select an existing destination, add the message and press “Confirm” button. Show Agent Press “Show Agent” to open the transaction from the agent side. For more information about “Show Agent” read here. Show workflow This option will appear only for the workflow and for the template with recipients. Select “Show workflow” from the list to see the workflow status. Delete In order to delete the transaction from the list press “Delete” in the additional options menu. The confirmation message will appear for approval. Waiting For Me This section allows to see all the transactions that are waiting for the user that is logged in to the system. At the end of each line there is a menu with additional options. Show Client Press “Show Client” to open the transaction from the client side. Show workflow This option will appear only for the workflow and for the template with recipients. Select “Show workflow” from the list to see the workflow status. Delete In order to delete the transaction from the list press “Delete” in the additional options menu. The confirmation message will appear for approval. Initiate New Process This option allows you to run existing published templates from the dashboard. Select a template from the list and press Send. The template will be opened at the Agent screen. Add phone number of the client or email address where the client will be able to open the form and add the relevant details. Press “Connect” button to send the form to the client. For more information see “Show Agent” section. Initiate Ad-Hoc Process This option allows you to initiate Ad-Hoc process from the dashboard. Drag PDF file to the field or upload it by pressing “click here to upload” and selecting PDF file location. It is possible to delete the uploaded file by pressing “Delete” button and add description if needed. By pressing “Send” button the file will be opened at the Agent screen. Press “Add Fields” button to add controllers. For more information see “Show Agent” section. Add phone number of the client or email address where the client will be able to open the form and press “Connect” button to send the form to the client.
Radio Values & Display TextTitle for the radio button that will be shown in the form.ValueValue of the radio button.Default valueDefault radio button that will be selected upon sending the form.Active iconThe icon that the user will see in the form when the radio is selected. In addition it is possible to define the color of the icon.Inactive iconThe icon that the user will see in the form when the radio is unselected. In addition it is possible to define the color of the icon.Delete [x] Delete the selected row.Multi selectWhen selected the user will be able to choose more than one radio button in the form.*If Multi select check box is marked icons will be ignored. See below the example of radio buttons with icons: Conditional Permissions When checking conditions on a radio type controller, the following options are displayed: EqualIf the radio controller is exactly equal to the entered value.Not EqualIf the radio controller is not equal to the entered value.EmptyIf the radio controller has no value.Not EmptyIf there is any value in the radio controller. Style Widget typesFor rating radio buttons set the type to “Rating”.Default: NoneInline BlockWhen selected the radio buttons will be lined up.Display buttonsWhen selected the radio buttons will be displayed as list of buttons See below the example of radio buttons with “Rating” widget type and “Inline Block” selected:
Errors Custom errorDescriptionError when OCR failsOverride default error messsage when OCR module fail to parse uploaded imageAlready sent errorCustom error when client try to post a token that is already submitted.Error messages when malware detected on file uploadOverride default error when file from cleansing returns “malware detected”. Note: OTP error, API error and Wizard page error are obsolete and not in use.
Messages settings Post signed document to agentIf this option is checked, an agent that sent the action to the customer will receive a signed copy of the documents to their email address (PDF, Meta file and attached files). Archive failed messages also will be sent to this address.Default: CheckedE-mail addresses to send signed docsPermanent email addresses that will receive signed documents (PDF, Meta file and attached files) from all the templates in the system. These addresses will be added in addition to the addresses defined in the template. Archive failed messages also will be sent to these addresses.Send logs and errors to this addressPermanent email addresses that will receive system errors.Client mail to reply e-mails toCompany’s email address for correspondence that comes out of the Cellosign application such as signed copies for customers. The address is used as a reply to if the customer replies to the email.Phone number/Text that appears as the SMS senderNumber or name that will appear as a sender in messages. The text should be Latin characters only, upper case and without spaces.
Security Articles Supported browsers How to protect forms? Supported browsers Our current approach for supported browsers is blacklist and no whitelist. Blocking specific browsers and releases intends to remediate: Popular browsers that are vulnerable or EOL with the limitation of popularity Browsers or UA that known to be vulnerable Browsers that does not make adequate use or no use at all to new technologies. Specifically use of cookies, local storage, recent CSS etc. In the near future we intend to modify our approach to whitelist. In that event only specific browsers and versions will be allowed for service What browsers are blacklisted? BrowserVersionNoteChrome80 or lowerSamsung Browser13 or lowerFirefox95 or lowerYaBrowser20 or lowerSafari15.3 or lowerInternet explorerAll version Edge80 or lowerOpera67 and below How to protect forms? We are dedicating significant effort to safeguarding your data and your clients’ data. While some methods are fully covered by us, others require your attention. Below is a list of the protections we provide for forms. Before we begin let’s clarify that we have a separate set of rules for “User” which are authenticated and authorized personnel whom are permitted to access Cellosign resources. Typically these users are connected to Cellosign through your organization IDM. (Azure Ad, LDAP etc..)Forms that needs to be filled by your users will require their authentication. This page is about end-clients. Obviuous
Processes What is a process on Cellosign? A process in Cellosign is running a template to its destination and includes the filling of the form and its sending by the customer.Running a template can be done in 5 ways: Running a template by an operating system (integration) Running a template by a system user Running a template via an external link – from a website or portal (public) With a multi-recipient process – a new process is created for each recipient in the process With a multi-templates process – a new process is created on each template in the process For every action in Cellosign there is an information line in the “processes tab”. This screen shows all the processes performed in your projects according to a section of time, with the default when entering the screen being actions created “today”. At the top of the screen: Panel for selecting a date range Free text search to find processes that contain certain text such as: phone number, email address or template A list of projects to select from in case you have more than one project If you have selected a project, you can also select a specific template An “Export” button that allows downloading all the processes selected by the searching criteria’s to an excel document Below is an explanation of the data appearing in the processes panel: At the table header, the column names where the first column # can be used for arranging the table by ascending or descending order. At the bottom of the table, the number of columns in the selected section appears, as well as a navigator that moves to the following processes. ColumnDescription#A unique number of the operation in the systemCreatedDate and time the process was created [time the form was sent to the client]ProjectThe project which the operation is associated toDestinationThe recipient of the process: usually an email address or a phone number. Note: the destination column is sometimes empty, in cases where the action was taken from an external system such as CRM or the action was taken directly from a browser and then no active sending action was actually performedAgentThe name of the agent who created the process. Sometimes when it comes from a computer creation [one created from CRM for example] the name of the system or a generic name will appearExpirationEach action created in the system has an expiration time, during which time the action will no longer be accessible to the representative and the end customer to whom the action was sent.DeletedDate and time when the action was deleted. An action will be deleted given three possible cases: – Expiration time has passed– Customer sent the form and copies were also sent to the representative and customer or/and was compiled into the operational systems– The agent or project manager deleted the processClient logged in Last date and time the customer opened the formSubmittedDate and time when the customer submitted the formTemplateTemplate nameAn indicatorGreen indicator: everything is fine – Red indicator: error on the operation [see details further down the page] Process details Clicking on the green plus to the left of the process opens the process details screen and displays the process update actions: This action will appear as long as the operation has not been deleted from the system. The buttons allow: Manual deletion of the process Open the form as client Open the form as agent Open a service call for support Bellow them, we have five panels contains the process data, detailed below: Document Displays the process IDs and form processing information. ColumnDescriptionClient View Doc Date and time when the form was viewed by the end client. Note: This is a different documentation than “client logged in”. The information indicates that the form has been fully opened in the client’s browser and that the form is ready for an update operation.Doc GeneratedDate and time of creating a digitally signed file.Doc StatusThe status of the doc created. ‘true’ if a doc was created. empty if not created yet.TokenA unique identifier of the operation in the system. Used as a unique identifier for the form sent to the client.WorkflowIf the action is part of a business process that includes several actions, this content is the unique identifier of the process in which this action is included.RecipientThe number of the recipient during the process. [if this action is part of a process]. Archive If there is a connection [integration] between Cellosign and the CRM system in the customer organization, this panel will show the details of the process archive, after the form has been sent and processed. ColumnDescriptionPostedDate and time when the archive was created (the process product is sent to the core system).Doc NumberDocument number, if received as a response from the core system in exchange for a successful archive.Archive StatusThe status of the archive. ‘true’ if a doc was created. ‘false’ if failed.Archive Failed Error The archive error as received from the core system. Mail to Agent & Mail to Client If copies of signed forms are sent to the email boxes of the organization or the client, their details will appear in these panels. ColumnDescriptionAgent/Client MailMail address of the agent/client.Note: in the template without recipients, when entering the email, a copy of the form will be automatically sent to the client after completion.PostedDate and time of sending.Post StatusThe status of sending. ‘true’ if a doc was sent. ‘false’ if failed.Note: this status indicates if the mail was sent from Cellosign but was not necessarily received at the mail address.Post Failed ErrorError description, if the error failed and was reported to the Cellosign application.
Date A date controller type allows to select a date or a date and time. When accessibility is activated, the date is hidden and only keyboard input is allowed. Add “$now” to default value in order to inject the date (or date time) that the transaction has been created into the field. Values & Display Select the “Add Time” check box to add both date and time. By default the checkbox is unchecked. Types and Validation It is possible to apply limits on the minimum and maximum date. In the example above, the date controller will allow dates that are less than one month older than today and less than tomorrow. If we want to apply birth date selection and make sure the age is at least 18 years, we will enter “-18” in the “Maximum date” in the “Years” field. “Date format” field is used to choose the date and time format. Conditional permissions When checking conditions on a date type controller, the following options are displayed: Greater thanAfter a dateLess thanEarlier than a date Input control for validation accepts a format to calculate future or past against current date, for example make sure that contact is at least 18 years old. In the example above the parameter is set to “-18y”. As result, the dependency will be activated if the value in the date field is earlier than 18 years ago. The possible values for this field are: “y” for year, “m” for month, “w” for week and “d” for day, all in positive or negative values. User experience Date and time needs to be actively selected. To capture current date and time, user requires to select “Now” or “Today” (when time is required as well). Default selection time is “00:00”
Custom PDF template In the HTML template it is possible to configure a unique header and footer for final PDF file under “Custom PDF template” section. Custom header configurationWhen set to ON header editor will be opened. Custom footer configurationWhen set to ON footer editor will be opened. Header and footer have the same editor settings and the description below is relevant to both of them. The editor supports different design tools such as: Text style, format and size Text and background color Bold, Italic, Underline Ranked and numbered lists including indents Direction and alignment of the text Links (website addresses / emails), etc You can enter directly in the content editor by writing texts. Placeholders Header and footer configuration can use dynamic content from the form and project dataset such as name, logo. Use the Placeholder button to attach values from project parameters, print parameters or template fields into header or footer. Barcode Use the Barcode button to add the barcode to header or footer based on the value of the selected source field from the template. Upload Image It is possible to use the project logo and the template image in header and footer or to upload your own image. When uploading the image first choose the file from the selected location. Then go to Advanced tab and set width, height and alignment settings. Preview Click the Preview button to see the example of the page with your header and footer configurations.
Reference Articles Accessibility Privacy statement Terms and conditions Accessibility Accessibility statement An accessible website is a website that allows people with disabilities and older people to view a web page with the same level of efficiency and enjoyment as other user. About 20 to 25 percent of the population encounter difficulties using the Internet and may benefit from more accessible Internet content. We at Republix believe in and works for equal opportunities in the Internet space for those with various disabilities and/or who use assistive technologies to use a computer, tablets and mobile devices. Website accessibility The site provides the general public with accessible content as much as possible. We work to update and implement the accessibility rules as much as possible, in accordance with the principles of the accessibility standard. Republix form content are tested with NVDA screen readers on top of the following browsers on their latest editions chromium Firefox Safari This website complies with the requirements of the Equal Rights Regulations for people with disabilities (accessibility adjustments to the service), the website complies with the recommendations of the Israeli standard [5568] for content accessibility on the Internet at AA level. How to browse the site with accessible mode Open the menu at the top of the page and toggle on “Activate accessibility”. When activated, form entries and texts will display a distinct border when elements are on focus. You can navigate forward using the TAB button. To navigate back, press the SHIFT + TAB key combination. To get the best browsing experience with screen reader software, we recommend using the latest NVDA software. Changing colors From the top menu toggle :Monochrome” to change the site’s colors for for comfortable and easy reading. Known issues There are currently no known accessibility issues on the site. Did you encounter a problem with the site? Please submit a ticket to our support team and we will be happy to help. Guide Cellosign is an accessible product in AA standard. However, in order for the forms and business processes to be accessible to the end users, a number of basic rules must be followed. Controllers Each visible (not hidden) controller in the form should have a field label and an additional description if necessary. Note: in Paragraph controller, if you use copied content, make sure that the “design” is not copied as well. Before pasting the content, you must first transfer the content through the Notepad software, which will clean the CSS styling, and then you can paste the text into the content editor. Images For the uploaded images, you must enter a value for accessibility, a text indicating what the image is, for example: In the case of a logo: the logo and company name must be specified. In the case of a signature image it must be stated: “the signature of” and the full name of the signer and his position. In the case of inserting images in the integration, an “Alt” tag must be applied to each image that is uploaded to the form. Headers labelling Emphasis should be placed on the structure of the document in terms of headers. The reference to headers labelling is very similar to the implementation of a document in WORD for example. See the example below. When using the header labelling as shown in the example, the end user’s browser will automatically adjust the text size, without further intervention. Should try to avoid using a specific font size and leave it only for exceptional cases. HTML developers can use a code editor to make additional labelling as shown here. Colorfulness The rule of thumb for color is maintaining contrast. Cellosign application for the end user comes with a built-in accessibility menu that also includes contrast, keyboard support and more. However, the starting point of an initial display for the form is to maintain a contrast of colors, for example dark text on a light color. In the picture here, the implementation of the colors is not correct since there is no high contrast between the background and the text. As a general rule, try to avoid different backgrounds than the default. Links Links in a paragraph field must be labelled according to the type of link. For a link to a website, select the text, click on the link icon, select “URL” and enter the desired address, for example: https://support.cellosign.com/. For the link to send an email, select the text, click on the link icon, select “E-mail” and add the address for sending an email, for example: support@cellosign.com. CSS In the Cellosign template, it is possible to implement CSS tags for use in the form elements. This option is open for the implementers with appropriate knowledge. Here are some highlights: The use of CSS is under the responsibility of the customer. We do not provide support for changes made to this component for accessibility or in general. Do not use image elements for backgrounds. If changes were made to the colors of the components, it is recommended to use a contrast test to make sure that the changes did not affect the accessibility of the form Client side In order for the clients to activate the accessibility of the received form they need to open the “Support and Accessibility Menu” from the top corner of the form and mark the “Activate accessibility” check box. Privacy statement Introduction This privacy statement (“Statement”) applies to Republix Ltd. which develop and operate the Cellosign system (together “Company” “we,” or “us” and the “System”). The security and privacy of your information are very important to us. Whether you are using one of our services as a cust-omer, potential customer, or just visiting our website, we want you to trust us with managing and protecting the information that you provide us with. We have prepared this statement to explain more about who we are and how we collect and manage your information. This site is a general audience site which is neither designed nor intended to collect personal information from children and/or minors. In order to ensure compliance with the provisions of the law, children under the age of 13 should not provide use this site or the System. By using any of our products or services (including our website) and/or by agreeing to this Statement, e.g., in the context of registering for any of our services or by any other means, you understand and acknowledge that we will collect and use Personal Data as described in this Statement. It is important to note that this statement applies only to the data which is being collected and processed in our website by the company. Cellosign System is a product of the Company, which allows Company’s customers to easily create and manage forms for the collection of data. It should be emphasized, that the Company is not the owner of such data, is not allowed to use any of this data and has no control regarding the use of this data. Any inquiry or complaint regarding the data collected by any form in the system should be addressed to the relevant company/organization which is the owner of the data. Who we are and how can you contact us Republix Ltd. Kibutz Kefar Szold, pob180, 12230 Israel Phone +972 -525-794-833 Email Info@Cellosign.com While you are visiting our website, we might collect some information about your use in our website for our purposes, as set forth by this Privacy Statement. Therefore, and with regard to any such Personal Data collected, we are deemed as the Controller for GDPR purposes. Questions, comments, requests and complaints regarding this Statement and the information we hold are welcome and should be addressed to us by using the contact details above. All requests will be dealt with promptly and efficiently. You have the right to make a complaint at any time to the relevant supervisory authority for data protection issues. however, we will appreciate the chance to deal with your concerns before you approach the authorities, so please feel free to contact us in the first instance. Information we may collect from you “Personal Data”, or personal information, means any information about an individual from which that person can be identified. We collect Personal Data from you voluntarily when you provide such Personal Data to us, or via our services and websites with which you voluntarily interact. We may also obtain such Personal Data about you as may be provided to us in the course of our legitimate business activities. You do not have to provide us with your information, but in some cases, if you do not, it may mean that you are unable to use our services. For example, we may be unable to complete a requested “contact form” inquiry, unless you’ll provide us with your contact details. When you use our website or services and choose voluntarily to provide us with your information, we might collect and process the following information: Identity Data – including full name, username or any similar identifier, title, date of birth and gender and any other information provided by you upon your sole discretion. Contact Data – including email address and telephone numbers. Usage Data – includes information about how you use our website and services. Technical Data – includes internet protocol (IP) address, the device you are using, browser type and version, screen resolution, time zone setting and location, browser plug-in types and versions, operating system and platform and other technology on the devices you use to access this website. Marketing and Communications Data – includes your preferences in receiving marketing from us and our third parties and your communication preferences. We also collect, use and share Aggregated Data such as statistical or demographic data for any purpose. Aggregated Data may be derived from your Personal Data but is not reveal your identity. How is your Personal Data Collected We use different methods to collect data from and about you, including through: Direct interactions – You may give us your Identity, Contact and Financial Data by filling in forms (e.g. “Contact Us” or “Newsletter Subscription”, etc.) or by corresponding with us by phone, email or otherwise. Automated technologies or interactions – As you interact with our website or any other system operated by us, we may automatically collect Personal Data (please refer to the description below, under “Cookies Usage”). Third parties or publicly available sources – We may receive Personal Data about you from various third parties and public sources, e.g.: advertising and social networks, analytics providers, search information providers. Cookies Usage Like many other websites, our website may use Cookies or Other Technologies (such as “pixel tags”, “web beacons”, links in emails, JavaScript, device IDs assigned by Google or Apple, or similar technologies, collectively “Other Technologies”). Cookies are a small text file that is placed onto an Internet user’s web browser or device and is used to remember as well as obtain information about that party. Cookies and Other Technologies allow us and third parties to obtain information about your visits to our website, including to analyze your visiting patterns, and to deliver online and mobile advertisements, messages, and content for us and others that are specific to your interests. In addition, Cookies may be used on the site in order to improve your experience. We may use various types of Cookies: Essential Cookies – which are necessary for the site to work properly; Functional Cookies – designated to save your settings on the site – your language preference or other view preferences; Session Cookies – used to support the functionality of the website – such Cookies are stored only temporarily during a browsing session and are deleted from your device when you close the browser. Targeting Cookies – these cookies are used to collect information from you to help us to improve our products and services as well as serve you with targeted advertisements that we believe will be relevant to you. Social networks Cookies – Social Plug-In Cookies (e.g. Facebook) enabling sharing of information with your social networks accounts to be smooth and seamless. Analytics Cookies – give us aggregated information which enables us to improve the way our website works, e.g. Google analytics. Please note that the data collected by use of Cookies may be linked to and combined with any other data, including Personal Data. Managing cookies and opting out: aside from the Essential Cookies described above, you can always choose to configure your browser to reject all cookies or notify you when a cookie is set, but sometimes in that case, certain services, features, and functionality in our website may not be available to you. You can always delete your browser history in order to delete any cookies from your computer. The Legal Basis for the usage of your Personal Data We will only process and use your Personal Data when the law allows us to, i.e. when we have a Lawful Basis for such usage. Such lawful and legal basis can be any of the following: Processing actions which are related to your reservations and/or requests, to carry out our obligations arising from any contracts entered between you and us. For example, contacting you per “Contact” form filled by you; our use of your information is necessary to meet responsibilities we have to our regulators, tax officials, law enforcement, or otherwise meet our legal responsibilities; our use of your information is in our legitimate interest as a commercial organization. For example, to operate and improve our services and to keep people informed about our products and services (including for profiling and targeted advertising). In these cases, we will look after your information at all times in a way that is proportionate and respects your privacy rights, making sure our legitimate interest is not overridden by your interests or fundamental rights and freedoms; You have provided us with your consent for the process of your Personal Data, upon your sole discretion and free will to use our website for making online purchases. In general, and as detailed above, we do not rely on consent as a legal basis for processing your Personal Data. Yet, in any case in which you have provided your consent to our processing of your information, you can withdraw this consent at any time by contacting us through the contact details provided above. The purposes of the processing We might use your data in order to: enable you to use our website and services in the most effective way, including the personalization of your experience by presenting content tailored to your interests; to meet or comply with any applicable rules, laws, regulations, codes of practice or guidelines issued by any legal or regulatory body; assess or evaluate the effectiveness of our system and services, as well as any technical and organizational measures designated for the protection of your Personal Data; protect our rights and legitimate interests, as well as defend against any lawsuit, legal claim or complaint; to conduct any other activities that are required to provide our services. Transfer and disclosure of Personal Data We are not in the business of selling your Personal Data. However, we may disclose your Personal Data to third parties in a variety of circumstances in the ordinary course of operating our business, such as: Disclosure of Personal Data to third-party service providers, providing us with services supporting our website and ordinary course of business, e.g. system, storage and computing services; Use of third-party services supporting our marketing efforts, in accordance with applicable law; When we have a legal obligation to do so, or when where are allowed to do so under our legitimate interests. In any such transfer we will take steps to make sure such transfer is carefully managed to protect your privacy rights: transfers within our group and affiliates, will be subject to an agreement / policies and procedures made to ensure that your data receives an adequate and consistent level of protection as required by applicable law; transfers to any subcontractor or processor will be subject to contractual terms ensuring the security and protection of any Personal Data under any such sub-processor, in accordance with applicable law provisions; any transfer of data which originates in the European Union (“EU”) to a country outside of the European Economic Area (EEA), shall be made in compliance with the provisions of chapter 5 of the GDPR. Such transfer can be made to countries which are recognized as providing an adequate level of legal protection or where we can be satisfied that alternative arrangements are in place to protect your privacy rights, e.g. the EU-US Privacy Shield; any requests for information we receive from law enforcement or regulators will be carefully validated before the disclosure of any Personal Data. Links to other sites Our website may include links to third-party websites, plug-ins and applications. Clicking on those links or enabling those connections may allow third parties to collect or share data about you. We do not control these third-party websites and are not responsible for their privacy statements. When you leave our website, we encourage you to read the privacy notice of every website you visit. How we secure your information We are committed to protecting the security of your Personal Data. We use a variety of security technologies and procedures to help protect your Personal Data from unauthorized access and use. However, the collection, transmission and storage of information can never be guaranteed to be completely secure. Yet, we take steps to ensure that appropriate security safeguards are in place to protect your information, and we will continue to revise our policies and implement additional security features. Retaining your information in our systems We will only retain your Personal Data for as long as necessary to fulfil the purposes we collected it for, including for the purposes of satisfying any legal, accounting, or reporting requirements. We have defined data retention priods for any data item in our systems, ensuring minimization of retention periods. In some circumstances we may anonymize your Personal Data (so that it can no longer be associated with you) for research or statistical purposes in which case we may save and use this information indefinitely without further notice to you. Data Subjects’ rights under EU data protection laws – GDPR Under EU law, EU residents and individuals, have certain rights to apply to us to provide information or make amendments to how we process data relating them: right to access your Personal Data – you can ask us to confirm whether or not we have and use your Personal Data, and if so, you can ask for a copy of your data; right to correct your Personal Data – you can ask us to correct any of your Personal Data which is incorrect, after verifying the accuracy of the data first; right to erase your Personal Data – you can ask us to erase your Personal Data if you think we no longer need to use it for the purpose we collected it from you. you can also ask for such erasure in any case in which the process of your data was based on your consent, or where we have used it unlawfully or where we are subjsect to a legal obligation to erase your Personal Data. any request for such erasure will be subject to our obligations under the law (e.g. our obligation to keep some records for tax or customs purposes); right to restrict our use in your Personal Data – you can ask us to restrict our use of your Personal Data in certain circumstances; right to object to how we use your Personal Data – you can object to any use of your Personal Data which we have justified by our legitimate interest if you believe your fundamental rights and freedoms to data protection outweigh our legitimate interest in using the information; you can always require us to refrain from using your data for direct marketing purposes; you can ask us to transfer your information to another organization and/or provide you with a copy of your Personal Data. We may not always be able to do what you have asked, for example, if it would impact the duty of confidentiality we owe to others, or if we are otherwise legally entitled to deal with the request in a different way. However, we encourage you to contact us with any such request, and we will be happy to assist you. Special Notification for California Residents Individual customers who reside in California and have provided their personal information to us may request information about our disclosures of certain categories of personal information to third parties for their direct marketing purposes. Such requests must be submitted to us through the contact information Specified above. Changes to this Privacy Statement We reserve the right to change this statement from time to time at our sole discretion. If we make any changes, we will post those changes here so that you can see what information we gather, how we might use that information and in what circumstances we may disclose it. By continuing to use our site or our services or otherwise provide data after we post any such changes, you accept and agree to this statement as modified. Effective as for August 2019 Terms and conditions
Security settings Allow form in IFrameWhen checked Cellosign will be allowed to be hosted as an IFrame.Origins Regex field is opened.Default: UncheckedOrigins RegexOrigins can be configured as regex pattern to adapt to one or many domains. Default is any domain.AutologinWhen checked the login to the system will be performed automatically from outside using API. Default: UncheckedPassword renewalsWhen checked all the users under the same project will have to renewal the password after X days defined in the Interval field.Default: UncheckedIntervalInterval for password renewals in days.Default: 365 Password minimum lengthDefault: 8 charsRequire at least one capital letterDefault: UncheckedRequire at least one digitDefault: UncheckedRequire at least one special characterDefault: Unchecked PolicyThere are two types of policies:– Lock: user’s account will be locked after the number of failed logins and the project manager will have to unlock the user.– Temporary lock: user’s account will be locked for X minutes and then will be able to try again.Default: LockLock account after failed login attemptsNumber of retries for user to login before the account is locked.Default: 5Account will be locked for [minutes]In case of “Temporary lock” the number of minutes to wait until the account is unlocked.Default: 5 User application logout [minutes]User application logout after X minutes if there is no activity.Default: 30 Client application logout [minutes]Client application logout after X minutes if there is no activity.Default: 30 Failure purge intervalLapse time in days until completely remove failed successful transactions after completion.Default: 7 Success purge intervalLapse time in days until completely remove successful transactions after completion.Default: 2 Press “Save” button to save the changes. Note: for users with multiple projects the restricts of security policy will apply according to the highest security measures.
Projects Cellosign is a multi-tenant application, so it knows how to handle multiple clients (projects) in a way that produces complete separation between the various projects. The advantage of a project is complete separation between users, templates, logs, interfaces, tokens and a separate repository for custom code. The disadvantage of multiple projects for the client is mainly when using functionality that is not out-of-the-box because then in fact each project manages a separate code repository. Let’s take for example a case where requests from Cellosign to SMTP or SMS server must go through PROXY. In such a case, a specific code should be written for the proxy and be duplicated and maintained for each environment separately. Moreover, the API for our interfaces include the project code in the URL, which means that the client will have to maintain several different repositories in order to communicate with the Cellosign servers. If the main purpose of the separation is for access to templates and performed actions, you can use the functionality of teams because it allows you to associate users, templates and actions to a team. Articles Messages settings Security settings Brand settings Session settings MFA settings Messages settings Post signed document to agentIf this option is checked, an agent that sent the action to the customer will receive a signed copy of the documents to their email address (PDF, Meta file and attached files). Archive failed messages also will be sent to this address.Default: CheckedE-mail addresses to send signed docsPermanent email addresses that will receive signed documents (PDF, Meta file and attached files) from all the templates in the system. These addresses will be added in addition to the addresses defined in the template. Archive failed messages also will be sent to these addresses.Send logs and errors to this addressPermanent email addresses that will receive system errors.Client mail to reply e-mails toCompany’s email address for correspondence that comes out of the Cellosign application such as signed copies for customers. The address is used as a reply to if the customer replies to the email.Phone number/Text that appears as the SMS senderNumber or name that will appear as a sender in messages. The text should be Latin characters only, upper case and without spaces. Security settings Allow form in IFrameWhen checked Cellosign will be allowed to be hosted as an IFrame.Origins Regex field is opened.Default: UncheckedOrigins RegexOrigins can be configured as regex pattern to adapt to one or many domains. Default is any domain.AutologinWhen checked the login to the system will be performed automatically from outside using API. Default: UncheckedPassword renewalsWhen checked all the users under the same project will have to renewal the password after X days defined in the Interval field.Default: UncheckedIntervalInterval for password renewals in days.Default: 365 Password minimum lengthDefault: 8 charsRequire at least one capital letterDefault: UncheckedRequire at least one digitDefault: UncheckedRequire at least one special characterDefault: Unchecked PolicyThere are two types of policies:– Lock: user’s account will be locked after the number of failed logins and the project manager will have to unlock the user.– Temporary lock: user’s account will be locked for X minutes and then will be able to try again.Default: LockLock account after failed login attemptsNumber of retries for user to login before the account is locked.Default: 5Account will be locked for [minutes]In case of “Temporary lock” the number of minutes to wait until the account is unlocked.Default: 5 User application logout [minutes]User application logout after X minutes if there is no activity.Default: 30 Client application logout [minutes]Client application logout after X minutes if there is no activity.Default: 30 Failure purge intervalLapse time in days until completely remove failed successful transactions after completion.Default: 7 Success purge intervalLapse time in days until completely remove successful transactions after completion.Default: 2 Press “Save” button to save the changes. Note: for users with multiple projects the restricts of security policy will apply according to the highest security measures. Brand settings Language settingsSelect an interface language. For all interfaces and applications in the project.The language is also applied to the form behaviour, left to right text and mobile view.Default: HebrewLogoUpload the company logo. The logo will appear in various forms and applications.For proper visibility, it is recommended that the logo be transparent and up to 250px in width and height.For more information about the logo appearance see below.Company nameFull name of the company for correspondence that comes out of the Cellosign application, such as signed copies for customers. Postal addressFull postal address of the company for correspondence that comes out of the Cellosign application, such as customer’s invitation email.Phone numberCompany’s phone number for correspondence that comes out of the Cellosign application, such as signed copies for customers.Website addressWebsite address of the company for correspondence that comes out of the Cellosign application, such as customer’s invitation email. Logo appearance In HTML and Hybrid templates the logo will appear in the show agent screen when starting the template along with the template name and the Start button. From the client side it will be shown when opening the form link and in the form header. In the HTML template only it also will be added to the header of the final PDF. For all the types of templates it will appear in the invitation email along with an invitation text and “Click to Fill Form” button. After the form submission the logo will be shown at the final screen with the transaction token. Session settings Allow agent to add file into sessionFor occasional operations (Ad hoc form), allow the agent to upload a PDF file.Default: CheckedAllow agent to add fields on the fly into sessionFor occasional actions (Ad hoc form), allow the agent to add fields to the form.Default: CheckedSession expiry time (days)Default timeout for actions created in the application. Select the value in days (up to 40 days).Default: 1 Note: Templates also have Expiration time settings. For more information see “Templates“AttachmentsDefault file attachment extensions for all the templates and ad hoc forms.Note: It can be overridden on the Template level.For more information see “Controller’s Editor“ MFA settings Why would I want to use this? Because user/password is sometimes just not enough. Simply put, apart from hacking methods, the weakest chain in protecting our resources is …us. We tend to leave notes with our user and password on desk, push it through emails and text apps and we keep passwords to our most valuable resources easy to guess????♂️. Case your organization deploying on Cellosign sensitive clients, employees and company data and typically it is, we strongly advise to use this feature. Case your organization is bound to GDPR, ISO/SOC or other methodologies for security regulations such as ISO-27001, you would need to incorporate this feature into your operation nonetheless. Cellosign offers 2FA as a security module that can be plugged into your tool set with a click of a button. Please consult your success contact for activation of 2FA module or post a mail to service@cellosign.com. How does it work? Once 2FA module is enabled: login to Cellosign application and click on “project settings” (you will need Administrative permissions) Click “Activate MFA” on “MFA settings” pane That’s it! Once 2FA is activated, each user associated with the project, will be compelled to go through a process of selecting default Authentication method. Pane below is used to select and configure 2FA delivery method. Select delivery method Enter corresponding email/mobile number And click “Send code” Once you received code to your email/mobile device, enter the code to complete the authentication coupling. Case 2FA method and activation needs to be changed. Login to “Profile” tab, scroll MFA section Click on “MFA configuration” Follow activation process on-screen
Brand settings Language settingsSelect an interface language. For all interfaces and applications in the project.The language is also applied to the form behaviour, left to right text and mobile view.Default: HebrewLogoUpload the company logo. The logo will appear in various forms and applications.For proper visibility, it is recommended that the logo be transparent and up to 250px in width and height.For more information about the logo appearance see below.Company nameFull name of the company for correspondence that comes out of the Cellosign application, such as signed copies for customers. Postal addressFull postal address of the company for correspondence that comes out of the Cellosign application, such as customer’s invitation email.Phone numberCompany’s phone number for correspondence that comes out of the Cellosign application, such as signed copies for customers.Website addressWebsite address of the company for correspondence that comes out of the Cellosign application, such as customer’s invitation email. Logo appearance In HTML and Hybrid templates the logo will appear in the show agent screen when starting the template along with the template name and the Start button. From the client side it will be shown when opening the form link and in the form header. In the HTML template only it also will be added to the header of the final PDF. For all the types of templates it will appear in the invitation email along with an invitation text and “Click to Fill Form” button. After the form submission the logo will be shown at the final screen with the transaction token.
List of values A form element designated for selecting values from a list. There are two ways to store values within a list: 1.Manually typing the values within the list controller itself. (The label and the stored values will be the same). 2.Connecting the list controller to a dictionary (Unlike the first method, this method enables to create a distinction between that displayed text and its stored value). A list of values may also be cascaded while selecting a value from one element will affect available values on another list of values. For example, if the selected value from one list of states is “California”, then the other list of cities controller will filter list so that only cities within California are displayed such as: Los Angeles, San Francisco, Sacramento, etc. Configuration LabelDescriptionAdd a tagAdd manually list of values, click enter or comma to enter new valueSelect dictionaryCouple builtin dictionary with the template. Can be useful when list of values is deployed in many templates and single source need to be managed. For more information see “Dictionaries“.Multi selectEnable multi value selection to pick from the list of valuesAdd default valueFrom the dictionary or the tags, add default value that will be propagated into a form. May select many if field is configured as multi selectFilter listSelect the list of values to link the lists such as cities and streets, only if the values in the dictionaries have the same groups.AJAXSelect to enable an autocomplete in the search box of the list of values controller. If a data dictionary is selected, the functionality exists by default and cannot be cancelled.*In large lists, it is recommended to select “AJAX” in order not to overload the form.Search typeIf “AJAX” is switched on then we have two options for search values remotely.The default option is “Fuzzy”. User may override default. See notes on search types below Search types Fuzzy Search Definition: Fuzzy search is a technique used to find matches to a query that are not exact. It is particularly useful for handling misspellings, typos, or variations in word forms. The goal is to return results that are close to the search term based on certain algorithms or criteria. Example: Suppose you are searching for the term “apple” in a database. With a fuzzy search, if you accidentally type “aple” or “appl”, the search engine might still return results for “apple” because it recognizes that the intended word is similar to the input. Strict Search Definition: Strict search, also known as exact search, only returns results that exactly match the search query. There is no tolerance for variations or misspellings in this type of search. Example: Using the same example, if you search for “apple” with a strict search, you will only get results that contain the exact or partial term “apple”. If you type “aple” you will not get any results. If you type “appl” you will get results. Use Cases: Searching for specific technical terms or codes. Databases where precision is crucial (e.g., legal documents, scientific research). Situations where accuracy is more important than flexibility in matching terms. Comparison Fuzzy Search: Flexible and tolerant to errors. May return a broader set of results. Useful for improving user experience in search interfaces. Strict Search: Requires exact input. Ensures precision and accuracy in results. Useful in contexts where exact matches are necessary. Notes and gotchas When connected to dictionary, note that a dictionary include “text” and “value” columns. While the textual representation is selected it is actually holding the underlying value. As a result on a signed document produced from Cellosign the text value will appear and the underlying value is transferred as a result in the archive process. When applying multi-select on PDF templates, make sure to leave enough room for selection, also note that on a PDF result that values are concatenated on a single line with a comma separating each of the selected values. Make sure to have enough room as needed, otherwise your values will be truncated from the archived PDF. When list of values is coupled with a dictionary and you wish to assign a value upon a certain condition, make sure that the value that you are adding is in the “value” column in the dictionary and not from the “text” column (The “text” is a label that only affects the displayed text). Conditional permissions When checking conditions on the list type controller, the following options are displayed: EqualIf the list controller is exactly equal to the entered value.Not EqualIf the list controller is not equal to the entered value.EmptyIf the list controller has no value.Not EmptyIf there is any selected value in the list controller. Conditional values When using conditional values in the list of values that is connected to a dictionary, you need to use the “Values” column and not the “Text” column. See below the example of the list controller using the dictionary “Levels” with values 1, 2 and 3. Depending on the selected radio button, the value in the list controller will be set to “Level 1”, “Level 2” or “Level 3”. Client side:
Session settings Allow agent to add file into sessionFor occasional operations (Ad hoc form), allow the agent to upload a PDF file.Default: CheckedAllow agent to add fields on the fly into sessionFor occasional actions (Ad hoc form), allow the agent to add fields to the form.Default: CheckedSession expiry time (days)Default timeout for actions created in the application. Select the value in days (up to 40 days).Default: 1 Note: Templates also have Expiration time settings. For more information see “Templates“AttachmentsDefault file attachment extensions for all the templates and ad hoc forms.Note: It can be overridden on the Template level.For more information see “Controller’s Editor“
Integrations Articles Apps and databases connector API SMTP SMS SECRETS STORAGE File Cleansing SSO Payment integration Registrar of Companies integration Apps and databases connector Aside from API integrations, connector is a method in Cellosign to interact with your core apps and database with no additional code. Once Cellosign and your data source are coupled, an implementation of business processes can be carried out my mapping your data source objects (or tables) using drags and drop and clicks by, hence no code. With an integration using database connectors Cellosign is able to provide one way CRUD operations (Create, Read, Update and Delete operations) seamlessly. With an integration using an application connector, such as for Salesforce, you would be able to do the above plus the ability to trigger actions directly from your application. Salesforce Cellosign integration with your Salesforce instance provides two-way communication channel where Cellosign can perform Create, Read, Update and Delete operations on your Salesforce objects. In addition with Cellosign app for Salesforce installed on your instance, you will also be able to customize Salesforce Webflows to initiate business process in Cellosign. Resilience We understand that the typical organization has more than one data source to interact with in a business process, for example business process can be initiated from Salesforce, additional data should be fetched from another source by API and so on. Having said that, our approach to application connector is to grant you with the possibility to integrate with any number of data sources and APIs. Before we start Salesforce integration is part of Cellosign PRO bundle and requires activation. Please contact your CS contact for activation. In the activation process, you will be receiving in mail a unique URL to install Cellosign application for Salesforce. About this guide Salesforce and Cellosign requires two configurations: Configure your Salesforce instance in Cellosign. This is a mandatory step Install and configure Cellosign Salesforce package in your Salesforce instance. This is an optional step Configure your Salesforce instance in Cellosign At the end of this configuration you will be able to create templates in Cellosign that are connected with your Salesforce instance to Get data from objects, update Salesforce objects and upload files to Content version. To do that we need to create Connected app and then couple it on Cellosign application STEP 1: Create a Auth2 connected app Login to your Salesforce instance Click setup on at the top right corner drop down and search for “App manager” Click on “New connected app” Insert name, and email Check Enable OAuth settings Insert Callback url. In case integration is made on Cellosign production enter “https://app.cellosign.com/callback/salesforce-callback”, else if it’s integrated with pre-production insert “https://preprod.cellosign.com/callback/salesforce-callback” aelect Selected OAuth Scopes: Manage user data via APIs (api), Manage user data via Web browsers (web), Full access (full), Perform requests at any time (refresh_token, offline_access), Access unique user identifiers (openid) Check “Require Secret for Web Server Flow” and “Require Secret for Refresh Token Flow“ Click Save Generate “Initial Access Token“ Click on “Manage consumer details”, Verify your account and keep “Consumer Key” and “Consumer Secret” STEP 2: Couple Connected app with Cellosign In Cellosign application dashboard, click Integrations on the left toolbar, click “Add” on Salesforce pane and next to start the process Alias and address Enter an application alias. This alias will be used for implementing business processes, if there’s more than one integration give that meaningful name to avoid confusion. Enter your Salesforce address Consumer key and secret Copy your Consumer key and secret from your connected app and insert on the following pane Verify callback and login Follow on screen instructions for validating Cellosign callback URL on your connected app and click login In case you don’t see “Approve Salesforce login” pane, follow on screen instructions, most common reasons are: You will need to allow popups on your browser Consumer or Secret keys are incorrect Verifying installation After a successful setup you will be able to see a valid connection on Cellosign integration pane for Salesforce Troubleshoot In case of errors in completing this stage Make sure settings for Connected app are correct. Check token policy. In Salesforce search for “Manage connected apps”, locate your app. make sure “Refresh Token Policy” is set to “Refresh token is valid until revoked” Install and configure Cellosign Salesforce package in your Salesforce instance At the end of this configuration you will be able to create flows in Salesforce and connect it with Cellosign templates to: Create new interactive transactions Create Signed document (SEAL) Revoke transaction To install this package, first we need to create a “Service user” in Cellosign. Add user and retain Access token. Install Package by adding the url below to your salesforce url. https://yourinstance.salesforce.com/packaging/installPackage.apexp?p0=04t8d000000hYmq Select required profile and check “Acknowledge” for installing 3rd party package and click “Install” 4. Approve installation process. Check “grant access” and click “Continue” 5. Wait for the installation to complete [might take couple of minutes] and click done 6. Next. we need to configure the application. On setup left pane search’ lookup “custom settings” and click on “custom settings” page 7. Click on “Cellosign instance” and then click on “manage” on top pane and new on the next screen 8. Next we need to configure credentials point to Cellosign instance on the following screen LabelRequiredValueAPI TokenYesInsert here your user Token [Or service user token]. This token will be used to authenticate the request in CellosignAuthorization TypeYesInsert here “Bearer Token”Instance URLYesInsert your Cellosign base instance url. For example, for shared pre-production insert “https://preprod.cellosign.com” [Note: without “/” at the end of the url]TimeoutYesEnter “30,000” for 30 seconds timeout 9. Click “Save” when done. Next. Salesforce connection tab Synchronization pane Click on Gear icon and click on “Synchronization” pane. Use this function if you require to initiate new requests from Salesforce to Cellosign, first we need to enable synchronization. Otherwise, click the next tab. By checking Synchronization, template data [“Blueprints”] will be pushed from Cellosign to your Salesforce instance. This will enable to configure Salesforce actions [“flows”] and connect them with Cellosign templates. Use “Filter tags” option to sync only Cellosign templates that includes specific tags. If left blank, all templates within your project will be synced. Note: Sync occurs when saving a template. Connection test pane This pane serves two debug functions: Make sure objects are pulled and refreshed. Refresh occurs automatically every 24 hours, however if you have applied changes in your Salesforce schema (such as adding tables and columns) click on “Pull instance schema” for fetching Salesforce objects so they can become visible to business process consumers, such as template connector. Dump requests that were made from Salesforce to Cellosign. To find the request ID click Transactions board, lookup your transaction, expand the result. The request ID is displayed at “Request Parameters” pane. Copy and paste the “Request ID” into “Connection test” pane and click “Execute request”. As a result a JSON file will be dumped to your browser with the full body request Build Salesforce connected business process What we want to do here is build a template that can be initiated from Salesforce to Cellosign that inject Salesforce AccountID. Cellosign connector will: Get the request Fetch Account name and website address from Salesforce Post the invitation to the client Get updated data back [On client submit] and update Salesforce with: Updated data and signed document Build template Create new template, name it “Update account” Drag and drop 3 Text fields and name it “Account ID”, “Account name” and “Website” Also add signature field Click on Template integrations and “Connector” and click “Add Preset Connector”. Follow this guide to set it up. Eventually your PRESET connector should look as in the image below. Make sure to save the template and go to your Salesforce instance to connect it [next step]. Next we will build connector to update Account name and website on submit. Add new connector on “Submit” Next we will build connector to upload signed PDF and associate with it with account on submit. Add new connector on “Submit”. Save the connectors and the template. Connect Template to Salesforce In your Salesforce instance search for “blueprints” in top left search pane Click on template that was created “Update Account” Note: In case you don’t have “Description” or “Create Date” columns, simply click gear icon on the top row. Click “select fields to display” and add those to view. Click the Blue print name link. This view display the blueprint ID, Name and related fields. Note that on “Related fields” there are two fields created by default. “Invitation recipient email or phone number”. Will be used to post the request to clients email or phone Fill form field <AccountNumber> from table <Account> column. Will be used for mapping field into action Creating flow (trigger) in Salesforce At the end of this stage we will have a flow in Salesforce that is getting Account ID and posting request to Cellosign including: Blue print, Account is and client email. Flow should look as in the image below Click on Gear icon at the top right corner and then “Setup” On quick find (top left) search “flows” and enter “flows” view Click “New flow” at top right corner select “Screen flow” and click “Create” First we need to define flow variable that we can consume within the flow. On the left pane of flow view, click the left most icon “Toggle toolbox” Click “New resource” button” On the opened pane select “Variable” Insert “recordId” on “API Name” Select “Text” for “Date type” Check “Available for Input” at the bottom and click save Next, we need to define single parameter and collection of parameters flow variables that can consume blueprints data. Use “cellosign__ProcessParameter apex-defined” type for both. First we will create collections of parameters On flow toolbox: Add new resource Select “Variable” Insert “varProcessParameters” on “API name” Select “Apex defined” on Data type Check “Allow multiple values” Select “cellosign__ProcessParameters” on “Apex class” Click “Done” Carry out the same process for single parameter. Add new resource Select “Variable” Insert “varProcessParameter” on “API name” [Note: var name is singular] Select “Apex defined” on Data type Select “cellosign__ProcessParameters” on “Apex class” Click “Done” Next. on flow diagram Click on “Add element” and Add “Get records”. Insert “Get SF Account data” to label Select “Account” on “Object” field On field, select “Id” to match Account ID On “Operator” pick “equals” On “Value” pick the variable “recordId” we just created Click “Done” At this stage we need to connect the collection of parameters to Cellosign blueprints. On flow diagram Add “Assignment” On “Label” insert “Build Parameters” Now we need to add key/value pairs for the invitation and Account ID First, we assign Key/Value pair to single parameter flow variable, and then add that variable to our parameters collection variable. You can assign fixed values to parameter, or you can assign values from specific record field (see 3rd parameter assignment – we assign account name). To add key/value pairs: On “Variable” add “varProcessParameter.Key” from the dropdown Set Operator as “Equal Set Field blueprint ID for invitation. [This should be copied from blueprints parameters page] On “Variable” add “varProcessParameter.Value” from the dropdown Set Operator as “Equal” Set Field from Account > phone number On “Variable” add “varProcessParameters” from the dropdown Set Operator as “Equal” Set Field “varProcessParameter” [Note: there’s no “s” at the end, for single] Carry out the same procedure to add “Account ID”. Eventually, “Build parameters” pane should look like this: Save the pane. Next, add element “Action”. Blueprint ID – ID of blueprint you want to initiate a process for Cellosign API Service developer name. Type one of these: start_process, seal_process – start_process Parameters – your collection variable of process parameters – Run Immediate – (True/False) – will define to run action synchronously (True) or asynchronously (False). Click “Save” At this stage you may add any conditions, logs, on screen display before flow ends. Save the flow and enter Connect to action button Now we want to add a button to trigger a form submission to client. to do so follow these steps: On Salesforce app, search and select “Accounts” page Click gear icon on top right and select “Edit Object” On left pane, select “Buttons, links and actions” Click “New action” On “Action type” select “flow Select the flow we crated previously Update label “My update” and save Next we need to display this button on account page, for whenever is clicked, form will be submitted. On “Account Object manager”, click “Page layouts” and then “Account layout” Locate the Action created “My update” on top pane and drag it to “Salesforce Mobile and Lightning Experience Actions” And click save On account page you will find new button “My update”. Make sure you have mobile phone number on Account details and click “My update” to submit a form Now you should be receiving SMS with a link to form. If all configured correctly, you should see Account name and Website on the form. When form is submitted the data will be updated and PDF result is uploaded to Account related items. Methods Start This API initiates a new session process. This method is described above in details SEAL Similar to Start API (above) this API generate a new session. The differences are: Use key word “seal_process” for activation Response: since SEAL does not include interactive form, it does not include URLs as interactive session does. Instead, it includes the following response: { "id": "djE6czp0ZXN0ZW5nOm1lcHlMR3R4cmI=", "blueprint_id": "djE6dDp0ZXN0ZW5nOjQ3NzAwZTUxMjkzODQ2ZWJiZjQ4NmU3ZGU4ZmEzYTUy", "document": { "id": "mepyLGtxrb", "hash": "942adb09cda9d9602e4784513b14cff2" } } idEncoded unique id. Can be use later for delete APIblueprint_idTemplate blueprint used for the processDocument idClear text for unique idDocument hashPF Document hash. Hash can be used to verify the content when callback occurs Delete This API revoke a session. Follow these steps to configure a delete session: In flow menu, add an APEX action, Search for “Delete Cellosign Process” action type Add “delete_process” to first input value Add process id to revoke. Process id is received on response to “start_process” Add logic as needed and save On success, process will return HTTP 201 status code, Otherwise will return 4xx or 5xx response Limitations and known issues Currently Cellosign package for Salesforce include session level API. That is workflow, BPM process types cannot be created via this package Field level blueprints includes only fields that are mapped for inquiry through the connector Create new session currently doe’s not include specific address for OTP. However the address included with the blueprint can be used for both the invitation and the OTP. This feature will be included in future versions Data types specifications Salesforce datatypeHandling in CellosignPick listPicklist values are fetched using toLabel() api and not the API value Date and date timeDate and datetime objects in Salesforce are stored in ISO format. Using the connector you have the option to format the value to your requirementTimeNumbersCurrencyBooleanText and long texts Process Logs Cellosign installed package includes full log for APEX action that includes: Request URL, Body, response and time stamp for initiate and response. To view logs, type “Create Process Logs” is Salesforce quick search. Additional data Following are object classes with Cellosign application that can be consumed for implementation. Class ProcessRequest LabelNametyperequireBlueprint IdblueprintIdStringTrueParametersparamsList of ProcessParameterTrueRun ImmediaterunImmediateBooleanTrueCellosign Api service developer nameCelloSignMdtNameStringtrue Class ProcessParameter LabelNametyperequireKeyKeyStringTrueValueValueStringTrue Class ProcessResponse LabelNametypeResultsresItemsList of ProcessResponseItem Class ProcessResponseItem: LabelDescriptiontypeisSuccessProcess initiation statusBooleanerrorMessageerror message if failedStringprocessIdUnique process ID in cellosignStringformIdThis is reference to Token generated in CellosignStringclientUrlUrl that was submitted to clientString BDI This feature needs to be activated. Please inquire details with our support. BDI integration refers to “Coface bdi“. This integration include out-the-box data exchange with coface based on data inserted into a form. The flow is: User insert a data, i.e. loan amount, id etc.. Data is posted securely to coface Result is returned to form so further implementation can be carried out such as hide or show parts of the form based on success or failure What needs to be done prior to the following steps? Make sure you have an API account with BDI for personal check. make sure the following data handy: Username, password, Terminal ID, Credit provider code Make sure you have received clearance to use BDI from our support team How to set up BDI Once BDI is available for your disposal please carry out the following configuration Setup web-hook Login to cellosign app and click to add new web hook from web hook pane Provide a name for your integration Select type: “Get data from remote source” (Field change API) Turn off switch “Use implicit” Insert URL provided. Add the following header and corresponding values “X-BDI-TermID”: Value is the terminal ID provided from BDI “X-BDI-CreditProviderCode”: Value is your credit provider code you received from BDI In authentication section, Select “Basic” and enter the username and password you received from BDI Note: Parameters are encrypted and are not displayed in cellosign interface Template configuration Select the template that requires integration with BDI and follow these steps Open integrations tab Click “Add live connector” Select Webhook for source Select the webhook you created in previous stage (by name) Select the trigger: Field change or click. We advise to use click. Add the following fields to the mapper. make sure that the configuration includes the field name or alias exactly as in alias column (Note capital and small letters) AliasWhat it doesNotes and data validationFirstNameClient first nameOutgoing, MandatoryMake sure to set “Hebrew characters” only in field configurationLastNameClient last nameOutgoing, MandatoryMake sure to set “Hebrew characters” only in field configurationIDClient ID numberOutgoing, MandatoryMake sure to select Cellosign ID field resultThis is the options for returning values– “1” success (related to cwa_code)– “2” error. This represents a legitimate error. Details can be retrieved from the following parameters– “9999” Unexpected error. Interface not available or any technical error, Typically this is not related to client data.Incoming Mandatory.bdi_error_codeRetrieve value from “ErrCode” in “BDI_Error” objectIncoming, Optionalbdi_error_descRetrieve value from “ErrDescription” in “BDI_Error” objectIncoming, Optionalccr_error_codeRetrieve value from “Code” in “CCR_Error” objectIncoming, Optionalccr_error_descRetrieve value from “Description” in “CCR_Error” objectIncoming, Optionalccr_error_sevRetrieve value from “Severity” in “CCR_Error” objectIncoming, Optional Limitations interface support Israeli ID, Passport is not supported Interface is limited to personal check. Company Microsoft SQL [MSSQL] Coming soon. Integrating connector and template After completing a setup for application or database connector we need to integrate the connector into Cellosign Template. How does it work? On template connector level Cellosign includes 4 firing options that represents a life span of a transaction in Cellosign: PRESET: Fires when transaction is created LIVE: Fires as user is engaging with the form SUBMIT: Fires when user submits the form POST SUBMIT: T Fires after form is submitted PRESET Preset is initiated at time a session is created, given enough information injected into session, this setting can get data from your data source prior to engaging the end user. Preset includes only lookup (Read) operation. To set Preset Click on “Add Preset Connector” Select source and Instance Select Object (Table) Define the query for lookup. Values for query can be retrieved from: a “label” injected into process or a form field or a fixed value Define what happens case there are no results, one result or more then one result to match the query Define which column to fetch from your object and to which form field value is incorporated into Click save Best practice is to use automated scenarios such as PRESET whenever possible. Given sufficient and unique data, Cellosign will be able to get data from your data source. LIVE Live connector is similar to PRESET with the difference that it requires the end user interaction with the form. A practical scenario is that at the stage of processing the form we are missing some data, most common in self service scenarios. Note that although we have taken the necessary steps to secure your data source, the implementation should consider measure for protecting the data by requesting information known only for the end user. for example requesting only Account ID is not recommended. To setup LIVE connector, follow instructions on PRESET and apply activation on field change or button. “Change” trigger occurs when a value of field is changed by end user, such as typing account name “Click” is triggered on a button click. If you have a button mapped on your form, select it as trigger SUBMIT This is where Create, Update, Delete and File uploading operations occur. To setup SUBMIT operation: Click on “Add Submit Connector” Select source and Instance Select Object (Table) Select the operation: Create/Update/Delete/Upload files* Define the query for matching the record. (Not relevant for Create). Values for query can be retrieved from: a “label” injected into process or a form field or a fixed value Define what happens case there are no results, one result or more then one result to match the query Define which table columns to update (Not relevant for Delete and file upload) Click save Query conditions Each connector Lookup/Update/Delete requires a condition to match with the remote data source for which it will act upon [that is equivalent to SQL WHERE clause]. Condition for matching includes: Data source to match i.e Account ID Equation, i.e. Equal, true/false in case of boolean or contain/starts with in case of strings. What data it will the compare with. i.e constant, values already applied to form Apply order to Where clause in case we have multiple results Fields mapping This is the part when import of data is being made from remote data source into form. This functionality is relevant only for LOOKUPS [equivalent to SQL SELECT clause]. Fields mapping into form fields can be made: As is, directly from database column Converted using an editor Data conversions Conversion functionality is provided to Numbers and date-time data types. To convert date time select the relevant date time column, select date format option and pick the required format from the list. To convert number data type, select a number column: Apply Ceil to round up to integer Apply Floor to round down to integer Select currency format to apply a number with thousands separator, with or without decimal point Concatenation Use CONCAT feature to consolidate values from different table column to one string, simple example: first and last name. Concatenation can also include fixed values to get result such as: “Name: FirstName Last name, ID: ClientID.” Repeater Use this feature when LOOKUP is configured to expect multiple results such: as All Account contacts. In this case we may use repeater to consolidate a string for as many contacts as the connector pulls from the database. See the example above, it includes a CONCAT and REPEATER on contacts first and last name. Changes in integrations Occasionally you will be required to move integrations from one environment to another or modify integration end points. Connectors in Cellosign holding the identifiers of an integration and when moving around this needs to be updates. When changing the integration it becomes invalid in the template. You will be required to update the integration in the connector. Simply click on the connector’s edit button. Select the source, instance and click fix. In case of application connector as Salesforce make sure that the dataset is available as moving from one app to another you might not have the exact schema. Data mapping and conversions Purpose This document include data mapping and conversions made when fetched from remote data source into Cellosign forms. It includes all types of data sources: Applications, such as Salesforce and Databases, such as MSSQL. Conversion is being made regardless of the primitive features of data source. For instance in Salesforce Date time is formatted as ISO-8601 string, MSSQL has it’s proprietary format. Regardless of the source, Cellosign will made available mapping and conversions for you disposal as listed in this document. Limitations Conversions are only made when mapping is being made using “Formula” editor. In any other case the primitive will be fetched and displayed as is. Make sure to map data to the correct form field type in case that field is being made available for your client. For example if a date field is fetched and converted into a form field and client can edit it, it will be better be mapped to date field so the format can be consistently retained. Mapping and conversions PrimitiveConversion and format optionNotes and examplesNumberCeil. Rounds a number UP to the nearest integer,Ceil(1.1) = 2Ceil(-7.004) = -7Floor. Rounds a number DOWN to the nearest integerFloor(1.1) = 1Floor(-7.004) = -8Currency format float. Thousands separator with 2 decimal digits123456.7 converted to: 123,456.70Currency format integer. Thousands separator with no decimal digits123456.7 converted to: 123,456DateEU date format. dd/mm/yyyy28/02/2022US date format. mm/dd/yyyy 02/28/2022EU/US short month name. dd MMM yyyy 02 FEB 2022EU date time format. dd/mm/yyyy hh:mm28/02/2022 23:35US date time format. mm/dd/yyyy hh:mm02/28/2022 11:35PMEU short month name date time format dd MMM yyyy hh:mm02 FEB 2022 23:35US short month name date time format dd MMM yyyy hh:mm02 FEB 2022 11:35AM API Cellosign includes comprehensive set of RESTful API for both inbound and outbound traffic. The underlying concept is that the client core applications (such as CRM/ERP applications) are the system-of-proof. Meaning it is well informed by Cellosign regards business process activities. Let’s take for example an on boarding process that involves clients, back office and specialists that are attached to the process given the right conditions. Cellosign is perfectly able to report a status of each station as the process progress both by pull (querying) or by pushing it into your core app at the time of event. How does it happen? When a core application starts new business process (any) with an API call, it receives in response process keys specific to the process. Based on that set of keys, you will be able to pull data from Cellosign regards the process status. Also, if configured, our outbound API (aka webhooks) can post the data to the CRM Inbound Cellosign inbound APIs specifications are documented in API documentation (OpenApi). This document includes reference and Postman samples to get a quick jump-start. This folder includes samples for: Business cases Dictionary management using APIs On each page download collection and import it to your local postman. How to use Postman collection? The collection includes list of scenarios, To run these scenarios you will be required to setup couple of variables. After importing the collection, click on the variables section and edit the following items: project: enter the id of your project. To locate project id login to Cellosign application, your project id appears on the top right, next to your name token: enter your user token. To locate token, login to Cellosign application, click on the top right corner on your name and click “Profile”. scroll to the bottom, click “Show token” and copy the content. Outbound: Webhooks Webhook is an API call made from cellosign to to your application, this our method to keep your application on track in regards to business process. Webhooks are very flexible tool and if used correctly it can provide your organization a complete visibility on the whereabouts of your business process. Webhook types The table below lists types of webhooks, there are are different types of web hooks that serves different purposes. TypePurposePost business process result (Archive)request at the end of a business process. This web hook can be executed to deliver a business process products that includes at least signed document, form data, attachments etc.Get data from remote sourceGet data from 3rd party application based on changes carried out in form, while user editing it.Post callback after storage operationPost data to API after a storage call been executedPost notification when form is submittedPost data to API after a client submits a formPost notification when client logged in to formPost data when client logs in to a form, activated with click on SMS or EmailPost notification when form loaded on client browserPost data when client form is loaded and operationalPost notification when session is expiredPost data when transaction is expiredPost notification when session is deletedPost data when transaction is deletedPost notification when a new session created in workflowPost data when transaction is created. This is useful on business process that generates multiple transactionsSend SMSConfigure outbound SMS of your own. Can be used when your cellosign does not have a plugin for your provider. Note that the data structure id fixed. Setting up Webhook To configure a webhook, we basically need an Access to the remote end point and configure how it works. The table below details the configuration options for webhooks. Follow these steps to add Webhook: At the dashboard click integrations locate Webhooks integration pane click “Add” FieldWhat it’s for?AliasA readable name for the web hook. In some cases webhooks can be configured per business process, so provide meaningful nameTypeSelect webhook typeImplicit/ExplicitImplicit means that whenever a business process is completed, this webhook will fire off. Explicit means, don’t fire unless instructed. See below options for setting up explicit.urlInsert an API end point addressTimeoutSet timeout in seconds on the remote endpoint. If you know that your endpoint process takes time, increase the defaultverify sslIn case your address is deployed with https protocol it’s recommended that SSL handshake will be carried out successfully. Otherwise you can turn this off.HeadersIn case your endpoint required custom headers, click add and enter key/value pairsAuthenticationIt is recommended to use a mechanism for authenticating requests from Cellosign to your endpoint. For that we have couple of options:1. Basic authentication. Add user name and password. Cellosign will convert it to base64 according to Basic auth standard2. Custom authentication. Insert key/value pair for authentication3. Authenticate with Secret. This is a bearer token mechanism. See Secret documentation for detailsContent type, AcceptBy default Cellosign webhooks generates and accept JSON content. You may select these settings to be converted to XML. Note: This is a simple conversion from JSON to XML request body and vice versa, This is not WSDL/Soap operation.Request body exampleThis section displays how a standard body request data structure looks like, based on the webhook types. Each webhook type displays different body request example.Response successThis is an example of how the response from your endpoint should respond success.Response errorThis is an example of how the response from your endpoint should look like in case of an error.Save/DeleteSave the configuration or delete webhookTestClick this button will fire the sample above based on the configuration and will return the result to webhook pane. Explicitly/Implicitly Webhook implementation A webhook can be setup to fire off Implicitly that means every business processes will fire this integration. For example a webhook for Archive will be posted to your Endpoint when every business process within your project is completed. This is the recommended approach if indeed all your business process should end up in in this manner. However if there are different use cases, such as: separate endpoints or some business process does not need API calls, it is recommended to couple webhook with a business process Explicitly. To explicitly couple a webhook with business process we purpose two options: Manually connect it to specific template(s), which means, templates configuration will include explicit coupling with a webhook. See details for coupling webhook to template in webhook specific page Ad hoc integration for a business process: When the webhook is set to explicit the webhook pane display the integration code that can be added to create session request. Simply add the code to your request. All ad hoc integration can be add within the integrations Array. Note that the UUID represents specific webhook SMTP Cellosign includes the ability to post emails to users and clients for purpose of invitations, reminders, alerts etc. On cloud installations we use 3rd party providers to post and manage email traffic. Using our integrations you are able to integrate and deploy SMTP service of your organization. Why do I need this? There are number of reasons to integrate with your organization SMTP: Emails from cellosign are posted with cellosign’s sender such as “invite@cellosign.com”. Using custom SMTP will control the sender and better service to your clients Have tighter control on outbound email traffic and content You can add as many SMTP as you need to serve as fallback. For example, assume there are SMTP1 and SMTP2 integrations. In case SMTP1 fail to respond, Cellosign will automatically try to send it with SMTP2 integration. Also see below fallback option to trigger Cellosign SMTP service in case of failure. Setting up SMTP Follow these steps to add SMTP integration: At the dashboard click integrations locate SMTP integration pane click “Add” FieldWhat it’s for?AliasProvide an alias for integrationSenderInsert name that will appear as sender on Email. sender can be formatted for RFC 5322 specifics, for example: “Your company <email@company.com>”System wide fallbackIf fallback is turned then in case your SMTP fail to respond it will trigger Cellosign SMTP to make sure your emails to recipients will be posted.HostInsert host address or IPPortInsert port. * Note that Port 25 is considered harmful and it is not supported on cloud installations.SSLSwitch SSL on or off as required by your SMTP protocolTLSSwitch TLS on or off as required by your SMTP protocolAuthenticationSelect type of authentication: Simple, SASL XAUTH2, No Auth (See below)SecretIn case od SASL select secret from “Client secret” paneUserInsert user namePasswordInsert password. In case of SASL password is produced via secret integration Save the integration and test it by entering email address under “Recipient” and click “Test”. Authentication types “Simple” use the standard SMTP protocol for Authentication and require user and pasword”Simple use the standard SMTP protocol for Authentication and require user and pasword “SASL XAUTH2” option is a secured way to Authenticate mainly SMTP requests with services such as GMAIL, Office exchange etc. To use SAL XAUTH2 option, first you will need to define the Authentication method through secret integration and then connect your SMTP resource with the authentication. Note that regardless of Authentication method, the service is integrated over SMTP protocol to post emails. “No Auth” method does not require authentication at all. Be advised that this is not a recommended approach. In case your SMTP relay has no other way to connect with authentication please make sure to whiten relevant Cellosign IPs. NOTE: “SASL XAUTH2” IS DEPRECATING. DO NOT USE THIS OPTION SMS SMS are typically used when posting invitations to clients, reminders and also as an evidence for processing at the end of client engagement. Cellosign is typically bundled with SMS out of the box service, however, in case your organization requires to explicitly integrate with your own provider you are able to easily configure top SMS providers such as: inforu, bezeq, 019 and unicell with configuration only. Case you require additional provider, let us know. Why do I need this? In case your organization requires to have tight control on outbound SMS for any reason such as regulatory, you may add your provider as plugged in SMS integration. Once done, all SMS traffic for your project will consume your integration. Note that SMS integration is deployed per project and not organization. Case you need custom integration for all your organization projects, this has to be done one by one. Also you may add as many SMS integration as you need for purpose of fallback. For example assume you have configured SMS1 and SMS2 with different providers, in case SMS1 will not respond, Cellosign will automatically fire off SMS2 integration. Note: SMS failure means that an error response received from the SMS provider. It doesnt mean if message was arrived to recipient or not. Setting up SMS integration To add SMS integration, follow these steps: At the dashboard click integrationslocate SMS integration paneclick “Add” FieldWhat it’s for?AliasProvide an alias for integrationSenderInsert name that will appear as sender on SMS. Be aware that some countries has limitations on sender name. Typically phone numbers and digits are prohibited. Please consult with your provider regards this issue.Integration providerSelect your provider from the listUserInsert user name provided by your SMS providerPasswordInsert pasword provided by your SMS provider. In case inforu provider is selceted, you also have the option to use Inforu API token authentication. Your token goes into password. Save the integration and test it by entering phone number under “Recipient” and click “Test”. SECRETS A secret facilitates an Bearer token authentication method (i.e. OAuth2) that is consumed in builtin web-hooks and with application connectors such as Salesforce. While Secrets for application connectors are created automatically, secrets for Web-hooks are required to be created manually. This is a guide for manually creating and testing your secret integration. OAuth2 Conventions With Cellosign Secrets are managed in two standard conventions that are slightly defer in implementation. Username/password [General username and password] Client ID/Client secret [Microsoft Graph Rest API] General username and password ParameterValueTypeSelect General – username and passwordurlInsert URL to post token requestGrant typeEnter the grant typeScopeinsert scope valuesUser nameInsert usernamePasswordInsert password Request example With the example above this is how the request from Cellosign looks like { "username": "Myusername", "password": "Mypassword", "grant_type": "password", "scope": "('read,write',)" } Expected response Cellosign expects at least two parameters in response: { "expires_in": 300, "access_token": "BULvsea4JtiGRiSDSJSI%3DEUifiRBkKG5E2XzMDjRfl76ZC9Ub0wnz4XsNiRVBChTYbJcE3F" } “access_token” that will be used in web hook request header for Authorization “expires_in” is a lapse time, in seconds, that the access token can be used before it is expired Microsoft Graph Rest API ParameterValueTypeSelect Microsoft Graph REST API v1.0urlInsert URL to post token requestGrant typeEnter the grant typeScopeinsert scope valuesclient_idInsert client idclient_secretInsert secret Request example { "client_id": "8e17edb9-0f05-46cc-8741-a937e351e631", "client_secret": "Mysecret", "scope": "read,write", "grant_type": "password" } Expected response Cellosign expects at least two parameters in response: { "expires_in": 300, "access_token": "BULvsea4JtiGRiSDSJSI%3DEUifiRBkKG5E2XzMDjRfl76ZC9Ub0wnz4XsNiRVBChTYbJcE3F" } “access_token” that will be used in web hook request header for Authorization “expires_in” is a lapse time, in seconds, that the access token can be used before it is expired Notes and gotchas Note the difference in SCOPE parameter value between the two methods. Cellosign will use token until the time of expiration provided for token request. When token is expired, Cellosign will initiate a request for a new token. STORAGE At the end a business process Cellosign produces number of files that can be shipped via email, API or directly to your storage. Currently we support out of the box integrations for FTP/FTPs and Google drive. Storage service can be deployed with “callback”, which means an API request will be executed from Cellosign to let you know that a storage call has been made. If you have decided to use storage integration, it is recommended to couple it with a callback webhook so you can close the gap between completion on Cellosign to acknowledge in your application. Why do I need this? There are number of reasons to integrate with your organization Storage: Occasionally business process ends up with huge and heavy list of attachments that it makes hard for an API to process massive requests You may have more options on files transformation such as the ability to compress all in a single zip archive Follow these steps to add Storage integration: At the dashboard click integrations locate Storage integration pane click “Add” Basics and storage type Insert an alias for the integration Set implicit or Explicit. Implicit means that whenever a business process is completed, this integration will fire off. Explicit means, don’t fire unless instructed. See below reference for setting up explicit/implicit Select storage type FTP or Google drive. See below reference to each type Enter relative path Apply file transformations as needed. see details below Setup callback webhook. See details in Webhook: Callback Upload file and test Configure Google drive integration First step with Google drive integration is to prepare and download your service account.1. Use Service key link to create service key at your Google Cloud Platform -> Google Drive Api -> Credentials -> Create Credentials -> Service account 2. download your JSON file with service account credentials 3. Modify default scopes case required 4. Configure path where files will be uploaded into Configure FTP/s integration Enter the following details to integrate with your FTP server FieldWhat it’s for?HostInsert DNS name name or IPPortInsert listening port. Note that we may from time to time inform, in advance, on a blockage for ports that are considered dangerous.Base pathRelative path for the files to be uploaded intoUserInsert user name to authenticatePasswordInsert passwordMax connectionsSet maximum connections allowed. This is the maximum concurrent engagement from Cellosign with your FTP server. processes will be queued as neededSSLSwitch SSL on for FTPs Explicitly/Implicitly Storage integration Storage can be setup to fire off Implicitly that means every business processes will fire this integration. For example a storage action will be executed to your when every business process within your project is completed. This is the recommended approach if indeed all your business process should end up in in this manner. However if there are different use cases, such as: separate endpoints or some business process does not need storage, it is recommended to couple your integration with a business process Explicitly. To explicitly couple a Storage with business process we purpose two options: Manually connect it to specific template(s), which means, templates configuration will include explicit coupling with your storage integration. See details below Ad hoc integration for a business process: When the integration is set to explicit, the storage pane display the integration code that can be added to create session request. Simply add the code to your request. All ad hoc integration can be add within the integrations Array Setting up storage connector Follow these steps to apply the storage integration into the template: Login to your template Select “Integrations” on the top right and then click on “Connectors” Storage can be applied to “Submit” only. Click “Add Live Connector” On source, select “Storage” On Type: select your integration [by alias] Turn it’s status to “Active” Save the connector and the template File transformations Initial set of files can be transformed with simple rules. Each rule selects some files and applies some action to selected set. It is possible to select files by tag, by content type or select all files. Initial set of files in the end of session looks like this DescriptionTagsContent typeFile with process metadatametadataapplication/jsonSigned pdfsigned_documentapplication/pdfFile attachmentsfile, attachment*/*Image attachmentsimage, attachmentimage/* Transformation examples Collect all files to zip and apply unique name Click “Add”, Select “All files” from left drop down and “Archive Zip” in drop down on the right. With only this option you will receive to your FTP file named “archive.zip” Click “Add” Select “By tag” from the left and “set name” on the right On select tag, enter “archive”. In “New template path” enter this string “{% now “Y-m-d_H-m-s” as the_time %}{{ reference }}_{{ the_time }}.zip” This parameter join the process reference id and add to it the current date time : “b7eeb82f-9aab-4dea-813c-7ba06b515867_2025-01-08_14-01-06.zip” Why this is a good option? All process product are aggregated into a single file (And not scattered) Zip ensure single commit. As oppose to separate files where 1 file can go through and the other wont Unique by date time. Reference that always exists in our output ensure that process can be located easily on our dashboards File Cleansing In the digital age, safeguarding data integrity and security is a top priority. To ensure that files uploaded by clients during data collection are free from malware and other malicious content, Cellosign has integrated advanced file cleansing technology into its platform. This integration acts as a robust layer of security, meticulously scanning every file uploaded into forms. The process involves real-time inspection and sanitization of documents, ensuring that only clean, safe files are accepted before being archived. This proactive approach mitigates risks associated with file-based attacks, protecting both users and the system from potential vulnerabilities. Beyond security, the integration enhances user trust, offering peace of mind that their data and interactions with Cellosign are handled securely. It also aligns with industry compliance standards, reinforcing Cellosign’s commitment to delivering a reliable and secure document management experience. This seamless file cleansing feature empowers businesses to collect data confidently, knowing that every document meets stringent security requirements. With this integration, Cellosign continues to set a benchmark in secure, efficient, and trustworthy digital solutions. How it works? File cleansing integration does not work by default. You will need to activate it. See “Setting up File Cleansing integration” below. Couple of points before explanation on how this works. Files and images in Cellosign retained as base64 encrypted files. They are never stored as file objects when collected from clients and users. Also when shipped to your endpoints via API (archive) files are delivered in base64 as well. Cellosign has co-browse extension, so user and an agent can sync data in between. For example client can upload a file and an agent can download it for inspection Data collected in form is preserving its state. As such files and images are stored in Cellosign DB until form is submitted or expired. Our approach for securing and validating the files is by allowing only clean filles to be uploaded into our database, while exposing as little as possible to a potential attacker. In case a file was successfully uploaded, it will be stored in Cellosign DB and be available to sync any which way, given the appropriate permissions. In this manner we are ensuring that only validated data is stored and ready to sync and distribution. What is not covered in file cleansing integration? There are a few endpoints in which Cellosign accept files and images for which File cleansing integration is not covered. All the endpoints below require authenticated user API. Inbound files and Images from your application API to Cellosign. Management application when constructing new template Agent app when uploading a PDF for ad hoc transaction Setting up File Cleansing integration To setup file cleansing integration, log in to application console and click projects page.Locate pane “Secured file upload”. OptionWhat it doesNot activatedDefaultCleansingPerform file cleansing (Recommended)DetectionPerform detection only, does not clean the uploaded file In addition please note the switch “Allow upload if service is not available” (Default to false). Because we are using 3rd party provider service for file cleansing, we need to be ready for events that are beyond our control. Having that we are leaving to your disposal the option to allow upload in case file cleansing service is not available. We recommend that it will remain switched off. Rest assure that we have taken our stand to monitor the service and take action as needed. Audit log Each file uploaded to cleansing is recorded in Audit log. Log is preserved in case of success as well as failures. Following are audit details. LabelValuesTypeSESSION_FILE_CLEANSINGSeverityMessage: successCritical: Failure.ErrorError descriptionSessionSession IdFieldField ID in a formFile nameFile name that was uploadedHash beforeHash of file prior to cleansingHash afterHash of file after cleansing.In case of success the hash may be differ in case that the actual file required cleansing. Otherwise Hash before and after are identicalis file changedboolean indication on hash before and after. False if file unchanged, True if changed.response_timelapse time from POST request to cleaning service until response or timeout SSO Cellosign has a built-in authentication and authorization system, you can also hook-up Cellosign to your SSO/Idp (Identity provider) application to provide user authentication. For that purpose, Cellosign is already equipped with SAML2/Idp integration. This integration works with any SAML applications, such as Okta or AzureAD. Why do I need this? If your organization is already coupled with Idp application then you are already managing users access to resources, in that perspective Cellosign is a service provider (SP) that can be mapped to group of users with set of permissions. The alternative is to self-manage users within Cellosign and make sure that new employee have an account with Cellosign or account is blocked on leave. In terms of Information security you can control Access, Authentication requirements with your Idp seamlessly. How it works? The goal for integration is retain users credentials in a single place, with the Identity provider (IdP), and use it in Cellosign, as a Service Provider(SP) for authentication. The way it works is that user request a resource from Cellosign application that requires authentication, such as access to template editor or initating a business process. Let’s assume this is first-time user. The process works as follow: User access Cellosign resource (through browser). Cellosign identify that the resource is coupled with your Idp Cellosign redirects the request to your Idp for authentication On a successful authentication, Cellosign will record user details such as name and email and mark user’s record as managed with Idp Once user has been automatically registered he will be redirected to the required resource Notes: Cellosign keeps some data of the user since the application requires some level of engagement such as emails, alerts and other notifications. Cellosign does not keep users password For a returning user the process is pretty much similar, instead of creating user, we are validating and updating user details. Integration strategy Clients structure with Cellosign works as follow: Organization is a top level entity Within organization we have “project”(s). Some of the resources are shared on organization level, others are project specific. Users are mostly coupled with projects, for example users from HR department requires exclusive rights to HR Business processes, Digital department requires exclusive rights as well For some users, you would like to have access rights to more then one department or even access to the entire organization resources, for example support or implementation. Integration with your Idp can work both on organization, project and users layer. See details in setup section. Setting up Idp integration To integrate Cellosign with your Idp we need to couple if both ways. Before you start, you will need to get: Cellosign domain Your project(s) in Cellosign Choose role assignment strategy. For quick starter you may choose to assign minor permissions automatically in Cellosign Step 1: Integrating Idp to Cellosign In your Idp edit the Entity ID which is global unique ID of service provider. with Cellosign the components are: https://domain/project/saml2_auth/acs/ For example assuming this is an integration with shared cloud production and your project is “digital” then your entity id would be:https://app.cellosign.com/digital/saml2_auth/acs/ Same value also goes to ACS, that is url for callback. The image on the right is taken from Azure AD for setting up Entity ID and ACS[Reply URL]. Make sure to get metadata data URL (aka federated data url) or download metadata XML file, you will need it for next step Step 2: Integrating Cellosign to Idp Follow the steps below to set up Cellosign Integration: At the dashboard click integrations locate SSO integration pane click “Add” and continue with the table below for an explanation on setup SAML2 INTEGRATION PANE FieldWhat it’s for?AliasEnter an alias for your integrationmetadataInsert url to federated data or upload XML metadata fileUse on company levelCheck if you require to use this integration in the organization levelForce authenticationCheck if you require to force this integration for authentication and disable any other typeClaimsMap user details from IdP. Claim definitions must be identical in Idp and Cellosign (Mind case sensitive). For a user friendly operation map all fields. See example on the image on the right.Role assignmentsSee details below Role assignments The steps above are bout Authentication. This step is about Authorization. There are couple of options here: This is the most common implementation. When a new user is introduced, he will be assigned with the lowest permissions or no permissions at all. The permissions level, if need to be upgraded or setup, will be controlled in Cellosign application by your admin user Another option is that the authorization will be controlled by a claim or list of groups. list of groups is useful when our users are diverse, for example user may have lower permissions on Project A and higher permissions on Project B. (Keep in mind that this permissions can be made both manually or automatically with the proper setup) For option one, select “Do not assign user role” for having no permissions at all, or “Assign default role” and then select the appropriate role. Select “Agent” for minimal permissions. For option two, you are able to: Select role from a claim Select role from list of groups For selecting role from a claim, insert the claim name. The value of the claim should be one of: “agent”: For lower permissions “manager”: for project admin “company_manager”: for organization administration For getting role from list of groups. Insert claim Insert the ID for project admins group. This id represents a list of projects in cellosign that the user will be associated with for agent permissions. for example: [“hr”,”it] Insert the ID for agents group. This id represents a list of projects in cellosign that the user will be associated with for agent permissions Note: Project names should be identical to those in Cellosign. Azure AD, EntraID Specifics Setup Azure/Entra like so: Matadata is a url starting with https://login.microsoftonline.com/ Use the claims notation as demonstrated: name, givenName, surname,emailAddress In case you require to use assignment policy per claim, set it up like so” Payment integration Before creating an integration with the Cellosign system, the integrity of the terminal must be checked against Credit Guard.Get the login information from Credit Guard and perform a terminal health check on the payment page. In order to create payment integration in the Cellosign system go to “Integrations” screen and press “+Add” under “Payment” section: Basic settings AliasAdd the alias name (any value).TypeSelect the Type – “Credit Guard MPI”.LanguageSelect the language. Default: HEB.CurrencySelect the currency. Default: ILS. Terminal settings Note: the following information must be obtained from the payment service provider. server_urlAdd the payment server address.terinalNumberAdd the terminal number.protocolVersionAdd the protocol version, default 2000.midAdd MID details. Authentication settings UserAdd a valid user name to the payment interface.PasswordAdd a valid password. Save and press “Test” button to verify connection with your payment server. For more information about the implementation of the Payment controller click here. How credit guard integration works? The integration with credit guard works in 3 steps: StepWhat it does?InitializeWhen user clicks of payment control in form this step requests credit guard for a url to display terminal in an Iframe. Note:The responsibility for logic, ui and data that included in the iframe is on the client. Cellosign has no way of managing business logic and looks.InquireAfter client confirm the transactions, Cellosign API receive a callback. This callback activate Inquire step that accept data from Credit guard.Note: Inquire response is does not include all the data from Credit guard.This step is terminating the integration with Credit guard only if the result code is not success (“000”)Data from interface will be pushed to formIn case your business case requires to stop the process at this point you will need to make sure that the result is any other than success.VerifyThis step is triggered if Inquire returns a success. It produce tokens from CG and push back to views and Archive API. Registrar of Companies integration This integration allows to validate the company ID when user fills the form. There’s a public GOV API available that exposes data of Israeli companies, including: ID, name, status etc.. Company ID validation includes two steps: creating a WebHook integration and configuring a connector from the template side. WebHook integration In order to create WebHook integration in the Cellosign system go to “Integrations” screen and press “+Add” under “WebHook” section: AliasAdd the alias name (any value).TypeSelect the type “Request when form field was changed”.Use implicitlySet the Use implicitly to ON.URLAdd the following URL:http://prod-cs-company-registry.default.svc.cluster.local/api/v1/israel_companies/form_field_change/TimeoutDefault: 30 All the other parameters should not be changed, default values will be used. Save and press “Test” button to verify connection with the WebHook server. Template implementation From the template side need to add relevant fields and change their IDs according to the table below: company_idCompany ID field – can be Text, Number or ID controllers.company_hebrew_nameCompany name in Hebrew.company_english_nameCompany name in English.company_existsCheck if the company exists. Returned values: true or false.company_statusThe status of the company. Company ID field example: Company English name field example: Go to “Integrations tab” and press “+Add Live Connector” under Connectors section: In the Source field select the created WebHook integration. Set the Trigger action on “Change” of the company ID field or use “Click” action in case of button. Map the company fields from the template. Alias will be completed automatically according to the field ID. In the client side when entering the Company ID value all the other fields will be completed automatically with the returned values from the Registrar of Companies API. For more information about templates options click here.
Text area This controller is available only in the HTML template. Types and Validation Min lengthThe controller will verify the minimum length in the field integrity check.Max lengthThe controller will verify the maximum length in the field integrity check.Error Message InvalidIf an invalid value is entered, the form will notify the client by default according to the control type, for example “Data is invalid”. Insert an error message that will be displayed instead of the default.Error if no value enteredIf no value was entered to the field, the form will notify the client by default according to the type of controller, for example “Missing signature”. Insert an error message that will be displayed instead of the default. Conditional permissions When checking conditions on a text area controller, the following options are displayed: EmptyIf the text area controller has no value.Not EmptyIf there is any value in the controller.EqualIf the text area controller is exactly equal to the entered value.ContainsIf the text controller contains the entered value.
Signature Purpose Collect client graphic signatures. Signatures are embedded into the signed document in a way that it associate the signature with the signer. Values & Display Button text Override the default button text to pop signature pane. Append values A signature controller allows you to combine input from the form to be embedded in the digital stamp. In this way, you can embed the details of the user such as full name and ID into the signature field in the signed PDF. Note: The embedded data is not visible on PAD itself. It can only be viewed when clicking on signature pane using Acrobat reader. Types and Validation The signature controller includes several options. The default is a graphic signature when a user enters the controller and signs on a touch screen or using a mouse\pointing device. However, signature can be integrated data specific to the form to produce a signature with company information embedded. Also in case signer is an application user, his signature can be automatically retrieved for confirmation Company SealIf set to ON, will ask the client to enter the company name, ID and select the company type. Validation of the ID field will be performed according to the standard ID format. The input data of the company name and the identification number will form the background for the graphic signature.Company nameCompany name allows to map input fields (if present and correct) from the form to generate the company stamp automatically.Company IDCompany number allows to map input fields (if present and correct) from the form to generate the company stamp automatically. Validation of the ID field will be performed according to the standard ID format.Company TypeCompany type allows to map input fields (if present and correct) from the form to generate the company stamp automatically. Valid values “Private” or “Company”.Company stamp from imageIf set to ON, client will be required to upload an image which will be used as a background to graphic signature. The uploaded image will be used as is.Automatically apply employee signatureWith this feature Cellosign can retrieve a private user signature into the signature pad.This feature is available if the user has a private signature in his user details and user is authenticated in a workflow or a bpm process.Display signature confirmation at the bottom of this page at the PDF pageWhen applied the signature will be made available for confirmation on all consecutive pages resulting from the HTML page.In case “Display the confirmation also at the page where this signature control will appear” is set to ON it will also be made available for confirmation at the same page where the signature appears as well.Notes:1. This features requires activation2. Is available only when form preview is checked and template is an HTML3. This feature can be included on up to 6 signatures per HTML page When at least one of the Display signature confirmation options is set to ON, the green confirmation buttons will be shown in the form preview. It is possible to confirm all the signatures by clicking on the button at the top or at the bottom of the form or confirm them one by one by clicking on the green box with the signature itself. After the form submission the signatures will be displayed at the bottom of the page according to the selected settings. Due to the sensitivity of a personal signature, it is recommended to consult a legal advisor of the company in order to validate an automatic signature solution. Cellosign suggests a variety of other alternatives, such as automatic sending to the user for approval and signature. Template level features On template options you may find the following options: OptionWhat it doesAdd browser timestamp to signature fieldApplies client browser timestamp onto the signature. default unchecked.The date format displays a time signature according to the browser’s settings, the format changes according to the browser’s language, i.e. an end client that sign in the browser defined in the English (United State) language, the time signature format is American, an end client that executes a signature in the browser In Hebrew or “English (United Kingdom)” the time stamp format is European.Clone graphic signature for approvalCheck this option if your use case requires that client signatures will look the same. This option captures the first signature and use it as a signature for confirmation on the consecutive signature pads.Initialize controls on form load This option will made sure that data will be wiped as form is re-loaded. In case “Clean up signatures only” is checked, only client signatures will be cleared on reload
Analytics Analytics screen allows you perform the analysis of your transactions and perform filtering by date and specific templates. In addition it is possible to save parameters and fields in the template and perform search by specific parameters and values. For more information about saved parameters and fields read here.
MFA settings Why would I want to use this? Because user/password is sometimes just not enough. Simply put, apart from hacking methods, the weakest chain in protecting our resources is …us. We tend to leave notes with our user and password on desk, push it through emails and text apps and we keep passwords to our most valuable resources easy to guess????♂️. Case your organization deploying on Cellosign sensitive clients, employees and company data and typically it is, we strongly advise to use this feature. Case your organization is bound to GDPR, ISO/SOC or other methodologies for security regulations such as ISO-27001, you would need to incorporate this feature into your operation nonetheless. Cellosign offers 2FA as a security module that can be plugged into your tool set with a click of a button. Please consult your success contact for activation of 2FA module or post a mail to service@cellosign.com. How does it work? Once 2FA module is enabled: login to Cellosign application and click on “project settings” (you will need Administrative permissions) Click “Activate MFA” on “MFA settings” pane That’s it! Once 2FA is activated, each user associated with the project, will be compelled to go through a process of selecting default Authentication method. Pane below is used to select and configure 2FA delivery method. Select delivery method Enter corresponding email/mobile number And click “Send code” Once you received code to your email/mobile device, enter the code to complete the authentication coupling. Case 2FA method and activation needs to be changed. Login to “Profile” tab, scroll MFA section Click on “MFA configuration” Follow activation process on-screen
Form support and accessibility toolbar Support and accessibility toolbar incorporated in all forms. The toolbar receives first focus when open a form link so screen readers can read through its content. To open the menu click the hamburger icon at the top of your frame. Accessibility features Activate accessibility option Transform inputs to valid accessible collection. Date input transformed from a date or date-time widget to manual input Signature pad will require upload a signature image rather then drawing the sugnature In addition focus on input or (Tab/Shift+TAB) between fields will draw a border on the focused input Monochrome option This option modifying colors to monochromatic that makes to contrast accessible. It is advised to use high contrast as a default, regardless if the Monochrome option is activated or not. Accessibility statement Link to our accessibility statement Assistance Download file for print This option, if activated, allow client to download a PDF file based on the data already propagated into the form. please consult with our support for activation of this feature. Privacy statement Link to our accessibility statement About View display form and client data. On some cases were client has an issue we will require this data Release: Cellosign release Token: Session ID in view Browser: Client browser
Users Cellosign manages three types of user’s permissions: PermissionsAbilityAgentA user with agent permission can:– Access the agent interface and management interface.– Send a form or initiate a process [agent interface, dashboard screen].– View actions sent by him only.Project managerA user with this permission can do everything a user with agent permission can, plus:– View all the actions in the project in which he is set as a manager.– View and update the Project settings.– Create and update Integrations.– View Analytics data.– Create and update Templates.– Create and update Processes.– Create and update Users.– Perform Post Transactions from file.– Create and update Dictionaries [linked lists], Tables and Categories.– Create new dashboards with different widgets.Organization managerA user with this permission can do everything that a user with project manager permission can do, plus:– Create and update additional projects in the organization in which he manages.– Set up SSO integration for providing user authentication. In Cellosign, there is the option to create users and also the option to connect to Active Directorysystems, so the login process will take place as part of the corporate identification system. In case that Cellosign is connected to the Active Directory system in your organization, the creationof the user will be automatic, without the need to create the user in Cellosign as well. Users panel This panel can be used to view and locate existing users, add new users and set permissions. Search box filterAllows searching by any text relevant to the user: name, email, phone number, etcSelect Project filterAllows searching by project. Relevant if the organization has several projects“Search” buttonAllows searching after changing filters+ Add ServiceAllows adding a new service+ Add UserAllows adding a new userExportAllows exporting the list of users to the external .csv file To update a user, select a user from the list. Perform the needed changes and press “Update User” button. Articles Add Service Add User Password control Profile Add Service Service user are used for an API connection with Cellosign. Service user cannot login to UI applications and can only be used for integrations. To create Service user, login to Cellosign”, click on “Users” on left pane and click “Add service”. Enter details as instructed below. FieldDescriptionUsernameMandatory field.Enter a username in English and without spaces (recommendation to enter a full email address).*The field is case sensitive.Project permissionsMandatory field.You can define a project manager or a project agent permissions by entering the project name and automatic completion from a list.*The default for adding a new user is agent permission.EmailThe email address of the user to be used as archive default email. To reveal the Access token click on “Show token”. This will display the access token for integrations Add User FieldDescriptionUsernameMandatory field.Enter a username in English and without spaces (recommendation to enter a full email address)*The field is case sensitiveFirst NameMandatory field.You can enter a name in Hebrew or English.Last NameYou can enter a name in Hebrew or English.MobilePhone number is also used to locate the agent on the form submission screen.EmailThe email address of the user to be used as archive default email.Project permissionsMandatory field.You can define a project manager or a project agent permissions by selecting organization, project and role details from the lists.*The default for adding a new user is agent permission. At the end of registering a new user, select the “Save User” button and additional options will immediately open. For more information see “Password control” section. In order to change user’s permissions for the same project, first remove the existing permission by clicking the “Delete Permission” button. Then select the organization from the list, the project and the desired role from the options. Click the “Update User” button to save updated data if a change is made to the user’s details. Email and mobile phone The user’s email address and phone number are supported by a quick search on the form submission page. Type a part of user’s details to locate it in the list of users and send to the relevant destination, email, or mobile phone. The access to the list of users may therefore also be for you a kind of contact list for those without any specific role in your organization who may receive self-filling forms. In the list of users must only be people from your organization and not from another external source. Password control Send Temporary PasswordAllows a project manager/organization manager to create a temporary password, that can be copied and sent to the user. It will require the user to change his password in the next login.Force Reset PasswordAllows a project manager/organization manager to force the user to change his password in the next login.Block/Unblock UserBlock or Unblock user from accessing Cellosign.*If the user entered the login information incorrectly more times than defined in “Lock account after failed login attempts” under Project, his user will be blocked. Notes: password operations on user are allowed for users with manager and organization manager permissions. In case user has permissions to more then one project, the password requirements will be the strict one. for example if on project A password is limited to 5 characters and on project B to 8 characters. User will be obligated to 8 characters password. Profile In the Profile area user can view and edit his account details, change password, add the private signature, view and change his token, and configure MFA for login additional verification. Note: user details cannot be changed by the third party user and should be updated by the organization. Private signature The signature allows to input the user’s signature into the form automatically. The functionality is usually used for automatic signing of files, such as invoices or a certificate “authorized to sign” in the organization. API Show Token/Hide Token/Refresh Token will show, hide and change the token accordingly. “Open documentation page” link will open the related API documentation. MFA configuration User can configure 2-Step verification for login by choosing code destination.
Client forms Client forms is a user interface that present to a client a list of forms that needs to be filled in an organized and secured fashion. Clients receives one link against they will need to identify and authorized for access. The interface is highly customizable and include rich function customization and looks configuration to match your brand. Why do I need this? Client forms is a great way to communicate with your clients, push new forms that needs to be filled, Client can see show how much time left to complete and all in a single link and one time authentication. Setting up client forms Login to projects page and locate “Client forms” and follow the tabs to set it up. Before modifying default colors and backgrounds make sure to read accessibility section below. Background settings This setting is optional. It affect the authorization pages only. It does not propagated in transactions page. SettingHelperBackground imageClient forms ius responsive and will adapt to any device automatically. We advise to pick an image with 4 (width):3(height) proportions, it scales better.In addition, we advise to upload an image smaller than 100 KB to expedite loading time for your clientBackground image settingThere are 3 CSS settings available for your disposal, check what works best for you when device is table, mobile or desktop.Alternative textMake sure to enter a meaningful name that represents the image, typically it would be a “background image of <my brand>” Color settings Button background color and button text color All buttons on transactions view and authorization page gets there attributes from the first two color pickers. including the shading below a transaction row. The image on the right is a result of a red background and white-gray text color as configured in the image below Remember to make sure to pick colors that contrasts well. Text color Most of the texts in client forms view will pick on this color, including transactions text and hello text as can be seen in the image above. Authentication settings This tab includes a collection of settings to process the authentication stage and configuration of footer links Identification header, text, error and support text Configure texts for intro page. For accessibility compliance make sure your text are simple and direct Suppress leading zeros Client forms viewer collects all client’s transactions that share the same password, see require password for details. Occasionally the access password is a number, such as ID that has fluid representations to include or exclude leading zeros. As such when client insert the password it will not include leading zero and when the transaction is initiated from your core application it does include it. Essentially, we might end up with mismatch when client enters “7673899” as password and your DB inject “07673899”. These will never match. This is where “Suppress leading zeros” become handy. It will suppress leading zeros to match. As such “000123” is equal to “123”. Note: Be aware on what data to use for password authentication. Make sure that “0123” and “123” are not different entities. In Activate OTP We encourage you to use this option. OTP will guarantee that clients can access their transactions can do so only after we have doubled checked their identity. To apply OTP to transactions, at least one transaction that match the password will need to have an OTP associated. If there are more that one OTP address then the viewer will list the propagated OTP destinations. Footer links By default Cellosign displays links to Accessibility, Privacy and terms of use pages. Use the switch to turn off any of the links. Alternatively. You may override the defaults to include links of your own. Make sure to add valid markup and texts. i.e.: Markup to open external web address: “https://yourdomain.com” To pop up phone app. “tel:0500001234” (For mobile apps) To display only the label please enter “#” in url Transactions settings Introduction text Enter here text that will appear before the list of transactions Show validity When activated the date and time on which a transaction will be expired is displayed below the transaction button. Aggregate Enable this option if you are using business models and wish to display collections of transactions associated with business case. In the example below we have two business case aggregations and two stand alone transactions: Loan 12345-67: Has 2 transactions and is expanded Loan 456778-90: Has 3 transactions and is collapsed “Change of banking information” and “Direct debit consent” are stand alone transaction Note that stand alone transactions are displayed only after business case aggregations. Show submitted transactions and document options These options are related with data model option which is not yet released. Popup Enter title and texts (or HTML markup). The popup will be displayed after each successful login. In case you are using HTML markup make sure to test the result on different browsers. Order of appearance OptionDescriptionExpirationDefault option for order is transaction expiration. Transactions that are first to expire will be displayed first by default.Template order numberOrder is arranged by template order of appearanceTemplate nameOrder is by template name: Note that evaluation is case sensitive. “z” (small letter) is prior to “A” (Capital) Note that aggregated transactions appear prior to standalone transactions Additional control on looks Template configuration offers the option to control the icon and the text of the button that opens up a transaction. Make sure to select a proper icon and a “call to action” text Client forms security We are investing great deal of efforts protecting your and your clients data. For some of the methods we are providing the coverage. others require your attention. Following is a list of protections we have for client forms Rate limit This feature is builtin and is not optional. Rate limit prevents a client from posting too many requests for access in a given time window. The conditions of lock and release can be modified from time to time o our discretion. Captcha This feature is builtin and is not optional. Google captcha to prevent brute force Password This is a preliminary condition to access client forms. We advise to use passwords that cannot be mined such as sequence numbers. Instead make sure that the password include checksum/parity and it needs to be captured as part of the password. OTP OTP option is at your discretion and we encourage to make use of it. Auto logout on idle On idle (No use of client forms view) client is automatically logged out after 5 minutes Auto logout if no transactions left on view When completing a transaction client is be redirected to main client form view. If there are no transaction he will be automatically logged out after 1 minute Poplast option When appending ?poplast=true parameter to client forms it will automatically open a form in condition that there is only one transaction in view. Note that transaction will be displayed after authentications and regardless if there is a popup message configured. Accessibility guideline As in any other interface builder, we are making our best efforts to bring you all the goodies for collecting data and create amazing interface for your clients that reflect your brands. However this also come with a responsibility on your side. Although we are try to protect you in whatever way we possibly can to avoid accessibility errors, there are couple of ground rules to pay attention to. Contrasts Make sure that colors setting has sufficient contrasts. A button with pale background and pale text is not accessible. same goes to background image. make sure to incorporate background and colors sets that has contrast. How much contrast? check out this tester. Messages and text Make sure your messages, errors and instructions are clear and not implied. for example “Open” is better than “Transaction” as a text on a button to open new transaction.
Paragraph A paragraph is an informative controller for display only. This controller is available only in the HTML template. Values & Display Entering texts in a paragraph controller is done through a content editor. The editor supports different design tools such as: Text style, format and size Font color and highlight color Bold, Italic, Underline Ranked and numbered lists including indents Direction and alignment of the text Links (website addresses / emails), etc You can enter directly in the content editor by writing texts. Special features Ordered lists Ordered lists are texts block with incremental values such as 1,2,3 or A,B,C etc. Ordered list in paragraph control include the option for indented numbering: 1, 1.1, 1.2 etc. Click TAB to indent and Shift+TAB to out dent your text. To apply formatting on ordered lists the are few conditions: entire text should be formatted and not only portion of it Right click the bullet text that requires formatting and check: “Apply content style on list” Note that ordered lists formatting applicable for: font type, size, font color, weight (Bold) and italic. Columns spread This is a custom feature to display texts in columns (similar to way newspaper columns). To activate this feature select your text an click on icon that reads “Custom column spread”. Select how many columns, Gap in pixels between columns, ruler width, style, color and text alignment of the text Note: Column spread can be used with other styling options such as ordered lists, make sure to select the text accurately when applying additional styling, otherwise styling options might misbehave. Another approach is first to apply Column spread Pland then other styling options. Input controls Paragraph control includes builtin input types to collect data. To use this feature: Click on any of the controls appear in the menu: text, select and checkbox Enter values into dialog as needed. ID is optional, use this if you require to inject value into the control through API. Permissions to edit input controls in paragraph are driven from paragraph settings. Note: When there are input controls or editable fields from the Data table, make sure that you have edit permissions to the paragraph control: Placeholders Use placeholder button to attach value from other input controls into the placeholder. Note that data a placeholder is not editable. In addition data is propagated into a placeholder only at time when transaction create, so it’s become available when original control has default value or it has been injected using an create session API. To use placeholder: click placeholder button on the menu Select the control to attach Check/Uncheck options as required Underline options will display or hide underline where the placeholder is positioned Show label on radio or select controls refer to the option to show the visual or the underlying values of select and radio controls. As they must not be necessarily the same, for instance: “Bank Discount: can be visual value while “11” is the underlying code, having that this option provide the mean to show “11” or “Discount”. Source editor The content editor supports HTML and CSS and you can enter HTML and CSS code through the “Source” icon and/or see the design defined for the text. The content editor supports HTML and CSS and you can enter HTML and CSS code through the “Source” icon and/or see the design defined for the text. Pay attention When text is copied and pasted into the content editor, the copied text will include the HTML/CSS code from the copied source (for example: font, sizes, colors, ranked lists and any other settings that apply to the copied text in the software or website). Text pasted in this way may affect the visibility of the entire form and will affect the display of the text in the paragraph to the end user. It is required to make sure that the display is correct in the form shown to the client and not only the representative’s screen. Text should be pasted as plain text, and adjustments should be made in the content editor as needed.
Apps and databases connector Aside from API integrations, connector is a method in Cellosign to interact with your core apps and database with no additional code. Once Cellosign and your data source are coupled, an implementation of business processes can be carried out my mapping your data source objects (or tables) using drags and drop and clicks by, hence no code. With an integration using database connectors Cellosign is able to provide one way CRUD operations (Create, Read, Update and Delete operations) seamlessly. With an integration using an application connector, such as for Salesforce, you would be able to do the above plus the ability to trigger actions directly from your application. Articles Salesforce BDI Microsoft SQL [MSSQL] Integrating connector and template Data mapping and conversions Salesforce Cellosign integration with your Salesforce instance provides two-way communication channel where Cellosign can perform Create, Read, Update and Delete operations on your Salesforce objects. In addition with Cellosign app for Salesforce installed on your instance, you will also be able to customize Salesforce Webflows to initiate business process in Cellosign. Resilience We understand that the typical organization has more than one data source to interact with in a business process, for example business process can be initiated from Salesforce, additional data should be fetched from another source by API and so on. Having said that, our approach to application connector is to grant you with the possibility to integrate with any number of data sources and APIs. Before we start Salesforce integration is part of Cellosign PRO bundle and requires activation. Please contact your CS contact for activation. In the activation process, you will be receiving in mail a unique URL to install Cellosign application for Salesforce. About this guide Salesforce and Cellosign requires two configurations: Configure your Salesforce instance in Cellosign. This is a mandatory step Install and configure Cellosign Salesforce package in your Salesforce instance. This is an optional step Configure your Salesforce instance in Cellosign At the end of this configuration you will be able to create templates in Cellosign that are connected with your Salesforce instance to Get data from objects, update Salesforce objects and upload files to Content version. To do that we need to create Connected app and then couple it on Cellosign application STEP 1: Create a Auth2 connected app Login to your Salesforce instance Click setup on at the top right corner drop down and search for “App manager” Click on “New connected app” Insert name, and email Check Enable OAuth settings Insert Callback url. In case integration is made on Cellosign production enter “https://app.cellosign.com/callback/salesforce-callback”, else if it’s integrated with pre-production insert “https://preprod.cellosign.com/callback/salesforce-callback” aelect Selected OAuth Scopes: Manage user data via APIs (api), Manage user data via Web browsers (web), Full access (full), Perform requests at any time (refresh_token, offline_access), Access unique user identifiers (openid) Check “Require Secret for Web Server Flow” and “Require Secret for Refresh Token Flow“ Click Save Generate “Initial Access Token“ Click on “Manage consumer details”, Verify your account and keep “Consumer Key” and “Consumer Secret” STEP 2: Couple Connected app with Cellosign In Cellosign application dashboard, click Integrations on the left toolbar, click “Add” on Salesforce pane and next to start the process Alias and address Enter an application alias. This alias will be used for implementing business processes, if there’s more than one integration give that meaningful name to avoid confusion. Enter your Salesforce address Consumer key and secret Copy your Consumer key and secret from your connected app and insert on the following pane Verify callback and login Follow on screen instructions for validating Cellosign callback URL on your connected app and click login In case you don’t see “Approve Salesforce login” pane, follow on screen instructions, most common reasons are: You will need to allow popups on your browser Consumer or Secret keys are incorrect Verifying installation After a successful setup you will be able to see a valid connection on Cellosign integration pane for Salesforce Troubleshoot In case of errors in completing this stage Make sure settings for Connected app are correct. Check token policy. In Salesforce search for “Manage connected apps”, locate your app. make sure “Refresh Token Policy” is set to “Refresh token is valid until revoked” Install and configure Cellosign Salesforce package in your Salesforce instance At the end of this configuration you will be able to create flows in Salesforce and connect it with Cellosign templates to: Create new interactive transactions Create Signed document (SEAL) Revoke transaction To install this package, first we need to create a “Service user” in Cellosign. Add user and retain Access token. Install Package by adding the url below to your salesforce url. https://yourinstance.salesforce.com/packaging/installPackage.apexp?p0=04t8d000000hYmq Select required profile and check “Acknowledge” for installing 3rd party package and click “Install” 4. Approve installation process. Check “grant access” and click “Continue” 5. Wait for the installation to complete [might take couple of minutes] and click done 6. Next. we need to configure the application. On setup left pane search’ lookup “custom settings” and click on “custom settings” page 7. Click on “Cellosign instance” and then click on “manage” on top pane and new on the next screen 8. Next we need to configure credentials point to Cellosign instance on the following screen LabelRequiredValueAPI TokenYesInsert here your user Token [Or service user token]. This token will be used to authenticate the request in CellosignAuthorization TypeYesInsert here “Bearer Token”Instance URLYesInsert your Cellosign base instance url. For example, for shared pre-production insert “https://preprod.cellosign.com” [Note: without “/” at the end of the url]TimeoutYesEnter “30,000” for 30 seconds timeout 9. Click “Save” when done. Next. Salesforce connection tab Synchronization pane Click on Gear icon and click on “Synchronization” pane. Use this function if you require to initiate new requests from Salesforce to Cellosign, first we need to enable synchronization. Otherwise, click the next tab. By checking Synchronization, template data [“Blueprints”] will be pushed from Cellosign to your Salesforce instance. This will enable to configure Salesforce actions [“flows”] and connect them with Cellosign templates. Use “Filter tags” option to sync only Cellosign templates that includes specific tags. If left blank, all templates within your project will be synced. Note: Sync occurs when saving a template. Connection test pane This pane serves two debug functions: Make sure objects are pulled and refreshed. Refresh occurs automatically every 24 hours, however if you have applied changes in your Salesforce schema (such as adding tables and columns) click on “Pull instance schema” for fetching Salesforce objects so they can become visible to business process consumers, such as template connector. Dump requests that were made from Salesforce to Cellosign. To find the request ID click Transactions board, lookup your transaction, expand the result. The request ID is displayed at “Request Parameters” pane. Copy and paste the “Request ID” into “Connection test” pane and click “Execute request”. As a result a JSON file will be dumped to your browser with the full body request Build Salesforce connected business process What we want to do here is build a template that can be initiated from Salesforce to Cellosign that inject Salesforce AccountID. Cellosign connector will: Get the request Fetch Account name and website address from Salesforce Post the invitation to the client Get updated data back [On client submit] and update Salesforce with: Updated data and signed document Build template Create new template, name it “Update account” Drag and drop 3 Text fields and name it “Account ID”, “Account name” and “Website” Also add signature field Click on Template integrations and “Connector” and click “Add Preset Connector”. Follow this guide to set it up. Eventually your PRESET connector should look as in the image below. Make sure to save the template and go to your Salesforce instance to connect it [next step]. Next we will build connector to update Account name and website on submit. Add new connector on “Submit” Next we will build connector to upload signed PDF and associate with it with account on submit. Add new connector on “Submit”. Save the connectors and the template. Connect Template to Salesforce In your Salesforce instance search for “blueprints” in top left search pane Click on template that was created “Update Account” Note: In case you don’t have “Description” or “Create Date” columns, simply click gear icon on the top row. Click “select fields to display” and add those to view. Click the Blue print name link. This view display the blueprint ID, Name and related fields. Note that on “Related fields” there are two fields created by default. “Invitation recipient email or phone number”. Will be used to post the request to clients email or phone Fill form field <AccountNumber> from table <Account> column. Will be used for mapping field into action Creating flow (trigger) in Salesforce At the end of this stage we will have a flow in Salesforce that is getting Account ID and posting request to Cellosign including: Blue print, Account is and client email. Flow should look as in the image below Click on Gear icon at the top right corner and then “Setup” On quick find (top left) search “flows” and enter “flows” view Click “New flow” at top right corner select “Screen flow” and click “Create” First we need to define flow variable that we can consume within the flow. On the left pane of flow view, click the left most icon “Toggle toolbox” Click “New resource” button” On the opened pane select “Variable” Insert “recordId” on “API Name” Select “Text” for “Date type” Check “Available for Input” at the bottom and click save Next, we need to define single parameter and collection of parameters flow variables that can consume blueprints data. Use “cellosign__ProcessParameter apex-defined” type for both. First we will create collections of parameters On flow toolbox: Add new resource Select “Variable” Insert “varProcessParameters” on “API name” Select “Apex defined” on Data type Check “Allow multiple values” Select “cellosign__ProcessParameters” on “Apex class” Click “Done” Carry out the same process for single parameter. Add new resource Select “Variable” Insert “varProcessParameter” on “API name” [Note: var name is singular] Select “Apex defined” on Data type Select “cellosign__ProcessParameters” on “Apex class” Click “Done” Next. on flow diagram Click on “Add element” and Add “Get records”. Insert “Get SF Account data” to label Select “Account” on “Object” field On field, select “Id” to match Account ID On “Operator” pick “equals” On “Value” pick the variable “recordId” we just created Click “Done” At this stage we need to connect the collection of parameters to Cellosign blueprints. On flow diagram Add “Assignment” On “Label” insert “Build Parameters” Now we need to add key/value pairs for the invitation and Account ID First, we assign Key/Value pair to single parameter flow variable, and then add that variable to our parameters collection variable. You can assign fixed values to parameter, or you can assign values from specific record field (see 3rd parameter assignment – we assign account name). To add key/value pairs: On “Variable” add “varProcessParameter.Key” from the dropdown Set Operator as “Equal Set Field blueprint ID for invitation. [This should be copied from blueprints parameters page] On “Variable” add “varProcessParameter.Value” from the dropdown Set Operator as “Equal” Set Field from Account > phone number On “Variable” add “varProcessParameters” from the dropdown Set Operator as “Equal” Set Field “varProcessParameter” [Note: there’s no “s” at the end, for single] Carry out the same procedure to add “Account ID”. Eventually, “Build parameters” pane should look like this: Save the pane. Next, add element “Action”. Blueprint ID – ID of blueprint you want to initiate a process for Cellosign API Service developer name. Type one of these: start_process, seal_process – start_process Parameters – your collection variable of process parameters – Run Immediate – (True/False) – will define to run action synchronously (True) or asynchronously (False). Click “Save” At this stage you may add any conditions, logs, on screen display before flow ends. Save the flow and enter Connect to action button Now we want to add a button to trigger a form submission to client. to do so follow these steps: On Salesforce app, search and select “Accounts” page Click gear icon on top right and select “Edit Object” On left pane, select “Buttons, links and actions” Click “New action” On “Action type” select “flow Select the flow we crated previously Update label “My update” and save Next we need to display this button on account page, for whenever is clicked, form will be submitted. On “Account Object manager”, click “Page layouts” and then “Account layout” Locate the Action created “My update” on top pane and drag it to “Salesforce Mobile and Lightning Experience Actions” And click save On account page you will find new button “My update”. Make sure you have mobile phone number on Account details and click “My update” to submit a form Now you should be receiving SMS with a link to form. If all configured correctly, you should see Account name and Website on the form. When form is submitted the data will be updated and PDF result is uploaded to Account related items. Methods Start This API initiates a new session process. This method is described above in details SEAL Similar to Start API (above) this API generate a new session. The differences are: Use key word “seal_process” for activation Response: since SEAL does not include interactive form, it does not include URLs as interactive session does. Instead, it includes the following response: { "id": "djE6czp0ZXN0ZW5nOm1lcHlMR3R4cmI=", "blueprint_id": "djE6dDp0ZXN0ZW5nOjQ3NzAwZTUxMjkzODQ2ZWJiZjQ4NmU3ZGU4ZmEzYTUy", "document": { "id": "mepyLGtxrb", "hash": "942adb09cda9d9602e4784513b14cff2" } } idEncoded unique id. Can be use later for delete APIblueprint_idTemplate blueprint used for the processDocument idClear text for unique idDocument hashPF Document hash. Hash can be used to verify the content when callback occurs Delete This API revoke a session. Follow these steps to configure a delete session: In flow menu, add an APEX action, Search for “Delete Cellosign Process” action type Add “delete_process” to first input value Add process id to revoke. Process id is received on response to “start_process” Add logic as needed and save On success, process will return HTTP 201 status code, Otherwise will return 4xx or 5xx response Limitations and known issues Currently Cellosign package for Salesforce include session level API. That is workflow, BPM process types cannot be created via this package Field level blueprints includes only fields that are mapped for inquiry through the connector Create new session currently doe’s not include specific address for OTP. However the address included with the blueprint can be used for both the invitation and the OTP. This feature will be included in future versions Data types specifications Salesforce datatypeHandling in CellosignPick listPicklist values are fetched using toLabel() api and not the API value Date and date timeDate and datetime objects in Salesforce are stored in ISO format. Using the connector you have the option to format the value to your requirementTimeNumbersCurrencyBooleanText and long texts Process Logs Cellosign installed package includes full log for APEX action that includes: Request URL, Body, response and time stamp for initiate and response. To view logs, type “Create Process Logs” is Salesforce quick search. Additional data Following are object classes with Cellosign application that can be consumed for implementation. Class ProcessRequest LabelNametyperequireBlueprint IdblueprintIdStringTrueParametersparamsList of ProcessParameterTrueRun ImmediaterunImmediateBooleanTrueCellosign Api service developer nameCelloSignMdtNameStringtrue Class ProcessParameter LabelNametyperequireKeyKeyStringTrueValueValueStringTrue Class ProcessResponse LabelNametypeResultsresItemsList of ProcessResponseItem Class ProcessResponseItem: LabelDescriptiontypeisSuccessProcess initiation statusBooleanerrorMessageerror message if failedStringprocessIdUnique process ID in cellosignStringformIdThis is reference to Token generated in CellosignStringclientUrlUrl that was submitted to clientString BDI This feature needs to be activated. Please inquire details with our support. BDI integration refers to “Coface bdi“. This integration include out-the-box data exchange with coface based on data inserted into a form. The flow is: User insert a data, i.e. loan amount, id etc.. Data is posted securely to coface Result is returned to form so further implementation can be carried out such as hide or show parts of the form based on success or failure What needs to be done prior to the following steps? Make sure you have an API account with BDI for personal check. make sure the following data handy: Username, password, Terminal ID, Credit provider code Make sure you have received clearance to use BDI from our support team How to set up BDI Once BDI is available for your disposal please carry out the following configuration Setup web-hook Login to cellosign app and click to add new web hook from web hook pane Provide a name for your integration Select type: “Get data from remote source” (Field change API) Turn off switch “Use implicit” Insert URL provided. Add the following header and corresponding values “X-BDI-TermID”: Value is the terminal ID provided from BDI “X-BDI-CreditProviderCode”: Value is your credit provider code you received from BDI In authentication section, Select “Basic” and enter the username and password you received from BDI Note: Parameters are encrypted and are not displayed in cellosign interface Template configuration Select the template that requires integration with BDI and follow these steps Open integrations tab Click “Add live connector” Select Webhook for source Select the webhook you created in previous stage (by name) Select the trigger: Field change or click. We advise to use click. Add the following fields to the mapper. make sure that the configuration includes the field name or alias exactly as in alias column (Note capital and small letters) AliasWhat it doesNotes and data validationFirstNameClient first nameOutgoing, MandatoryMake sure to set “Hebrew characters” only in field configurationLastNameClient last nameOutgoing, MandatoryMake sure to set “Hebrew characters” only in field configurationIDClient ID numberOutgoing, MandatoryMake sure to select Cellosign ID field resultThis is the options for returning values– “1” success (related to cwa_code)– “2” error. This represents a legitimate error. Details can be retrieved from the following parameters– “9999” Unexpected error. Interface not available or any technical error, Typically this is not related to client data.Incoming Mandatory.bdi_error_codeRetrieve value from “ErrCode” in “BDI_Error” objectIncoming, Optionalbdi_error_descRetrieve value from “ErrDescription” in “BDI_Error” objectIncoming, Optionalccr_error_codeRetrieve value from “Code” in “CCR_Error” objectIncoming, Optionalccr_error_descRetrieve value from “Description” in “CCR_Error” objectIncoming, Optionalccr_error_sevRetrieve value from “Severity” in “CCR_Error” objectIncoming, Optional Limitations interface support Israeli ID, Passport is not supported Interface is limited to personal check. Company Microsoft SQL [MSSQL] Coming soon. Integrating connector and template After completing a setup for application or database connector we need to integrate the connector into Cellosign Template. How does it work? On template connector level Cellosign includes 4 firing options that represents a life span of a transaction in Cellosign: PRESET: Fires when transaction is created LIVE: Fires as user is engaging with the form SUBMIT: Fires when user submits the form POST SUBMIT: T Fires after form is submitted PRESET Preset is initiated at time a session is created, given enough information injected into session, this setting can get data from your data source prior to engaging the end user. Preset includes only lookup (Read) operation. To set Preset Click on “Add Preset Connector” Select source and Instance Select Object (Table) Define the query for lookup. Values for query can be retrieved from: a “label” injected into process or a form field or a fixed value Define what happens case there are no results, one result or more then one result to match the query Define which column to fetch from your object and to which form field value is incorporated into Click save Best practice is to use automated scenarios such as PRESET whenever possible. Given sufficient and unique data, Cellosign will be able to get data from your data source. LIVE Live connector is similar to PRESET with the difference that it requires the end user interaction with the form. A practical scenario is that at the stage of processing the form we are missing some data, most common in self service scenarios. Note that although we have taken the necessary steps to secure your data source, the implementation should consider measure for protecting the data by requesting information known only for the end user. for example requesting only Account ID is not recommended. To setup LIVE connector, follow instructions on PRESET and apply activation on field change or button. “Change” trigger occurs when a value of field is changed by end user, such as typing account name “Click” is triggered on a button click. If you have a button mapped on your form, select it as trigger SUBMIT This is where Create, Update, Delete and File uploading operations occur. To setup SUBMIT operation: Click on “Add Submit Connector” Select source and Instance Select Object (Table) Select the operation: Create/Update/Delete/Upload files* Define the query for matching the record. (Not relevant for Create). Values for query can be retrieved from: a “label” injected into process or a form field or a fixed value Define what happens case there are no results, one result or more then one result to match the query Define which table columns to update (Not relevant for Delete and file upload) Click save Query conditions Each connector Lookup/Update/Delete requires a condition to match with the remote data source for which it will act upon [that is equivalent to SQL WHERE clause]. Condition for matching includes: Data source to match i.e Account ID Equation, i.e. Equal, true/false in case of boolean or contain/starts with in case of strings. What data it will the compare with. i.e constant, values already applied to form Apply order to Where clause in case we have multiple results Fields mapping This is the part when import of data is being made from remote data source into form. This functionality is relevant only for LOOKUPS [equivalent to SQL SELECT clause]. Fields mapping into form fields can be made: As is, directly from database column Converted using an editor Data conversions Conversion functionality is provided to Numbers and date-time data types. To convert date time select the relevant date time column, select date format option and pick the required format from the list. To convert number data type, select a number column: Apply Ceil to round up to integer Apply Floor to round down to integer Select currency format to apply a number with thousands separator, with or without decimal point Concatenation Use CONCAT feature to consolidate values from different table column to one string, simple example: first and last name. Concatenation can also include fixed values to get result such as: “Name: FirstName Last name, ID: ClientID.” Repeater Use this feature when LOOKUP is configured to expect multiple results such: as All Account contacts. In this case we may use repeater to consolidate a string for as many contacts as the connector pulls from the database. See the example above, it includes a CONCAT and REPEATER on contacts first and last name. Changes in integrations Occasionally you will be required to move integrations from one environment to another or modify integration end points. Connectors in Cellosign holding the identifiers of an integration and when moving around this needs to be updates. When changing the integration it becomes invalid in the template. You will be required to update the integration in the connector. Simply click on the connector’s edit button. Select the source, instance and click fix. In case of application connector as Salesforce make sure that the dataset is available as moving from one app to another you might not have the exact schema. Data mapping and conversions Purpose This document include data mapping and conversions made when fetched from remote data source into Cellosign forms. It includes all types of data sources: Applications, such as Salesforce and Databases, such as MSSQL. Conversion is being made regardless of the primitive features of data source. For instance in Salesforce Date time is formatted as ISO-8601 string, MSSQL has it’s proprietary format. Regardless of the source, Cellosign will made available mapping and conversions for you disposal as listed in this document. Limitations Conversions are only made when mapping is being made using “Formula” editor. In any other case the primitive will be fetched and displayed as is. Make sure to map data to the correct form field type in case that field is being made available for your client. For example if a date field is fetched and converted into a form field and client can edit it, it will be better be mapped to date field so the format can be consistently retained. Mapping and conversions PrimitiveConversion and format optionNotes and examplesNumberCeil. Rounds a number UP to the nearest integer,Ceil(1.1) = 2Ceil(-7.004) = -7Floor. Rounds a number DOWN to the nearest integerFloor(1.1) = 1Floor(-7.004) = -8Currency format float. Thousands separator with 2 decimal digits123456.7 converted to: 123,456.70Currency format integer. Thousands separator with no decimal digits123456.7 converted to: 123,456DateEU date format. dd/mm/yyyy28/02/2022US date format. mm/dd/yyyy 02/28/2022EU/US short month name. dd MMM yyyy 02 FEB 2022EU date time format. dd/mm/yyyy hh:mm28/02/2022 23:35US date time format. mm/dd/yyyy hh:mm02/28/2022 11:35PMEU short month name date time format dd MMM yyyy hh:mm02 FEB 2022 23:35US short month name date time format dd MMM yyyy hh:mm02 FEB 2022 11:35AM
Templates Templates panel displays the list of templates related to the project. The page is accessible for users with “Project manager” and “Organization manager” permissions. In the header of the page there are buttons “+ Create New Template” and “Upload Template From File”. ColumnDescriptionTemplate NameIncludes the name of the template as well as categories attached to the template.Status – Publish: The form is published and can be sent to customers. – Edit: The form is in editing mode, has not yet been transferred to production, can’t be sent to customers.UpdatedDate and time of the last update of the template.Updated ByThe name of the user who performed the last update of the template. You can filter templates by using “Search by template or tag” field. Articles Create New Template Custom CSS Upload Template From File PDF template HTML template Hybrid template Controller types Controller editor Controller group Design Configuration Information Security Integrations Create New Template A form in the Cellosign application can be created using the following types of templates: Responsive HTML template, automatically adapted to the client’s screen and rich of display capabilities and directing the end user. For more information see “HTML template“. A template based on a PDF form that is loaded when the form is created. For the most part, the form is quite limited in its functional richness by nature. For more information see “PDF template“. A template that combines a PDF and HTML form, when the customer fills the details in HTML form and the information is embedded to the PDF form. For more information see “Hydrid template“. Add the Template Name. Choose one of the options: If you would like to create a template based on HTML experience and you do not have a file, select the “HTML Template” option. If the product should be a PDF, select the “From PDF file” option. Upload PDF file by pressing “Choose file” button and selecting PDF file location. If the product should be a combination of PDF and HTML form, select the “From PDF file” option. Upload PDF file by pressing “Choose file” button and selecting PDF file location. When you click “Save”, the template editor will open. Template toolbar Template NameTemplate Name field is editable and the value can be changed.EditPress the button to set the template in Draft status. Default state for the new created template.PublishPress the button to set the template in Publish status.SavePress the button to save the template.ClonePress the button to create a copy of the template.New created template will be automatically saved in the application.Default name of the new template: “Copy of <original name>”.DownloadPress the button to download the template. JSON file will be saved automatically in the computer location.Change underlying PDFPress the button to change the PDF file.Available only in PDF templates.Show AgentPress the button to open the template in the Agent screen.For more information about “Show Agent” screen click here.DeletePress the button to delete the template. The confirmation message will appear. To update a template, select a template from the list and click the template name. Perform the needed changes and press “Save” button. Custom CSS Disclaimer Upload Template From File This option is intended to transfer a template from one system to another, such as a test server to a production server. The file can be downloaded from a template editor before. For more information about template tools read here. PDF template It is recommended to use the PDF format only for documents that are regulatory such as powers of attorney and insurance forms. And in any case, even if the template is a PDF, it is recommended to use it in combination with an HTML template to provide a better customer experience. For the explanation about the HTML integration in PDF template read here. After loading a PDF file and saving, the application will go to the template editor screen with the template in “Draft” mode. On the right side is a list of possible controls for a PDF template and on the left side is the PDF file uploaded for the template. Click any controller on the right, drag and drop it to the desired position on the PDF. For more information about controllers read here. Clicking on the controller will move the right side to the controller editor. For more information about controller editor read here. Basic options In the PDF form the label does not appear, but a value must be entered in this field for accessibility purposes. The screen readers read the value embedded in the label for the accessibility of the form. For more details about accessibility read here. For a detailed explanation about controllers: mandatory fields, dependencies and more, read here. Position To reposition the input field on the PDF there are two options: Click on the control and drag it to the desired location on the PDF or, Click on the control and click on the “Position” tab on the right side of the screen. The “Top” and “Left” controls indicate the distance [in percent] from the top and left edges of the PDF page. To decrease or increase the input field there are two options: Click on the control on its right or bottom side and drag to fix the height or width of the input field, or Click on the control and click on the “Position” tab on the right side of the screen. The “Height” and “Width” controls, specify the height and width [in percent] of the height and width of the PDF page. Upload files and images Under the list of controllers on the right side there is an option to upload files and images: Add the Display Name: instruct client what file to upload. Select the Type of file: Image upload or File upload. Select whether the file is mandatory or not. When finished, click “Add” [green V button]. Default attachment extensions are defined in the Session settings under Projects. For more information read here. Archive Information in the archived PDF file based on PDF template is aligned to the center according to the width of the field in the form. HTML template HTML template is responsive, automatically adapted to the client’s screen and rich of display capabilities. After adding a template name and saving, the application will go to the template editor screen with the template in “Draft” mode. HTML template is built from four nested components: Page: The template contains one or more pages. Switching between the pages in the form is possible for the user using the navigation buttons at the bottom of the page. Section: Each page contains one or more sections. Row: Each row contains at least one column and up to three columns. Column: A column may contain one or more controls. At the top of the template editor is “Intro” section, that allows a Welcome message to be displayed in the form. At the bottom of the form editor is “Outro” section, that allows the completion message to be displayed to the person filling out the form. Below is an example of a template consisting of one page, in which one section includes four rows and three columns in each row. Page Template contains pages that the user can navigate through. It is recommended to use division into pages when the form is loaded with controllers, and we want to create a more pleasant experience when filling out the form. For each page in the template, you can apply a title and additional design options. To enter the page’s options, click on the margin of the page, the page will have a light green background and a panel for the page’s options will open on the right. Page titleInsert a textual title for the page.ClassUsed by developers to generate additional options in the code.Delete pageDeleting the page with all the components. Page design includes the following options: Title Background Select the color of the page title background.Title styleHeader 1 is the largest font and Header 4 is the smallest.Font colorSelect the color of the page title text.Title position “Fixed at the top” will mean that on a mobile phone the title will be pinned to the top. “Non fixed” will scroll along with the page.Show logo Set to ON to add the logo to the title.Height in pixelsHeight of the logo in pixels. Section As mentioned before, page contains one or more sections. Similar to the page options, the section also includes design options. To enter the section’s options, click on the section’s margin. The section will have a pink background and a panel for the section’s options will open on the right. Section titleInsert a textual title for the section.CLASSUsed by developers to generate additional options in the code.Delete SectionDeleting the section and its components from the page. Background colorSelect the color of the section background.Title styleHeader 1 is the largest font and Header 4 is the smallest.Font colorSelect the color of the section title text.Title BackgroundSelect the color of the section title background.IconsSelect the icon for the section title, its color and position to the right or left of the title.Search Icons [English] Search Icons [English] Allows searching by English text relevant to the icons, for example “arrow”. Rows and columns The template editor allows us to create a form that will automatically adjust to the size of the user’s screen. If we use only one column per row throughout the form the entire form, the form will be presented to the client as one column of the fields. If we use more than one column in a row, then: If the client uses a large screen such as a tablet or a desktop computer, the controls will be displayed as they are displayed in the template. If the client uses a narrow screen, for example a mobile phone, the controls in the column will be displayed in a column one after the other. Display of the form on a tablet and a desktop computer. Display of the form on a mobile phone. Intro Clicking on the “Intro” button at the top of the template entry will display the panel on the right. The “Hide Welcome screen” button will hide the rest of the parameters in the panel and will also hide the welcome screen for the client, so that the link to the form will go directly to the form itself. Hide Welcome screenWhen set to ON it will hide the rest of the parameters in the panel and will also hide the welcome screen for the client, so that the link to the form will go directly to the form itself.TitleText that appears in the title of the welcome page. The default font is H1, size and color can be edited in the text editor.Description Text that appears below the welcome page title. The default font is H3, size and color can be edited in the text editor.Start text buttonIf no value was entered the default value “Start” will be used. Outro The completion page displays an indication that the procedure has been completed successfully and even navigates it to another page such as your home site. Auto redirectIf set to ON, enter a web address to which the client will automatically redirected without going through an end page in Cellosign.Title Text that appears in the title of the Outro page. The default font is H1, size and color can be edited in the text editor.DescriptionText that appears below the Outro page title. The default font is H3, size and color can be edited in the text editor.Redirection buttonThe button to redirect to another address. If set to ON, enter a text of the redirect button and a web address to which the client will be redirected. Archive In the HTML template it is possible to hide any specific controllers from the preview and the final PDF by adding “pdf_hidden” class under the Developer tab. In this case fields with pdf_hidden class will be shown in client’s form to add the values and complete the form. But they will not be shown in the preview and in the final PDF after submission. For more information about the Developer tab click here. Hybrid template A template that combines a PDF and HTML form, when the customer fills the details in HTML form and the information is embedded to the PDF form. When creating a hybrid form first the PDF template should be created. For more information, see “PDF template“. To create an HTML template from the controllers entered in the PDF template, click “HTML Template Editor” on the top toolbar at the right side, and then click “Create HTML template”. Once clicked, all controls from the PDF template will be injected into the HTML template. Read about the HTML template editor here. Archive Information in the archived PDF file based on Hybrid template is aligned to the center according to the width of the field in the form. Controller types A template usually consists of a collection of controllers, some of which are read-only and some of which are intended for the user to enter data, upload a file, or select one or more of the displayed options. In “Controller editor” section we will describe common options for all controllers. See below a detailed explanation of each controller type and additional editor options. Telephone This controller is available only in the HTML template. Types and Validation A telephone type controller allows typing in fixed and mobile phone numbers by default. On this screen you can change the default and allow mobile or fixed only. The control does not accept non-numeric characters. Conditional permissions When checking conditions on a telephone type controller, the following options are displayed: EmptyIf the telephone controller has no value.Not EmptyIf there is any value in the telephone controller.EqualIf the telephone controller is exactly equal to the entered value.ContainsIf the telephone controller contains the entered value. ID Number This controller is available only in the HTML template. Types and Validation In this controller the “Israeli ID” is selected by default in the Builtin Types section. Validation of the field will be performed according to the ID format. Field’s value Must beTo Value in This fieldThe controller will verify if the field value meets a condition against other number fields in the form.Error Message InvalidIf an invalid value is entered, the form will notify the client by default according to the control type, for example “Data is invalid”. Insert an error message that will be displayed instead of the default.Error if no value enteredIf no value was entered to the field, the form will notify the client by default according to the type of controller, for example “Missing signature”. Insert an error message that will be displayed instead of the default. Conditional permissions When checking conditions on a ID number type controller, the following options are displayed: Grater thanIf the ID number controller is greater than the entered value.Less thanIf the ID number controller is less than the entered value.EqualIf the ID number controller is exactly equal to the entered value.Not equalIf the ID number controller is not equal the entered value.EmptyIf the ID number controller has no value.Not emptyIf there is any value in the ID number controller. Email Email Validation Email validation will be performed according to the correct email format including “@” and “.”. For example “israeli@cellosign.com”. Validation limits Email validation is conformed to RFC 5322 which is basically composed of a string given that it includes “@” and a”.” in specific places, there are no limitations on domains and sub-domain. In case you require limitation on email addresses, consider using text field and combine with regex. To do that: Add text control Use this regex ^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+.(com|net)$ to validate an email structure that must include “.com” or “.net” extensions Customize the error message if needed Note that by using a text field you will loose email functionality such as “client copy” as described below. Values & Display While setting the “Client copy” to ON, a signed copy will be sent to the entered email address. Types and Validation Field’s equation The controller will verify if the field value meets a condition against other field in the form and it can be case sensitive or not. In case the field with compare with has no value to comparison will not occur. If comparison is required that make sure the field to compare with is required.Error Message InvalidIf an invalid value is entered, the form will notify the client by default according to the control type, for example “Data is invalid”. Insert an error message that will be displayed instead of the default.Error if no value enteredIf no value was entered to the field, the form will notify the client by default according to the type of controller, for example “Missing signature”. Insert an error message that will be displayed instead of the default. Conditional permissions When checking conditions on the email type controller, the following options are displayed: EmptyIf the email controller has no value.Not EmptyIf there is any value in the email controller.EqualIf the email controller is exactly equal to the entered value.ContainsIf the email controller contains the entered value. Text Types and Validation MaskSelect a data entry format from the list. In this option, the controller will allow data entry only in the format selected for the controller.Starts withEnds with ContainThe controller will verify that the value entered corresponds to the settings entered and will display an error message if it was not entered correctly.Switch All charactersInclude Hebrew and Latin characters, numbers, and punctuation characters like space, dash, commas, underscore, middle dash. Choose specific options to exclude irrelevant characters.Switch Hebrew lettersAllow Hebrew characters plus: Single quote (“‘”), Double quote(“””), Slash (“\”), Space (” “), Underscore:(“_”), Hyphen (“-“)Switch Latin lettersAllow English characters A-Z and a-z plus: Single quote (“‘”), Double quote(“””), Slash (“\”), Space (” “), Underscore:(“_”), Hyphen (“-“)Switch NumbersAllow only digits. Min lengthMax lengthThe controller will verify the minimum and maximum length in the field integrity check.Field’s equation The controller will verify if the field value meets a condition against other text fields in the form and it can be case sensitive or not. In case the field with compare with has no value to comparison will not occur. If comparison is required that make sure the field to compare with is required.Validate bank account numberWhen set to ON the controller will verify the bank account number added to the field.Need to set Bank code and Branch code fields in order to perform the validation.Bank codeSelect the bank code field for the bank account validation.Branch codeSelect the branch code field for the bank account validation.Error Message InvalidIf an invalid value is entered, the form will notify the client by default according to the control type, for example “Data is invalid”. Insert an error message that will be displayed instead of the default.Error if no value enteredIf no value was entered to the field, the form will notify the client by default according to the type of controller, for example “Missing signature”. Insert an error message that will be displayed instead of the default. Conditional permissions When checking conditions on a text type controller, the following options are displayed: EmptyIf the text controller has no value.Not EmptyIf there is any value in the controller.EqualIf the text controller is exactly equal to the entered value.ContainsIf the text controller contains the entered value. Number Values & Display Show counter buttonsUse this option to display buttons that allow the user to increase or decrease the field value on click.Counter stepsEnables skipping according to the specified value when pressed. Default: 1 This is how the controller will be displayed on the user screen: Types and Validation Built-in TypesSelect data check from the list – ID number or company number. The controller will verify if the entered number is correct.Minimum/MaximumThe controller will verify that the entered value is according to the values entered in Minimum and Maximum fields.Field’s equation The controller will verify if the field value meets a condition against other field in the form. In case the field with compare with has no value to comparison will not occur. If comparison is required that make sure the field to compare with is required.Error Message InvalidIf an invalid value is entered, the form will notify the client by default according to the control type, for example “Data is invalid”. Insert an error message that will be displayed instead of the default.Error if no value enteredIf no value was entered to the field, the form will notify the client by default according to the type of controller, for example “Missing signature”. Insert an error message that will be displayed instead of the default. Conditional permissions When checking conditions on a number type controller, the following options are displayed: Greater thanIf the number controller is greater than the entered value.Less thanIf the number controller is less than the entered value.EqualIf the number controller is exactly equal to the entered value.Not EqualIf the number controller is not equal the entered value.EmptyIf the number controller has no value.Not EmptyIf there is any value in the controller. Checkbox Checkbox is a single selection option. Can be checked or unchecked. It is possible to set an initial button value for the checkbox, “True” or “False”, which means that the form will open for the first time with the initial value marked. Conditional permissions When checking conditions on a checkbox controller, the following options are displayed: SelectedIf the checkbox is checked.Not SelectedIf the checkbox is unchecked. Radio Values & Display TextTitle for the radio button that will be shown in the form.ValueValue of the radio button.Default valueDefault radio button that will be selected upon sending the form.Active iconThe icon that the user will see in the form when the radio is selected. In addition it is possible to define the color of the icon.Inactive iconThe icon that the user will see in the form when the radio is unselected. In addition it is possible to define the color of the icon.Delete [x] Delete the selected row.Multi selectWhen selected the user will be able to choose more than one radio button in the form.*If Multi select check box is marked icons will be ignored. See below the example of radio buttons with icons: Conditional Permissions When checking conditions on a radio type controller, the following options are displayed: EqualIf the radio controller is exactly equal to the entered value.Not EqualIf the radio controller is not equal to the entered value.EmptyIf the radio controller has no value.Not EmptyIf there is any value in the radio controller. Style Widget typesFor rating radio buttons set the type to “Rating”.Default: NoneInline BlockWhen selected the radio buttons will be lined up.Display buttonsWhen selected the radio buttons will be displayed as list of buttons See below the example of radio buttons with “Rating” widget type and “Inline Block” selected: Date A date controller type allows to select a date or a date and time. When accessibility is activated, the date is hidden and only keyboard input is allowed. Add “$now” to default value in order to inject the date (or date time) that the transaction has been created into the field. Values & Display Select the “Add Time” check box to add both date and time. By default the checkbox is unchecked. Types and Validation It is possible to apply limits on the minimum and maximum date. In the example above, the date controller will allow dates that are less than one month older than today and less than tomorrow. If we want to apply birth date selection and make sure the age is at least 18 years, we will enter “-18” in the “Maximum date” in the “Years” field. “Date format” field is used to choose the date and time format. Conditional permissions When checking conditions on a date type controller, the following options are displayed: Greater thanAfter a dateLess thanEarlier than a date Input control for validation accepts a format to calculate future or past against current date, for example make sure that contact is at least 18 years old. In the example above the parameter is set to “-18y”. As result, the dependency will be activated if the value in the date field is earlier than 18 years ago. The possible values for this field are: “y” for year, “m” for month, “w” for week and “d” for day, all in positive or negative values. User experience Date and time needs to be actively selected. To capture current date and time, user requires to select “Now” or “Today” (when time is required as well). Default selection time is “00:00” List of values A form element designated for selecting values from a list. There are two ways to store values within a list: 1.Manually typing the values within the list controller itself. (The label and the stored values will be the same). 2.Connecting the list controller to a dictionary (Unlike the first method, this method enables to create a distinction between that displayed text and its stored value). A list of values may also be cascaded while selecting a value from one element will affect available values on another list of values. For example, if the selected value from one list of states is “California”, then the other list of cities controller will filter list so that only cities within California are displayed such as: Los Angeles, San Francisco, Sacramento, etc. Configuration LabelDescriptionAdd a tagAdd manually list of values, click enter or comma to enter new valueSelect dictionaryCouple builtin dictionary with the template. Can be useful when list of values is deployed in many templates and single source need to be managed. For more information see “Dictionaries“.Multi selectEnable multi value selection to pick from the list of valuesAdd default valueFrom the dictionary or the tags, add default value that will be propagated into a form. May select many if field is configured as multi selectFilter listSelect the list of values to link the lists such as cities and streets, only if the values in the dictionaries have the same groups.AJAXSelect to enable an autocomplete in the search box of the list of values controller. If a data dictionary is selected, the functionality exists by default and cannot be cancelled.*In large lists, it is recommended to select “AJAX” in order not to overload the form.Search typeIf “AJAX” is switched on then we have two options for search values remotely.The default option is “Fuzzy”. User may override default. See notes on search types below Search types Fuzzy Search Definition: Fuzzy search is a technique used to find matches to a query that are not exact. It is particularly useful for handling misspellings, typos, or variations in word forms. The goal is to return results that are close to the search term based on certain algorithms or criteria. Example: Suppose you are searching for the term “apple” in a database. With a fuzzy search, if you accidentally type “aple” or “appl”, the search engine might still return results for “apple” because it recognizes that the intended word is similar to the input. Strict Search Definition: Strict search, also known as exact search, only returns results that exactly match the search query. There is no tolerance for variations or misspellings in this type of search. Example: Using the same example, if you search for “apple” with a strict search, you will only get results that contain the exact or partial term “apple”. If you type “aple” you will not get any results. If you type “appl” you will get results. Use Cases: Searching for specific technical terms or codes. Databases where precision is crucial (e.g., legal documents, scientific research). Situations where accuracy is more important than flexibility in matching terms. Comparison Fuzzy Search: Flexible and tolerant to errors. May return a broader set of results. Useful for improving user experience in search interfaces. Strict Search: Requires exact input. Ensures precision and accuracy in results. Useful in contexts where exact matches are necessary. Notes and gotchas When connected to dictionary, note that a dictionary include “text” and “value” columns. While the textual representation is selected it is actually holding the underlying value. As a result on a signed document produced from Cellosign the text value will appear and the underlying value is transferred as a result in the archive process. When applying multi-select on PDF templates, make sure to leave enough room for selection, also note that on a PDF result that values are concatenated on a single line with a comma separating each of the selected values. Make sure to have enough room as needed, otherwise your values will be truncated from the archived PDF. When list of values is coupled with a dictionary and you wish to assign a value upon a certain condition, make sure that the value that you are adding is in the “value” column in the dictionary and not from the “text” column (The “text” is a label that only affects the displayed text). Conditional permissions When checking conditions on the list type controller, the following options are displayed: EqualIf the list controller is exactly equal to the entered value.Not EqualIf the list controller is not equal to the entered value.EmptyIf the list controller has no value.Not EmptyIf there is any selected value in the list controller. Conditional values When using conditional values in the list of values that is connected to a dictionary, you need to use the “Values” column and not the “Text” column. See below the example of the list controller using the dictionary “Levels” with values 1, 2 and 3. Depending on the selected radio button, the value in the list controller will be set to “Level 1”, “Level 2” or “Level 3”. Client side: Text area This controller is available only in the HTML template. Types and Validation Min lengthThe controller will verify the minimum length in the field integrity check.Max lengthThe controller will verify the maximum length in the field integrity check.Error Message InvalidIf an invalid value is entered, the form will notify the client by default according to the control type, for example “Data is invalid”. Insert an error message that will be displayed instead of the default.Error if no value enteredIf no value was entered to the field, the form will notify the client by default according to the type of controller, for example “Missing signature”. Insert an error message that will be displayed instead of the default. Conditional permissions When checking conditions on a text area controller, the following options are displayed: EmptyIf the text area controller has no value.Not EmptyIf there is any value in the controller.EqualIf the text area controller is exactly equal to the entered value.ContainsIf the text controller contains the entered value. Signature Purpose Collect client graphic signatures. Signatures are embedded into the signed document in a way that it associate the signature with the signer. Values & Display Button text Override the default button text to pop signature pane. Append values A signature controller allows you to combine input from the form to be embedded in the digital stamp. In this way, you can embed the details of the user such as full name and ID into the signature field in the signed PDF. Note: The embedded data is not visible on PAD itself. It can only be viewed when clicking on signature pane using Acrobat reader. Types and Validation The signature controller includes several options. The default is a graphic signature when a user enters the controller and signs on a touch screen or using a mouse\pointing device. However, signature can be integrated data specific to the form to produce a signature with company information embedded. Also in case signer is an application user, his signature can be automatically retrieved for confirmation Company SealIf set to ON, will ask the client to enter the company name, ID and select the company type. Validation of the ID field will be performed according to the standard ID format. The input data of the company name and the identification number will form the background for the graphic signature.Company nameCompany name allows to map input fields (if present and correct) from the form to generate the company stamp automatically.Company IDCompany number allows to map input fields (if present and correct) from the form to generate the company stamp automatically. Validation of the ID field will be performed according to the standard ID format.Company TypeCompany type allows to map input fields (if present and correct) from the form to generate the company stamp automatically. Valid values “Private” or “Company”.Company stamp from imageIf set to ON, client will be required to upload an image which will be used as a background to graphic signature. The uploaded image will be used as is.Automatically apply employee signatureWith this feature Cellosign can retrieve a private user signature into the signature pad.This feature is available if the user has a private signature in his user details and user is authenticated in a workflow or a bpm process.Display signature confirmation at the bottom of this page at the PDF pageWhen applied the signature will be made available for confirmation on all consecutive pages resulting from the HTML page.In case “Display the confirmation also at the page where this signature control will appear” is set to ON it will also be made available for confirmation at the same page where the signature appears as well.Notes:1. This features requires activation2. Is available only when form preview is checked and template is an HTML3. This feature can be included on up to 6 signatures per HTML page When at least one of the Display signature confirmation options is set to ON, the green confirmation buttons will be shown in the form preview. It is possible to confirm all the signatures by clicking on the button at the top or at the bottom of the form or confirm them one by one by clicking on the green box with the signature itself. After the form submission the signatures will be displayed at the bottom of the page according to the selected settings. Due to the sensitivity of a personal signature, it is recommended to consult a legal advisor of the company in order to validate an automatic signature solution. Cellosign suggests a variety of other alternatives, such as automatic sending to the user for approval and signature. Template level features On template options you may find the following options: OptionWhat it doesAdd browser timestamp to signature fieldApplies client browser timestamp onto the signature. default unchecked.The date format displays a time signature according to the browser’s settings, the format changes according to the browser’s language, i.e. an end client that sign in the browser defined in the English (United State) language, the time signature format is American, an end client that executes a signature in the browser In Hebrew or “English (United Kingdom)” the time stamp format is European.Clone graphic signature for approvalCheck this option if your use case requires that client signatures will look the same. This option captures the first signature and use it as a signature for confirmation on the consecutive signature pads.Initialize controls on form load This option will made sure that data will be wiped as form is re-loaded. In case “Clean up signatures only” is checked, only client signatures will be cleared on reload Paragraph A paragraph is an informative controller for display only. This controller is available only in the HTML template. Values & Display Entering texts in a paragraph controller is done through a content editor. The editor supports different design tools such as: Text style, format and size Font color and highlight color Bold, Italic, Underline Ranked and numbered lists including indents Direction and alignment of the text Links (website addresses / emails), etc You can enter directly in the content editor by writing texts. Special features Ordered lists Ordered lists are texts block with incremental values such as 1,2,3 or A,B,C etc. Ordered list in paragraph control include the option for indented numbering: 1, 1.1, 1.2 etc. Click TAB to indent and Shift+TAB to out dent your text. To apply formatting on ordered lists the are few conditions: entire text should be formatted and not only portion of it Right click the bullet text that requires formatting and check: “Apply content style on list” Note that ordered lists formatting applicable for: font type, size, font color, weight (Bold) and italic. Columns spread This is a custom feature to display texts in columns (similar to way newspaper columns). To activate this feature select your text an click on icon that reads “Custom column spread”. Select how many columns, Gap in pixels between columns, ruler width, style, color and text alignment of the text Note: Column spread can be used with other styling options such as ordered lists, make sure to select the text accurately when applying additional styling, otherwise styling options might misbehave. Another approach is first to apply Column spread Pland then other styling options. Input controls Paragraph control includes builtin input types to collect data. To use this feature: Click on any of the controls appear in the menu: text, select and checkbox Enter values into dialog as needed. ID is optional, use this if you require to inject value into the control through API. Permissions to edit input controls in paragraph are driven from paragraph settings. Note: When there are input controls or editable fields from the Data table, make sure that you have edit permissions to the paragraph control: Placeholders Use placeholder button to attach value from other input controls into the placeholder. Note that data a placeholder is not editable. In addition data is propagated into a placeholder only at time when transaction create, so it’s become available when original control has default value or it has been injected using an create session API. To use placeholder: click placeholder button on the menu Select the control to attach Check/Uncheck options as required Underline options will display or hide underline where the placeholder is positioned Show label on radio or select controls refer to the option to show the visual or the underlying values of select and radio controls. As they must not be necessarily the same, for instance: “Bank Discount: can be visual value while “11” is the underlying code, having that this option provide the mean to show “11” or “Discount”. Source editor The content editor supports HTML and CSS and you can enter HTML and CSS code through the “Source” icon and/or see the design defined for the text. The content editor supports HTML and CSS and you can enter HTML and CSS code through the “Source” icon and/or see the design defined for the text. Pay attention When text is copied and pasted into the content editor, the copied text will include the HTML/CSS code from the copied source (for example: font, sizes, colors, ranked lists and any other settings that apply to the copied text in the software or website). Text pasted in this way may affect the visibility of the entire form and will affect the display of the text in the paragraph to the end user. It is required to make sure that the display is correct in the form shown to the client and not only the representative’s screen. Text should be pasted as plain text, and adjustments should be made in the content editor as needed. File Upload This control allows uploading files of any type, unless limited by file type. Types and Validation File nameAt the end of the process, the agent gets the uploaded file copy by mail. You can set here a meaningful name for this file, for example “Israel_Israeli_Photo_Document_01234”. You can also add values from the form input fields for the file name by using the “@” character with an ID of a form controller , for example @account_number. On a case that the file name uses an input from the form and this input was not entered, it will use a random file name.If you won’t set anything here, the system will generate a random file name for you.*Important: You cannot set the same file name for more then one upload file controller on the same template.Accept file typesA file upload controller will accept the following file types by default: “pdf, doc, docx, xls, xlsx, ppt, zip, txt”. It can be overwritten by entering the file types to the field.For more information about default file types see “Session settings” under Project.Add file to client email at the end of the processWhen switched on, attachment will be added to client email. Attachment is added to client regardless of the control permission. For example a Workflow where a file upload control is permitted to only one client and not the other, event than the other client will also receive the attachment in email.Default is false (not attached to client email)Maximum file sizeThe default is 1MB, maximum possible size: 5MB. Style In the Style tab, you can select the “Display button” option to show a different appearance of the controller. When the check box is selected the file cannot be downloaded or shown. Default is unselected. The example of the “File Upload” controller, when the “Display button” option is selected: The example of the “File Upload” controller, when the “Display button” option is unselected: Note: Only 8 characters of the file name including the file extension will be shown. Client with both Show and Edit permissions will be able to download the file or delete the file if needed. Conditional permissions When checking conditions on a file upload controller, the following options are displayed: EmptyIf the file upload controller has no file uploaded.Not EmptyIf there is any file uploaded in the controller. Image Upload This controller allows uploading image files only. On a desktop computer, the default is to open browser to select a file. On tablets and smart phones, uploading a photo will usually open the camera or gallery by default, depending on the type of device and its configuration [there is not always control over this]. Types and Validation File nameAt the end of the process and sending copies by email, the file name can be converted to a meaningful name, for example “Israel_Israeli_Photo_Document_01234”. Insert text or select values from the input fields by typing the “@” character.In case that the file name uses an input from the form and this input was not entered, it will use a random file name.If you won’t set anything here, the system will generate a random file name for you.*Important: You cannot set the same file name for more then one image upload controller on the same template.Convert image to PDFWhen set to ON, an image file will be converted to a PDF file, so in archival and sending copies the file will be sent as PDF and not as an image.Copy from clipboardWhen set to ON, it allows the client to paste an image from the clipboard into the field. Usually important for salespeople who want to upload a picture or an Excel table into the form.Add file to client email at the end of the processWhen switched on, attachment will be added to client email. Attachment is added to client regardless of the control permission. For example a Workflow where a file upload control is permitted to only one client and not the other, event than the other client will also receive the attachment in email.Default is false (not attached to client email)StyleInsert image in result documentIn PDF template enable embedding uploaded image into the PDF result produced in Cellosign. The image is embedded only on the result and not during the image collection (when form is processed by the end user). Make sure to add “Accessibility value” that will be embedded to PDF markup.Convert Image to DataOCR can be used to load the uploaded image and get back data structures from the certificate. For details see the OCR guide. Conditional permissions When checking conditions on the image upload controller, the following options are displayed: EmptyIf the image upload controller has no image uploaded.Not EmptyIf there is any image uploaded in the controller. Style In the Style tab, you can select the “Display button” option to show a different appearance of the controller. When the check box is selected the file cannot be downloaded or shown. Default is unselected. The example of the “Image Upload” controller, when the “Display button” option is selected: The example of the “Image Upload” controller, when the “Display button” option is unselected: Note: Only 8 characters of the image name including the file extension will be shown. Client with both Show and Edit permissions will be able to open the image for preview or delete the image if needed. Client with only Show permissions will be able to open the image for preview without deleting: Note: The orientation of the image taken with a mobile device can be different from device to device and will change according to the mobile settings. Archive In the HTML template the uploaded image will be shown as part of the final PDF file for both the client and the agent. In addition, the agent will receive the uploaded image as an attachment in the archive email. In PDF template the final PDF file will be sent without the uploaded image by default. Follow these steps ff you require that the image will be embedded inside the PDF as well: After adding image control, Switch to pane “In template” Drag your control onto the PDF layout Resize the container as needed Turn “Insert image in result document” on Only the agent will receive the image as an attachment in the archive email. Image Values & Display This control allows adding an image to the form. Image uploadPress the “Choose file” button and upload the file to the controller. It is recommended that the file size does not exceed a few KB.Accessibility valueTo comply with the accessibility directive, enter a value to the “Accessibility value” field. Developer In case the image is not displayed correctly on different phone screens go to the Stylesheet option under the Configuration tab and add the following code: .logo img { width:100%!important; max-width: 100% !important;} Then go to the image controller in the template, open the Developer tab and add the tag name (in our case it is “logo”). For more information about the Stylesheet click here. Drawing Values & Display Image uploadIt is possible to upload an image to the drawing controller. Press “Choose file” button and select the file location. Style Pen colorIt is possible to set the pen color by selecting the color from the palette. Draw control notes Be advised that draw control has no validation rule. If “Required” is checked, we will validate that the client has clicked the control and canvas is displayed. Control is not checking if any drawing was actually made. Auto Date An automatic date controller is not displayed on the form to the person filling out the form. It is generated when the signed file is produced to document the time the form was sent. Basic settings Make sure the “Show” option is set to ON in Basic settings tab: In the template that includes workflow make sure to set both “Show” and “Edit” options in order to set date time specific to that recipient submission. In case “Show” and “Edit” are checked for all recipients, the value will be as the last recipient submitted the form. Notes It is not possible to set conditional permissions and conditional values on the automatic date controller. When you click “Save”, the template editor will open. Types and validation Select date formats FormatPossible valuesdd/mm/yyyy28/02/2022mm/dd/yyyy02/28/2022dd MMM yyyy02 FEB 2022yyyy 2025MMMOctobermm11dd17 Controller group The Auto Date controller that belongs to the group will have only the label and the description parameters in the Basic settings tab. All the other parameters should be defined as part of the group. Example of the Auto Date controller that belongs to the group: Example of the Auto Date controller that does not belong to the group: For more information about the Controller group click here. Button A button controller is used for integrations with external web services. For more information about template integrations read here. Values & Display It is possible to change the default button name under “Values & Display” section. Location Location element provides the ability to collect client Geo-location, that is the latitude and longitude coordinates that represents a geographic position. Activating Geo-location elements requires some preparations in advance: Availability of maps feature. This feature is not bundled with the basic package and requires activation Availability of Google maps API token to access maps services Getting token from Google maps API See this following documentation to acquire Google’s API token At the end of the process you should have an API token from this screen Creating Google maps connector Login to template you wish to add location Geo-coder Click Integrations Click Connectors Click “Add Live Connector” Select “Maps” in source and “Google Map” in the subsequent dropdown Add API token and click verify. Note: Service will be available only after successful API activation Check “Apply Geo coding” in case you wish user will be able to enter and search location manually Setting up location field To setup location field, simply drag and drop location fields onto HTML template. Note: It is advised that the location field will be added to at full row width or at least 1/2 row width. On 1/3 row width the map might be too small for Desktop users in case the screen resolution is low. Check “Display Map on final PDF result” if you require that the map with it’s selected location marker will be displayed on PDF for archive Check “Display Location coordinates [longitude/latitude] on final PDF result” if you require that the coordinates will be displayed on PDF for archive Security and permissions Cellosign location field is executed on top of Google Map API and the browser. Since collection of Geographic location is a sensitive information, the client (user) will have to provide permissions to collect data. Permissions are granted on a browser level, it’s not Cellosign or Google authority to request for permissions. Only after permissions were granted than Google map may inquire for Geo location position.In case you require the extra mile for permissions, you may affirm location functionality all together by connect it to a dependency that requires client consent. For example, setup a location field with default display off. Connect the location element to a checkbox that reads client consent to collect location data. Activate the location only if consent provided. In case that the client does not provide consent to automatically detect Geo location, he can still search or browse his location on top of the map. For security reasons, co-browsing agent does not have write permissions on location field. API On a Webhook API location field will provide data in the following format “value” represents latitude and longitude that was geocoded “meta” > “geocoder” incorporates full address as it is available from Google maps API. { "id": "SOMEFIELD5", "value": "32.001186,34.9413393", "top": 65.91806722689076, "left": 8.194774346793352, "width": 28.8781512605042, "height": 2.048693586698337, "page": 0, "type": "location", "visible": true, "meta": { "geocoder": "Arlozorov St 160, Tel Aviv-Yafo, Israel" } } Notes and Gotchas 1. Location data is considered highly sensitive according to GDPR. As such it is advised to use location on templates with single recipient, without workflows. If you decided to use location control on multi recipient template be aware that location data is only available for PDF and API at the end of the process for the last recipient only. Data from previous recipients is not exposed. Table Table is a read only element that can be applied to HTML forms. Table can be populated with data through an API or by Lookup Connector (fetching from remote source such as database or Salesforce application). How to implement a table? In template studio, grab Table element from the right pane and drag it into the form. It’s recommended that a table will be applied to full width column. To setup a table click on the Values and Display tab and apply columns to table. In this example we are constructing a table for Orders that will have columns: Order ID, Name, Amount and Shipped. Configuration Table column configuration includes the following attributes: Column headingColumn heading textDefault valueDefault value in case cell does not include dataHiddenHide or show columnWidth %Width in %, out of 100% for the entire tablePrefixPrefix value for cell in case text applied to cellSuffixSuffix value for cell in case text applied to cellAlignAlignment: Auto [Based on language], Right, left, center or justified Apply footer row Check “Apply footer row” at the bottom. Checking it will open two additional columns to the table above: “Footer type” and “Footer value”. Use footer type “Text” to add textual value to footer Use “Sum” to calculate the values from column above “Sum” function will calculate the column above given that the values are numeric or blank only. If one of the values is a letter, a SUM result will not be displayed. Value precision (decimal point) is not rounded and will display the SUM value with comma separator and result precision. Design For table design, click on Design tab and check design settings. “Add numbering” will add ordered numbers to table rows automatically. BorderedDisplay table borders. StripedSeparate odd/even rows by background colorsHoverNumberingAutomatically add sequence number to each rowFont sizeControl Cells font size in %, relative to default fontCell padding top-bottomPad Table cells top and bottomCell padding left-rightPad Table cells left and right For table design, click on Design tab and check design settings. “Add numbering” will add ordered numbers to table rows automatically. Now that table configuration is done, let’s see how to populate it with data. Collapsed design option It is advised to use collapsed option when table is over 6 columns, other part of the table might exceed the page and will not be displayed. Please test your configuration prior to deployment in production. Known issue for rendering to PDF: Wrapping table border may exceed on page break Populate Table with an API Normally, when session is created via API, you are able to inject values into form fields. Table can also be populated with values by accepting Array of Arrays. In this example we will inject data into orders table. We have configured a four columns table: Order ID, Name, Amount and Shipped, so the value for inject could be as in this example: [ ["KL-12345-A","Disk on key Type-A","$15.23","Yes"], ["RR-87778-F","Wireless headset","","Yes"], ["JF-99087-D","Mechanic keyboard","$45.17","Yes"] ] Note that we have not included Amount on the second row. This should be populated by the default value. For security reasons, you will need to Stringify this value, so eventually injecting table dataset to API should look like the following: { "template": { "id": "your-template-id" }, "initial": { "Orders": "[[\"KL-12345-A\",\"Disk on key Type-A\",\"$15.23\",\"Yes\"],[\"RR-87778-F\",\"Wireless headset\",\"\",\"Yes\"],[\"JF-99087-D\",\"Mechanic keyboard\",\"$45.17\",\"Yes\"]]" } } Inside the form our table will be displayed like so: Populate a Table via Connector Populating a table with a connector is more flexible then populating with an API. With connectors, tables can be populated dynamically with real time data from your database and also in response to user engagement with the form. For example, lets assume that on our Salesforce application we have Account table Contact table. Each Account may have one or more contacts. We would like to display list of contacts per account. **** and remote client will insert his Account ID, in return orders table will be populated automatically with open orders. when clicking on an order row, a subsequent table or set of fields will display the order items for further engagement.**** Let’s see how this is done. First we need to configure a table. Same as above, for API that includes contact name, phone and mailing address Next. On template studio, click on Integrations, then Connectors. (See reference for connectors for more details) Let’s add a LIVE connector that would lookup on Contacts object. Note that we have configured “Select multiple records” when query result yields more than one record. In this case we want to apply multiple records to the table. Note that lookup is triggered when user “Change” account ID field, in response “Contacts” table in form will be populated with values from “Contacts” table. When Form field of type “Table” is selected for mapping, the connector will display the entire column set for mapping. Notes Make sure to build your table with minimal columns, otherwise the reminder of your table may end up with not visible both on form and PDF result. Header and Footer row are not archived back and will displayed only on the result PDF. Payment In order to apply a payment controller in a template first of all need to define payment integration under the Integrations screen. For more information about the payment integration click here. Developer Under the Developer tab of the payment controller you can map data fields returning from provider to Fields in Cellosign form. Note: Make sure not to disclose tokens and other confidential data. Either hide them from viewer or be ready to accept them on Archive API. Payment IntegrationSelect a valid payment integration created in the Integrations screen. Transaction TypeSelect the transaction type: Debit or Recurring Debit.Select the amount input fieldSelect the field from the template where the amount of the payment will be added.Note: without the amount value the payment window will not open.You can set a default value for this field, or alternatively it can be filled in by the agent when sharing the screen with the client.The field can be hidden, and it still will be the amount of transaction.Source and Target tableYou can select fields in the template and connect them to the data returned from the payment interface. For example: last 4 digits of the credit card, card validity date, credit card type, etc.In the “Source” column, enter the name of the required data to be retrieved from the payment interface. You must choose the name of the item as it appears at the checkout (for example: card_no)Select the field in the template that will receive the information item (for example: cardNumber) See below the example of the payment controller mapping: The following parameters can be returned from the payment interface and mapped to the template fields: card_expirationExpiration date of the credit cardcguidUnique identifier of the transactioncard_noCredit card numbercard_maskCredit card maskcard_nameCredit card owner namecard_brandBrand of the credit cardcard_aquirerAcquirer of the credit cardcredit_companyCredit card companyclub_idClub ID of the credit cardclub_codeClub code of the credit cardcurrencyCurrency of the transactiontotalTotal amount of the transaction life_styleIs the card is of Life Style typeauth_numberAuthorization number of the transactionpersonal_idPersonal ID of the card ownerblocked_cardWhether the card is blocked verify_error_codeValue of “result” tag. Typically if this result is diferent then “000” there is an errorverify_error_descriptionValue of “message” tag. Typically has value when result is not equal to “000” All the data returned from the payment interface will be archived in the meta_file.json upon the form submission. Values & Display It is possible to change the default payment button name under “Values & Display” section. Controller editor In this section we will describe possible options for all controllers. For additional options for a specific controller see “Controller types“. Basic options # Controller identifierWhen adding a controller to the template, a new value is provided automatically by the system. Change the value if there is a need for integration between the operating system and the Cellosign application. In this case the controller will receive the value that will be injected into the form and Cellosign will compile the data back to the operating system with the same identifier. For more details see “Integrations”.LabelThe title of the field. This is the main instruction for filling out the field in the form. In order for the form to be accessible, a clear explanation of the field purpose must be entered. See more accessibility guidelines here.DescriptionAdditional explanation that appears under the controller.RequiredIf set to ON, the system will check that the field has a valid value when submitting the form.ShowWhether to show the field or not. Usually used together with dependencies when, for example: the field is intended for entering a TIN number and it will be hidden when the customer type is a company and displayed when it is an authorized dealer type. In this case it is recommended to set the parameter to OFF. See more details in the dependencies section below.Agent AllowedWhether the agent is allowed to edit the field in the form or not. If not, the field will be set to read-only for the agent.Client AllowedWhether the client (recipient) is allowed to edit the field in the form or not. If not, the field will be set to read-only for the client. Values & Display The options in the tab allow you to enter values for the controller according to the type of controller. For each controller its related collection of options will be shown, like list values, etc. See “Controller types” page for detailed information. Field clone allows copying the value to a field from another input field. It is recommended to use when the customer has already filled in his name at the beginning of the form. Control specific settingsSee control specific documentation for available features in this tabShow clear buttonsAllows adding the clear button [x] in the field for the client with editing permissions. Types and Validation This tab includes options for data validation and possible input types for each controller. For example, in a signature field we can choose whether it is a signature and a company seal; in a text field we can limit the number of characters to a minimum and maximum. Error Message InvalidIf an invalid value is entered, the form will notify the client by default according to the control type, for example “Data is invalid”. Insert an error message that will be displayed instead of the default.Error if no value enteredIf no value was entered to the field, the form will notify the client by default according to the type of controller, for example “Missing signature”. Insert an error message that will be displayed instead of the default. Conditional permissions This tab allows you alter user permissions given a set of conditions. For example field will be required if a client is of “Business type”. To add a dependency, click the “Add Dependency” button. Select the behaviour of the control as result of the dependency: ShowIf the dependency is met the controller will be shown/hidden to the user.RequiredIf the dependency is met the controller will be mandatory or optional.EditIf the dependency is met the controller will be in edit mode [read/write] or read only. To add condition[s] for the dependency, click the “Add Condition” button. Select the controller on which the condition will be applied and the values on which the condition will be applied. If two or more conditions are added, the dependency will only be activated if they are all met [AND]. You can add more than one dependency, all the dependencies are related to each other. The dependency that will be activated is the one that meets all the dependency conditions. Note that the first condition met will trigger the permissions. This pane allow you to reorder the permissions order with drag and drop. Conditional values This tab enables you to carry out the following settings: Clone. If assigned value as clone of another field than its value will be fetched from the field it’s pointing at. This is very useful in cases where client name needs to be collected once and paste in multiple positions. In case clone is not defined then you are able to set default value or conditional value with this pane. Default value. Set up a value for the form control that will be propagated into the control whenever new session is created Conditional value. Similar to above conditional permissions you may query other form controls and based on that set up a new value to form control. Conditional value supports: concatenation of strings and arithmetic calculations. For instance This value “=OrderSum * 0.17” will search for a value in control “OrderSum” multiply it with “0.17” and return round up number. Arithmetic are always rounded. Thus value “=textA textB 123” will concatenate values in textA, textB (given that these are form controls, if not textA and textB will be added as plain text) and append to it “ABC” given that this is not a form control. Note that the first condition met will trigger the permissions. This pane allow you to reorder the permissions order with drag and drop. Style All the options in Style tab are to design the controller, such as the Background color of the field and the Font color and choosing an icon to be attached to the field. In order for the form to comply with the accessibility standard, it is recommended not to edit and use background colors for fields and fonts and to use only the design of the template to select colors. Developer In this tab there are additional options for developers: Regex ValidationCorrectness verification in Javascript flavour. It is recommended to check the token of the regex on sites specializing in regex.CLASSAdding tags of type CLASS. The tags are attached to the input field in the HTML form in order to activate CSS and Javascript adapted to the form. See more details in Javascript under Configuration. Built-in classes pdf_hiddenHide field on PDF generation In the HTML template only it is possible to hide any specific controllers from the preview and the final PDF by adding “pdf_hidden” class under the Developer tab. In this case fields with pdf_hidden class will be shown in client’s form to add the values and complete the form. But they will not be shown in the preview and in the final PDF after submission. For more information about the HTML template click here. remove-clearPerform “page-break-inside: auto” on row. Use this class in the section settings when need to remove irrelevant blank spaces in the final PDF. Controller group It is possible to create a group of controllers with the same basic settings and conditional permissions. In order to create the group, go to the Control Group tab, under the template editor, and press the “Add Group” button. Press the Edit button and add the group name. Click on the controllers in the template to be added to the same group. They will be marked in green, and will be shown under the group in the right pane. Press the Settings button and add the basic settings and the conditional permissions that will be applied to all of the controllers in the same group. In the example below the fields ID, Email, Phone and Signature will be shown to the client and will be required and editable only when the check box is selected and the Full name is not empty. Client side before the conditions are met: Client side after the conditions are met: Note: the controller that belongs to the group will have only the label and the description parameters in the Basic settings tab. Also Conditional Permissions and Conditional values tabs will not appear. They should be defined as part of the group. Example of the Text controller that belongs to the group: Example of the Text controller that does not belong to the group: To remove the controller from the group, click on it in the template or use the trash button. The green mark will be removed from the field and it will not be shown under the group in the right pane. Note: the controllers that have been removed from the group would keep the definitions of the group after it has been deleted. In order to change or remove those definitions you would need to do it manually. Design The Design tab is divided into two parts. It is possible to choose the design that is already ready for you or to set your own style for each component in the form. Part of the parameters are available only in HTML form or HTML combined with PDF. Page design Page backgroundSelect the page background color from the palette. Additional backgrounds and designs can be applied by using CSS. See more details in “Javascript” and “Stylesheet” sections.Page Background imageSelect the background image for the page. Additional backgrounds and designs can be applied by using CSS. See more details in “Javascript” and “Stylesheet” sections. Form design Form Background ColorSelect the form background color from the palette.Default: #ffffffForm Background OpacitySelect the form background opacity: 1 is most transparent, 10 is not transparent.Show table of pagesWhen selected the table of pages with the number of fields to complete will be shown at the client side.Show template name on HeaderWhen selected the template name will be added to the form header.Text colorSelect the color for all the texts appearing in the form. Default: #555555Titles colorSelect the color for all the titles appearing in the form. The landing and the final pages get the color of the titles from this element.Default: #555555 Buttons design Buttons Background ColorSelect the buttons background color from the palette (see example).Default: #eeeeeeButtons colorSelect the buttons text color from the palette (see example).Default: #555555 Buttons design settings will be applied to all types of buttons in the form, including navigation buttons, radio buttons and check boxes. See below the example of controllers according to the design: Controllers Icons colorSelect the icon color of the controller (see example).Input background colorSelect the background color of the input field.Default Input bordersSelect the border color of the input field (see example).See “Full input border” parameter for more information about full border.Default: #555555Input borders selectedSelect the border color of the input field when the field is selected by the user.Default: #555555Labels backgroundSelect the color of the fields labels background (see example). Labels colorSelect the color of the fields labels text. See “Mandatory fields titles in red” parameter for more information about mandatory fields.Mandatory fields titles in red (Accessibility)When selected the labels of mandatory fields will appear in red and override the defaults.Default: UnselectedFull input borderWhen unselected only the lower border will be shown in the input field.When selected the input field will be shown with the full border and “Border Radius” field will appear to select the radius value.Default: UnselectedStatic labelsWhen selected the field label will be fixed above the input field even when there is no content in it (see example).Default: UnselectedFontSelect the text font from the list. The font style will be applied to all the texts appearing in the form. Default: OpenSansHebrew Note: Error messages will always appear in red. PDF form design PDF font sizeSelect the font size in the signed document. Sometimes an additional control of the font size is required. It is recommended to use the default.Default: MediumPDF font colorSelect the font color in the signed document. Default: BluePDF bordersSelect the frames color for the for all the columns in the form. Relevant for HTML format only. It is recommended to leave frames without color. It is possible to select the completed design from the “Custom theme” tab. Configuration Configuration of the template includes the following tabs: Basic configuration: show form before submission, text for general buttons, categories for the template, etc. Messages & Reminders: client messages that go out of the application, text messages and emails throughout the life cycle of the form. Workflow: multiple recipients workflow, definition of different roles in the form while everyone can have a different experience. Templates sequence: definition of a triggering action (sending another form) when this form is sent by the client. Javascript & Stylesheet: options for developers [Extensions]. Errors: definition of custom error messages. Custom PDF template: definition of a unique header and footer for PDF final form. Basic HTML and Hybrid template Show form before submissionWhen selected will allow the end user to view the details of the form in final PDF format before submission.Use this option if there is a legal obligation to show the client the form (usually statutory) before sending.Default: UnselectedPost form button textAllows to enter different text for the submit button in the form. Default: Submit FormNext page button textAllows to enter different text for the next button in the form. Default: NextPrevious page button textAllows to enter different text for the previous button in the form. Default: PrevSelect or enter new tagAllows to select an existing tag or enter a new tag. Entering tags in this field will display the tags in the “Templates” screen. So that it will be possible to search by tag and to view all templates with the same [one or more] tags. CategoriesAllows to associate a template with an existing category. For more information see “Categories” section. PDF template Post signed PDF to clientWhen selected will allow the end user to enter a valid email address in order to receive a signed copy of the document. Default: UnselectedMandatoryAppears when “Post signed PDF to client” checkbox is selected.When selected will require the end user to enter an email address in order to send the form.Default: UnselectedSelect or enter new tagAllows to select an existing tag or enter a new tag. Entering tags in this field will display the tags in the “Templates” screen. So that it will be possible to search by tag and to view all templates with the same [one or more] tags. CategoriesAllows to associate a template with an existing category. For more information see “Categories” section. See below an example of selected “Post signed PDF to client” field in the form: Client forms configurations OptionDescriptionAppearance OrderSet order of transaction appearance in client forms. Inputr accept number between 1 to 100. The lower the number is it will be displayed higher in the list of transactions.IconSet Icon for button that opens the transactionIcon/Button textSet text to button that opens the transaction Messages & Reminders Email address to post when process is completeAdd in this field permanent email addresses to which a copy will be sent at the end of the process.Description Description of the template in the dashboard screens. The text can contain dynamic data from the form. Click “@” to select an input field.Date filter Select a field from the form to display in the dashboard screens.SMS text message when open a linkText that will appear in the phone message to open the form. A link will be automatically added to the text.SMS text when process is completeA text message that will be sent to the client at the end of the process. Click @ to select an input field from the form. So the message to be sent can contain personal data such as: “Hello Israel, we received the form…”.Select SMS destinationSelect the destination of the SMS that will be sent at the end of the process, based on the data from the form.Default: Current destinationInvitation Email subjectText that will appear in the email subject to open the form.Invitation email bodyText that will appear in the body of the email to open the form.Email subject for copyText that will appear in the email subject at the end of the process (copy to the client). The text can contain dynamic data from the form. Click “@” to select an input field.Email body for copyText that will appear in the body of the email that will be sent as a copy to the client at the end of the process (signed copy).Signed PDF file nameThe name of a PDF file that will be sent as a signed copy at the end of the process. The name can contain dynamic data from the form. Click “@” to select an input field. A “#timestamp” tag can be added to the filename to make it unique.Default: signed.pdfRemind about the expiration of the formWhen set to ON the client will get a reminder about the expiration of the form.Default: OFFSend with linkWhen set to ON the reminder will be sent with the form link.Default: ONRemind before (minutes)The time when the reminder will be sent, will be calculated from the Expiration time. Default: 15DestinationThe destination of the reminder message.Default: CurrentReminder textText that will appear in the reminder message.Export XLSXWhen set to ON the XLSX file will be sent in addition to the JSON file in the signed copy email at the end of the process.Default: OFFExport data to archive emailWhen set to ON the input data from the form will be exported to the archive email.Default: OFFTitle tableTitle of the exported data table in the archive email.Select fields to displaySelect the fields to be exported to archive email.Recipient targetSelect the recipient of the exported data: agent, client or both.Default: BothShow empty fieldsWhen set to ON empty fields will be shown in the exported data table in the archive email. Workflow In order to describe the workflow screen, consider the process of joining a new client when the joining details have to be validated by a representative in your organization (agent). When the details are incorrect or incomplete (for example: no appropriate power of attorney is attached) the agent can return the form to the client with notes. A recipient has a role in filling out the form: in the above example, the client and the agent both have roles. A person in the role of filling out the form can be a customer, a representative in the organization, an authorized signer, or the spouse of a main signer whose approval/signature is needed. Defining a role in the template enables the following capabilities: Application of a template in such a way that each role will have its permissions at the viewing and updating level, so for example we would like the client to have the option to type in an ID number and type of requested service, and the agent will only have the option to view the data without updating. Automatic sending of actions according to the sequence defined in the workflow screen and according to the conditions. Cellosign process engine makes it possible to produce more complex process logic than automatic sending, but still use the recipient’s application settings and especially the permissions provided to each recipient. Turn workflow onWhen selected the workflow will be created and each recipient will be able to fill only his designated fields.Recipient nameA name that will represent the recipient’s role.Submit orderThe form will be sent to the recipients according to the order defined in the workflow.Default userAn email address of a user in the application to whom an action will be sent. Usually this is a regular user to whom a sequence of actions reaches.Allow recipient enter address of next recipientIn some cases, we will not know the target for the next action in the sequence, such as a spouse who must also approve the form. In this field we select the input field from the form from which the value will be drawn to send to this role holder.Requires authenticationWhen selected the recipient will get a login screen to enter the application in order to verify that it is an authorized user.Activate OTPWhen selected the recipient will get one-time code to the selected destination in order to enter the application.Require passwordSelect one of the form fields as password, so only an authorized recipient will be able to enter the form by entering correct data.Read onlyWhen activated, client will not be able to submit the session. Session will be expired as usual. Make sure to use on a single session configuration or with BPMN. Note that it does not make sense to use it with a regular workflow unless the only last recipient is read only.Add RecipientClick “Add Recipient” button to add as many recipients as needed.Delete RecipientClick “Delete Recipient” button to delete recipients. Workflow conditions At the bottom of the recipients screen it is possible to add conditions in the sequence of recipients, so for example we can create an action that returns the form from the client to the agent in case the agent does not confirm the completeness of the details in the form. Select the recipient that forwards the action. Select the recipient to whom the action will go. Select the input field for the condition and its value. In the example above you can see that if the checkbox field is not selected, the action will go from the agent back to the client until it is checked. Recipients and their influence on controllers defined in the template In the example above there are two roles client and sales representative. We would like to allow the client to edit the full name field and for the sales representative to only view it and not edit it. The lower part of the controller settings is intended for appearance on the recipients’ screen: set “Show” ON for the recipients that are allowed to see the field data and “Edit” ON for the recipients that are allowed to edit the field data. Note: Regarding the “Agent Allowed” controller settings, this option is intended for a screen sharing operation and is not relevant for operations between recipients. Recipients and their influence on controllers’ dependencies In the example above we will activate show\required\enabled for the client only if a certain condition has been activated [in this example a value selected from the radio buttons list]. Dependencies can be activated for all recipients by selecting “All recipients”. Notes and Gotchas Workflow is limited to 10 recipients. In case you need to deploy a process that include more than 10 recipients you may add recipients in workflow pane, however the business process must be conducted using the BPM. Templates Sequence To explain the sequence of actions, consider the following example: a representative in the human resources department recruits a new employee for the position of software developer and a laptop should be issued for him. Upon sending the employee intake form, we can use this screen to send a form to an IT representative in the organization only if a certain condition is met. In such a way the data from form A will be transferred to form B without the need for additional typing. If so, form A is the form where we use templates sequence. To activate the option of templates sequence, click on “+New”. Template NameSelect a template from the list [in our example the template to send to the IT representative].Select destinationSelect destination address to which the form will be sent: – A value from an existing field in the form, a phone number or email. – Current destination: the destination to which the current form was sent, a phone number or email [in our example, the new employee procedure form]. – No destination: usually implemented by an application for field personnel.Select conditionSelect the condition (input field), if any, to activate the additional template. This field is not mandatory, so if the operation condition is not selected, it will be sent unconditionally.If equalIf the condition is selected, select the value that will be applied to the condition. In the example above, a condition will be applied to the field “Position” and the value “Programmer”. In this way we activate an additional form that will be sent to the IT representative, only if a candidate has been accepted for a programmer position. A new templates sequence can be added according to need, in a way that a separate form can reach the payroll department, etc. Note: In order for data from form A to be transferred to form B, it should be maintained that the IDs of the controllers have the same value. Javascript This option is under deprecation and it is disabled on new projects. Be advised that templates that include Javascript are not supported and you may also expect errors when imitating from an API. A template editor comes with the option of customizing CSS and JAVASCRIPT. Note: Templates that contain CSS and JAVASCRIPT code are not supported as part of the service’s maintenance and support. Javascript component in the template can be used to generate various events: for example, integration with analytics systems for the purpose of measuring events. Cellosign includes a test option when sending the form that does not depend on the out-of-the-box application, so it is possible, for example, to validate some data before sending the form. To activate this validation, create a “custom_submit” function in the Javascript panel of the template editor to generate a relevant error message and return true or false, so the process of sending the form will stop. As noted in the Stylesheet, CLASS or ID elements can be used at the controller level. It is recommended to use native Javascript. Note: each textual controller includes an option for REGEX Validation, so it can be used at the controller level without code. For more information see “Controller editor”. Stylesheet A template editor comes with the option of customizing CSS and JAVASCRIPT. It is allowed to use these options with caution and after performing the required comprehensive tests. Note: Templates that contain CSS and JAVASCRIPT code are not supported as part of the service’s maintenance and support Cellosign contains an option to produce CLASS (plural) in the elements: page, section and controller. Also, each controller includes a unique ID for which a CSS tag can be created. Since Cellosign forms come by standard with accessibility components, to use CSS with caution to avoid overriding existing accessibility functionality. For more details see “Accessibility” section. Additional highlights: Background images, icons, and media: It is allowed to load different backgrounds as “background-image” in CSS with a path to an external source, or use icons from an external source, but emphasis should be placed on the issue of copyright. It is not recommended to use a font face that is not part of the design content. Cellosign is served in a Bootstrap grid layout, it is recommended to generate CSS code in this framework. Errors Custom errorDescriptionError when OCR failsOverride default error messsage when OCR module fail to parse uploaded imageAlready sent errorCustom error when client try to post a token that is already submitted.Error messages when malware detected on file uploadOverride default error when file from cleansing returns “malware detected”. Note: OTP error, API error and Wizard page error are obsolete and not in use. Custom PDF template In the HTML template it is possible to configure a unique header and footer for final PDF file under “Custom PDF template” section. Custom header configurationWhen set to ON header editor will be opened. Custom footer configurationWhen set to ON footer editor will be opened. Header and footer have the same editor settings and the description below is relevant to both of them. The editor supports different design tools such as: Text style, format and size Text and background color Bold, Italic, Underline Ranked and numbered lists including indents Direction and alignment of the text Links (website addresses / emails), etc You can enter directly in the content editor by writing texts. Placeholders Header and footer configuration can use dynamic content from the form and project dataset such as name, logo. Use the Placeholder button to attach values from project parameters, print parameters or template fields into header or footer. Barcode Use the Barcode button to add the barcode to header or footer based on the value of the selected source field from the template. Upload Image It is possible to use the project logo and the template image in header and footer or to upload your own image. When uploading the image first choose the file from the selected location. Then go to Advanced tab and set width, height and alignment settings. Preview Click the Preview button to see the example of the page with your header and footer configurations. Information Security This chapter describes information security options in the template. Also, apart from the identification options shown in this chapter, there are additional security settings under Projects. For more information read here. Activate OTP Activating this option will generate a random 4-digit one-time password for entering the form by the person filling out the form. The password will be sent to the destination to which the action was sent. In case the operation cannot be sent through Cellosign in SMS or email, it is not possible to use the OTP. Default OTP validity is 5 minutes. Selecting the OTP option allows you to set a validity between one minute and 1440 minutes (which is a day). eIDAS The eIDAS standard implemented in the template generates a log of activity in the signature fields. Every event of signing or deleting a signature is saved in the system log and exported together with the results of the operation in an archive to email or to the core systems of your organization. The sample output below is a sample of a signature deletion event: Add browser timestamp to signature field When set to ON the timestamp of the browser will be added to signature field: Clone graphic signature for approval When set to ON it will use the last signature added by the customer and insert it into the signature field for the customer’s approval. Note: Although this is a signature that requires approval, it is recommended to consult the legal department to validate the solution of the process. Combining input fields from the form to the signature field In addition to a digital signature that is embedded in the product, it is also possible to embed input fields from the form into the signature field. In this way a signed document can be presented when the signature fields contain identifying details of the client. Require password When activated the client will be asked to fill in data that was inserted by the agent into the form, for example an ID Number. To activate this option, you must select an input field from the list of fields in the form. The field label will also serve as a guide to the client regarding what to type. Expiration in hours A working assumption is that a form contains sensitive information such as personal details, photographs of sensitive documents and signatures. Each operation has a predefined lifetime, according to the following hierarchy: At the project level: valid for 24 hours [1 day], unless otherwise applied. At the template level: valid for 48 hours by default. Valid values between 1 to 960 hours. This value overrides the project default. At the operation level [in integration only] that overrides all defaults. If the form is not sent by the client, the token [the unique link to the action] will be deleted automatically after the action is expired and will no longer be accessible. The message to the customer “404”. Additional parameters Initialize controls on form loadWhen set to ON will clear all values when client opens a form. (Pre-populated values will also be cleared).Collect geolocation dataWhen set to ON will collect geolocation data. Input validation Cellosign forms comprised of various input fields, images and datasets. Some of the inputs, such as paragraph may include rich text editor features as: html, css and javascripts. In order to secure your forms and restrict inputs it is advised to use the proper data types where needed. For example, use “Number” controls instead of plain “Text” fields to ensure that number value will be collected. Use “Email” for the same reason. In addition, Cellosign template studio include rich configuration to limit the allowed input values. For example Text field includes variety of configuration options to make sure that the right data is collected. In addition, you may also use REGEX to narrow down input options even further. Read only When activated, client will not be able to submit the session. Safe Select FieldsSelect input fields from the template to save.Select parametersSelect parameters to save. In the example below “Full name” and “ID” fields from the template and “”Parameter1” are saved. Analytics In the Analytics section, you can select these parameters in the filter and perform a search by a specific value. For more information see “Analytics” section. Processes In the Processes window saved parameters are shown under “Vault Parameters” section: It is recommended to change the ID of the saved parameter field to any clear and unique value before the run, so it will be easy to distinguish it from others. When exporting data to the Excel file saved parameters will be shown under “vault” column: For more information about “Processes” window read here. Integrations Archive Archive addressHeadersKey & Value Public link While running a public link the user will be asked to add a full name, email and mobile number. In Processes screen the template that was run from the public link will be shown with the agent name “public@cellosign.com”. It is possible to run the public link with predefined values of the full name, email and mobile number, as shown in the example below: https://form.cellosign.co/public/1234567890111222333444aa555bbb12?mobile_number=0500000000&fullname=israel&email=israel@example.com In this case all the related fields in the template should be defined with proper IDs (fullname, mobile_number and email). The values will be automatically added to the form and the connect window will not appear. For more information about templates click here. Connectors Connector is a method in Cellosign to interact with your core applications and databases. For more information see “Apps and databases connector” section.
File Upload This control allows uploading files of any type, unless limited by file type. Types and Validation File nameAt the end of the process, the agent gets the uploaded file copy by mail. You can set here a meaningful name for this file, for example “Israel_Israeli_Photo_Document_01234”. You can also add values from the form input fields for the file name by using the “@” character with an ID of a form controller , for example @account_number. On a case that the file name uses an input from the form and this input was not entered, it will use a random file name.If you won’t set anything here, the system will generate a random file name for you.*Important: You cannot set the same file name for more then one upload file controller on the same template.Accept file typesA file upload controller will accept the following file types by default: “pdf, doc, docx, xls, xlsx, ppt, zip, txt”. It can be overwritten by entering the file types to the field.For more information about default file types see “Session settings” under Project.Add file to client email at the end of the processWhen switched on, attachment will be added to client email. Attachment is added to client regardless of the control permission. For example a Workflow where a file upload control is permitted to only one client and not the other, event than the other client will also receive the attachment in email.Default is false (not attached to client email)Maximum file sizeThe default is 1MB, maximum possible size: 5MB. Style In the Style tab, you can select the “Display button” option to show a different appearance of the controller. When the check box is selected the file cannot be downloaded or shown. Default is unselected. The example of the “File Upload” controller, when the “Display button” option is selected: The example of the “File Upload” controller, when the “Display button” option is unselected: Note: Only 8 characters of the file name including the file extension will be shown. Client with both Show and Edit permissions will be able to download the file or delete the file if needed. Conditional permissions When checking conditions on a file upload controller, the following options are displayed: EmptyIf the file upload controller has no file uploaded.Not EmptyIf there is any file uploaded in the controller.
Image Upload This controller allows uploading image files only. On a desktop computer, the default is to open browser to select a file. On tablets and smart phones, uploading a photo will usually open the camera or gallery by default, depending on the type of device and its configuration [there is not always control over this]. Types and Validation File nameAt the end of the process and sending copies by email, the file name can be converted to a meaningful name, for example “Israel_Israeli_Photo_Document_01234”. Insert text or select values from the input fields by typing the “@” character.In case that the file name uses an input from the form and this input was not entered, it will use a random file name.If you won’t set anything here, the system will generate a random file name for you.*Important: You cannot set the same file name for more then one image upload controller on the same template.Convert image to PDFWhen set to ON, an image file will be converted to a PDF file, so in archival and sending copies the file will be sent as PDF and not as an image.Copy from clipboardWhen set to ON, it allows the client to paste an image from the clipboard into the field. Usually important for salespeople who want to upload a picture or an Excel table into the form.Add file to client email at the end of the processWhen switched on, attachment will be added to client email. Attachment is added to client regardless of the control permission. For example a Workflow where a file upload control is permitted to only one client and not the other, event than the other client will also receive the attachment in email.Default is false (not attached to client email)StyleInsert image in result documentIn PDF template enable embedding uploaded image into the PDF result produced in Cellosign. The image is embedded only on the result and not during the image collection (when form is processed by the end user). Make sure to add “Accessibility value” that will be embedded to PDF markup.Convert Image to DataOCR can be used to load the uploaded image and get back data structures from the certificate. For details see the OCR guide. Conditional permissions When checking conditions on the image upload controller, the following options are displayed: EmptyIf the image upload controller has no image uploaded.Not EmptyIf there is any image uploaded in the controller. Style In the Style tab, you can select the “Display button” option to show a different appearance of the controller. When the check box is selected the file cannot be downloaded or shown. Default is unselected. The example of the “Image Upload” controller, when the “Display button” option is selected: The example of the “Image Upload” controller, when the “Display button” option is unselected: Note: Only 8 characters of the image name including the file extension will be shown. Client with both Show and Edit permissions will be able to open the image for preview or delete the image if needed. Client with only Show permissions will be able to open the image for preview without deleting: Note: The orientation of the image taken with a mobile device can be different from device to device and will change according to the mobile settings. Archive In the HTML template the uploaded image will be shown as part of the final PDF file for both the client and the agent. In addition, the agent will receive the uploaded image as an attachment in the archive email. In PDF template the final PDF file will be sent without the uploaded image by default. Follow these steps ff you require that the image will be embedded inside the PDF as well: After adding image control, Switch to pane “In template” Drag your control onto the PDF layout Resize the container as needed Turn “Insert image in result document” on Only the agent will receive the image as an attachment in the archive email.
Workflows BMPN engine Drag & Drop establishment of exclusive, parallel, or dynamic business processes while integrating a round of approvals between internal and external organizational users, collecting and automatically completing data from tangential systems, creating digital forms, and driving tasks required for the business process by a representative or a core system. The process can begin from any digital point starting from the company’s portal or website of the end user (customers, suppliers, employees), web landing page, CRM, DWH, ERP systems as well as from a representative through individual or multiple sending. Workflows panel displays the list of workflows related to the project. The page is accessible for users with “Project manager” and “Organization manager” permissions. In the header of the page you can see buttons “+ New Workflow” and “Import From File”. ColumnDescriptionNameName of the workflow.CreatedDate and time when the workflow was created.UpdatedDate and time of the last update of the workflow.ActiveStatus of the workflow, whether it is active or not. The following options are available in the workflow screen: Create new workflow by pressing “+ New Workflow” button. Import workflow from file by pressing “Import From File” button. Update already existing workflow by selecting it from the list and pressing the name. Articles New Workflow Import From File Create start event Create form Create message Create exclusive gateway New Workflow Workflow window consists of the controllers list at the left side, workflow toolbar at the bottom and parameters editor at the right side. Workflow toolbar Start BPMN from chosen start pointPress the button to start the workflow from chosen start point.Save BPMNPress the button to save the workflow.Download an image of BPMNPress the button to download an image of the workflow. SVG file will be saved automatically in the computer location.Download a .json of BPMNPress the button to download a .json file of the workflow. JSON file will be saved automatically in the computer location.Backup whole processPress the button to download a .cellosign file of the whole process. Cellosign file will be saved automatically in the computer location.Delete BPMNPress the button to delete the workflow. Confirmation message will appear for approval.Reset zoomPress the button to perform zoom reset.Zoom inPress the button to perform zoom in.Zoom outPress the button to perform zoom out. Controllers Controllers allow to create the workflow with different forms, messages, dependencies and tasks. See below the explanation of each controller. Activate the hand toolUse this controller to activate the hand tool and move the whole workflow.Activate the lasso toolUse this controller to activate the lasso tool in order to mark a part of the workflow and move it to another place.Activate the create/remove space toolUse this controller to activate the space tool in order to add or remove the space between controllers in the workflow.Activate the global connect toolUse this controller to create the connection between two controllers.Create start eventIt is required to add the start event at the beginning of each workflow as a start point.Create finish eventIt is required to add the finish event at the end of each workflow as the end point.Create formUse this controller to add a template to the workflow, select roles, insert data to the form fields etc.Create messageUse this controller to create SMS or Email messages of different types with default or custom messages.Create parallel gatewayUse this controller to create parallel tasks in the workflow. It is recommended to add this controller at the beginning of each set of parallel tasks as open point and at the end of each set as close point, so the workflow will wait for all the parallel tasks to be completed before continue. Create exclusive gatewayUse this controller to create an exclusive path of the tasks and to add conditions.Create script taskUse this controller to add scripts to the workflow.Create service taskUse this controller to add services to the workflow, like Webhook, Archive etcCreate call activityUse this controller to create a call activity. In addition a new controller can be added from another controller by clicking the relevant icon and they will be automatically connected to each other. Additional options RemovePress the icon the remove the controller from the workflow.Change colorPress the icon to change the color of the controller in the workflow.Change typePress the icon to change the type.Append typePress the icon to append the type.Append form created eventPress the icon to append the form event. For example, to send a message to the recipient. Example of the workflow Import From File This option is intended to transfer a workflow from one system to another, such as a test server to a production server. The file can be downloaded from a workflow editor before. For more information about workflow tools read here. Create start event This controller is used as a start point of the workflow with input parameters and other configurations. When pressing “Start” controller in the workflow the settings panel will be opened at the right side. General settings IdID has a unique value that is automatically generated by the system.NameDefault name “Start” can be changed by the user to another value. The name is shown under the controller in the workflow.Default start pointSelect the check box if the start point is default.Is public availableSelect the check box for public start point. Upon selecting public checkbox additional parameters will be shown. Public linkPublic link that can be copied and used for the access from the public location.Public nodeSelect the public node to which the user will be redirected after the start of the process.Authentication requiredSelect the check box if the authentication is required. Inputs settings This screen is used to add input parameters to the start event controller that will be displayed when the workflow starts and used in the following sessions and messages. Add input specificationPress “+” icon to add a new input parameter.IdID of the input parameter. The value is automatically generated by the system and is unique for the specific controller.NameName of the input parameter.SourceSource of the input parameter. TypeType of the input parameter. Default: StringDefaultDefault value of the input parameter.RequiredRequired or not. Default: No Public link screen example Create form This controller is used to create a session with a specific template and role, input parameters and other configurations. When pressing “Session” controller in the workflow the session settings panel will be opened at the right side. General settings IdID has a unique value that is automatically generated by the system.NameDefault name “Session” can be changed by the user to another value. The name is shown inside of the controller in the workflow and with a unique value it is easy to distinguish it from others.Use session as defaultsSelect the default to get the data from. In case the controller was added from “Append form” option the value will be automatically added and configured to the previous session result. It is very important to define the default when there is more than one entry to the session. For more information see “Inputs” section below.DescriptionAdd the description of the session. Inputs settings This screen is used to add input parameters to the session controller from the previous controllers or from the form. Add input specificationPress “+” icon to add a new input parameter.IdID of the input parameter. The value is automatically generated by the system and is unique for the specific controller.NameName of the input parameter.SourceSource of the input parameter. Can be any of the previous controllers or the session result from the form.TypeType of the input parameter. Default: AnyRequiredRequired or not. Default: No Example of the input parameter from the Start event: Example of the input from the previous session result: Example of the input parameter from the Form Result of the client session: Form settings TemplateSelect the template from the list of existing templates to run in the current session.RoleSelect the role (recipient) from the list that is automatically created based on the template definition.Is seal sessionSelect the check box if the session is seal.DocumentPress “Choose file” button to attach the document to the session or the link button to select the reference.Input Press “+” icon to add the fields for the template parameters.KeyAdd the ID of the field controller in the template where the value will be inserted upon running the session.ValueAdd the value that will be inserted to the template field or select it from the list of input parameters.Redirect URLAdd the redirect URL or select it from the list of input parameters.Archive URLAdd the archive URL or select it from the list of input parameters. Create message This controller is used to create SMS or Email messages of different types with default or custom text, input parameters and other configurations. When pressing “Message” controller in the workflow the message settings panel will be opened at the right side. General settings IdID has a unique value that is automatically generated by the system.NameDefault name “Message” can be changed by the user to another value. The name is shown under the controller in the workflow and with a unique value it is easy to distinguish it from others. Inputs settings This screen is used to add input parameters to the message controller from the previous controllers or from the form. Add input specificationPress “+” icon to add a new input parameter.IdID of the input parameter. The value is automatically generated by the system and is unique for the specific controller.NameName of the input parameter.SourceSource of the input parameter. Can be any of the previous controllers or the session result from the form.TypeType of the input parameter. Default: AnyRequiredRequired or not. Default: No Example of the input parameter from the Start event: Example of the input parameter from the Form Result of the client session: Message settings This screen is used to configure the kind of message, recipients, message text etc. Select the kind of the message: SMS or Email. Parameters of the window will vary according to the selected kind. Email Email message settings KindSelect the kind of the message Email for email message.SenderSelect the sender from the list defined in the system. Default: support@cellosign.comPrioritySelect the priority of the email. Default: NormalAdd recipientPress “+” icon to add the fields for the recipients emails according to the number of recipients.RecipientsAdd the email address to the field or select the input parameter from the list.Add CCPress “+” icon to add the recipients to send a copy of the email.Add BCCPress “+” icon to add the recipients to send an invisible copy of the email.SubjectAdd the subject of the emailBody templateSelect the body template:– “Invitation” is the email that will include the link of the form for the recipient to sign and complete.– “Archive to rep” is the archive email, that will be sent to the agent after the form completion.– “Signed document” is the email to the client with the signed copy of the form.– “Default” is the email that will include only the Body text.Body textAdd body text. If not added, default text will be sent.Session for invitationSelect the session for invitation. SMS SMS message settings KindSelect the kind of the message SMS for phone message.SenderSelect the sender from the list defined in the system. Add recipientPress “+” icon to add the fields for the recipients phone numbers according to the number of recipients.RecipientsAdd the phone number to the field or select the input parameter from the list.Body typeSelect the body type:– “Invitation” is the SMS message that will include the link of the form for the recipient to sign and complete.– “Inline template” is the SMS message that will include only the Body text.Body textAdd body text that will be sent in the SMS message.Session for invitationSelect the session for invitation. Create exclusive gateway This controller is used to create an exclusive gateway in the workflow with Javascript or Expression Builder conditions, input parameters and other configurations. When pressing “Create exclusive gateway” controller in the workflow the settings panel will be opened at the right side. General settings IdID has a unique value that is automatically generated by the system.NameDefault name “ExclusiveGateway” can be changed by the user to another value. The name is shown next to the controller in the workflow.Default waySelect the way where the workflow will go by default. Inputs settings This screen is used to add input parameters to the exclusive gateway controller from the previous controllers or from the form. Add input specificationPress “+” icon to add a new input parameter.IdID of the input parameter. The value is automatically generated by the system and is unique for the specific controller.NameName of the input parameter.SourceSource of the input parameter. Can be any of the previous controllers or the session result from the form.TypeType of the input parameter. Default: AnyRequiredRequired or not. Default: No Example of the input parameter from the Recipient1 session result: Example of the input parameter from the Form Result of the Recipient1 session: Condition definition When pressing the gateway in the workflow the settings panel will be opened at the right side. Press “Condition” tab to add conditions to your exclusive gateway. Expression language can be “Javascript Expression” or “Expression Builder”.
API Cellosign includes comprehensive set of RESTful API for both inbound and outbound traffic. The underlying concept is that the client core applications (such as CRM/ERP applications) are the system-of-proof. Meaning it is well informed by Cellosign regards business process activities. Let’s take for example an on boarding process that involves clients, back office and specialists that are attached to the process given the right conditions. Cellosign is perfectly able to report a status of each station as the process progress both by pull (querying) or by pushing it into your core app at the time of event. How does it happen? When a core application starts new business process (any) with an API call, it receives in response process keys specific to the process. Based on that set of keys, you will be able to pull data from Cellosign regards the process status. Also, if configured, our outbound API (aka webhooks) can post the data to the CRM Articles Inbound Outbound: Webhooks Inbound Cellosign inbound APIs specifications are documented in API documentation (OpenApi). This document includes reference and Postman samples to get a quick jump-start. This folder includes samples for: Business cases Dictionary management using APIs On each page download collection and import it to your local postman. How to use Postman collection? The collection includes list of scenarios, To run these scenarios you will be required to setup couple of variables. After importing the collection, click on the variables section and edit the following items: project: enter the id of your project. To locate project id login to Cellosign application, your project id appears on the top right, next to your name token: enter your user token. To locate token, login to Cellosign application, click on the top right corner on your name and click “Profile”. scroll to the bottom, click “Show token” and copy the content. Dictionary This document lists the methods to manage dictionaries in Cellosign application. Dictionaries can be managed manually or with API and associated with a list of values (select element) within a from. This document include methods and code samples to upload, delete, replace or add new content to dictionary through Cellosign Rest API. What is a dictionary? A dictionary is a table where each row includes: Text that is presented to user, for example: Tel-aviv. Text must be unique throughout the table. A value that represents the underlying code. Might be the same as text or a code and must be unique Group. This is optional field that can be used for aggregation, for example if my dictionary is streets than group will be used to point to which city it associated with Collection Cellosign-API-v3-dictionatries.postman_collectionDownload Methods Get List of dictionaries Get list of dictionaries and their corresponding metadata. For each record the “id” is the key to reference to act on specific dictionary. Example response { "meta": { "links": { "next": null, "previous": null }, "total": 2, "many": true, "paginated": true }, "data": [ { "id": "09afed16-3eb3-0259-8f73-4787114e9055", "count": 5, "modified_by": "examples@cellosign.com", "created_at": "08/06/23 18:11", "modified_at": "12/06/23 09:09", "name": "Cities" }, { "id": "c68a16ae-b85c-5636-8722-abd5a96c7954", "count": 200, "modified_by": "examples@cellosign.com", "created_at": "08/06/23 18:14", "modified_at": "08/06/23 18:29", "name": "Streets" } ] } Get Dictionary metadata Example response { "data": { "id": "c68a16ae-b85c-5636-8722-abd5a96c7954", "count": 200, "modified_by": "examples@cellosign.com", "created_at": "08/06/23 18:14", "modified_at": "08/06/23 18:29", "name": "Streets" }, "meta": {} } Create new dictionary Upload new dictionary to Cellosign. Method returns dictionary metadata in response Overwrite dictionary This method replaces a dictionary content. All records will be removed and content in request body will be uploaded. Method returns dictionary metadata in response Append to Dictionary Request body will be appended as new records to dictionary. Method returns dictionary metadata in response Notes and Gotchas For security reasons some characters are disallowed. Disallowed for Text column: ‘<‘, ‘>’, ‘;’ Disallowed for value and group columns:'<‘, ‘>’, ‘#’, ‘$’, ‘%’, ‘^’, ‘&’, ‘*’, ‘|’, ‘;’, ‘:’, ‘{‘, ‘}’, ‘[‘, ‘]’, ‘=’, ‘+’, ‘-‘ Note: 100K records is the maximum allowed to upload into a dictionary. Business cases Use cases Ad hoc session with PDF parser Collection Inbound API collection.postman_collectionDownload Ad hoc session with PDF parser This is mostly a legacy use case where you might have PDF or word documents generated and you require that the client will receive the document and sign on one or two places and maybe accept some consent (using a checkbox). At the end of the process you require that the signed document will be delivered to your application through an API request. What’s included in the sample? The sample includes base64 from PDF file. The PDF includes arbitrary texts that are used by Cellosign parser, see below in red, “consent” and “signature1”. Request markup that instructs the parser how to use these texts { "template": { "analyze_document": { "analyze": true, "tags": { "signature1": { "type": "pad", "width": 7, "height": 5, "show": true }, "consent":{ "type": "checkbox", "width": 2, "height": 2, "show": true } } }, "from_document": "JVBERi0xLjUNJe..." } } The markup above instruct Cellosign parser to search for the text “signature1” and transform it to a signature pad in that exact position where it’s found. It also instruct the parser to search for the string “consent” and place a checkbox right in that position. It’s recommended that when using in production the texts on the PDF file will be in transparent font. Ad hod archive integration "integrations": [ { "type": "archive", "payload": { "url": "http://point.to.api.com/endpoint" } } ] This markup instruct Cellosign to archive the sign PDF back to an API. See more detail in archive documentation Alternatives You may consider changing the scenarios to updated user experience using HTML templates, where personal data can be injected, other data can be collected from the client and signed and accessible PDF is generated at the end of the process, With so many more options available. Outbound: Webhooks Webhook is an API call made from cellosign to to your application, this our method to keep your application on track in regards to business process. Webhooks are very flexible tool and if used correctly it can provide your organization a complete visibility on the whereabouts of your business process. Webhook types The table below lists types of webhooks, there are are different types of web hooks that serves different purposes. TypePurposePost business process result (Archive)request at the end of a business process. This web hook can be executed to deliver a business process products that includes at least signed document, form data, attachments etc.Get data from remote sourceGet data from 3rd party application based on changes carried out in form, while user editing it.Post callback after storage operationPost data to API after a storage call been executedPost notification when form is submittedPost data to API after a client submits a formPost notification when client logged in to formPost data when client logs in to a form, activated with click on SMS or EmailPost notification when form loaded on client browserPost data when client form is loaded and operationalPost notification when session is expiredPost data when transaction is expiredPost notification when session is deletedPost data when transaction is deletedPost notification when a new session created in workflowPost data when transaction is created. This is useful on business process that generates multiple transactionsSend SMSConfigure outbound SMS of your own. Can be used when your cellosign does not have a plugin for your provider. Note that the data structure id fixed. Setting up Webhook To configure a webhook, we basically need an Access to the remote end point and configure how it works. The table below details the configuration options for webhooks. Follow these steps to add Webhook: At the dashboard click integrations locate Webhooks integration pane click “Add” FieldWhat it’s for?AliasA readable name for the web hook. In some cases webhooks can be configured per business process, so provide meaningful nameTypeSelect webhook typeImplicit/ExplicitImplicit means that whenever a business process is completed, this webhook will fire off. Explicit means, don’t fire unless instructed. See below options for setting up explicit.urlInsert an API end point addressTimeoutSet timeout in seconds on the remote endpoint. If you know that your endpoint process takes time, increase the defaultverify sslIn case your address is deployed with https protocol it’s recommended that SSL handshake will be carried out successfully. Otherwise you can turn this off.HeadersIn case your endpoint required custom headers, click add and enter key/value pairsAuthenticationIt is recommended to use a mechanism for authenticating requests from Cellosign to your endpoint. For that we have couple of options:1. Basic authentication. Add user name and password. Cellosign will convert it to base64 according to Basic auth standard2. Custom authentication. Insert key/value pair for authentication3. Authenticate with Secret. This is a bearer token mechanism. See Secret documentation for detailsContent type, AcceptBy default Cellosign webhooks generates and accept JSON content. You may select these settings to be converted to XML. Note: This is a simple conversion from JSON to XML request body and vice versa, This is not WSDL/Soap operation.Request body exampleThis section displays how a standard body request data structure looks like, based on the webhook types. Each webhook type displays different body request example.Response successThis is an example of how the response from your endpoint should respond success.Response errorThis is an example of how the response from your endpoint should look like in case of an error.Save/DeleteSave the configuration or delete webhookTestClick this button will fire the sample above based on the configuration and will return the result to webhook pane. Explicitly/Implicitly Webhook implementation A webhook can be setup to fire off Implicitly that means every business processes will fire this integration. For example a webhook for Archive will be posted to your Endpoint when every business process within your project is completed. This is the recommended approach if indeed all your business process should end up in in this manner. However if there are different use cases, such as: separate endpoints or some business process does not need API calls, it is recommended to couple webhook with a business process Explicitly. To explicitly couple a webhook with business process we purpose two options: Manually connect it to specific template(s), which means, templates configuration will include explicit coupling with a webhook. See details for coupling webhook to template in webhook specific page Ad hoc integration for a business process: When the webhook is set to explicit the webhook pane display the integration code that can be added to create session request. Simply add the code to your request. All ad hoc integration can be add within the integrations Array. Note that the UUID represents specific webhook Archive When a business processes is completed there are couple of options to send process products to your application. One way to do that is by using Archive webhook. Archive is a standard Post request that includes all the process data. Among other bits of data, it includes: Data from the submitted form Attachments that were added to the process Signed and locked PDF document Information regards the client and more Why do I need this? Archive webhook can be very useful when you need a resilient method to accept session product. Other methods, such as storage or SMTP are typically a-synchronous and not as much resilient as an API because it provides a real time acknowledge. This method also includes a fail over and alert mechanism. To add an archive webhook: follow Webhook guide to add new webhook. See below a guide for archive body request and expected response. See below posting data elements Archive request and response This is a description for Body request posted from Cellosign to your API. ElementWhat it’s for?EventObject that includes Event type: WHP_ARCHIVE and time stampSession This object includes complete details on the session(s). Since business process may include number of sessions, all the sessions that has been taken place with this process are listed here. Each session includes the following elements: “id”: session token“author”: User who created the session“reference”: aggregator ID for business process.“transaction_number”: ID for transaction that can be located in cellosign UI application“recipient”: full disclosure on where invitation and OTP were posted as well as, also in case of a workflow this will indicate the recipient id in the process and it’s convention name“submission_details”: Client browser details, IP, User agent and Geo location details when collected and applicable“labels”: This is a key value object in reference to values injected to labels. See API documentation for details“created_at”: Time this session created“submitted_at”: Time this session submitted by client“template”: Template id“integrations”: List of integrations that were executed in this sessionsignaturesArray of each signatures. For each signature element1. Field ID2. When signature pad was signed3. Signer details: id and convention4. Key/value labels that are attached to signature pad, if anydataList of all form elements , each form element includes:1. element id2. value3. element type4. visible on final pdf true or false5. page and coordinates [top,left, width, height]: these values represents the absolute position of the element on the PDF fileattachmentsList of attachments being collected throughout the process. each element on the list includes:1. Form element id2. Filename3. mime type4. Base64 string of the filesigned_documentSigned and locked PDF document. includes: file name, mime type [application/pdf] and base64 string of the filegroup_dataArray data , for future use { "event": { "type": "WHP_ARCHIVE", "timestamp": "2022-12-21T22:29:17.603248" }, "reference": "f51c66ba-d33a-4c59-b63a-aa270383fb9e", "sessions": [ { "id": "wSYqmI4xsE", "author": "john@example.com", "reference": "f51c66ba-d33a-4c59-b63a-aa270383fb9e", "process_id": "f51c66ba-d33a-4c59-b63a-aa270383fb9e", "process_number": 100, "transaction_number": 30, "recipient": { "id": 1, "name": "client", "otp_destination": { "address": "client@example.com", "type": "email", "provider": null, "status": "sent" }, "invitations": [ { "address": "client@example.com", "type": "email", "provider": null, "status": "sent" } ] }, "submission_details": { "ip": "127.0.0.1", "user_agent": "Best browser ever", "device": "mobile", "latitude": 33.196944, "longitude": 35.543705, "accuracy": 1000 }, "labels": { "CUSTOMER_TAG": "CUSTOMER_VALUE" }, "created_at": "2022-12-21T22:29:17.603287", "submitted_at": "2022-12-21T22:29:17.603290", "template": { "id": "9fa70d4ccea84262b1ed2308a07a3fb4" }, "integrations": [ { "id": "861c85ff-ba57-4679-8a63-c731d4e7b10b", "type": "EF_CLIENT_LOGGED_IN", "status": "success", "executed_at": "2022-12-21T22:29:17.603312", "payload": null, "error": null } ] } ], "signatures": [ { "id": "SIGNATURE1", "signed_at": "2022-12-21T22:29:17.603330", "signed_by": { "id": "1", "name": "client" }, "labels": { "SOME_TAG": "SOME_VALUE" } } ], "data": [ { "id": "SOMEFIELD1", "value": "SOMEVALUE1", "top": 65.91806722689076, "left": 8.194774346793352, "width": 28.8781512605042, "height": 2.048693586698337, "page": 1, "type": "text", "visible": true, "meta": {} }, { "id": "SOMEFIELD2", "value": "SOMEVALUE2", "top": 65.91806722689076, "left": 8.194774346793352, "width": 28.8781512605042, "height": 2.048693586698337, "page": 3, "type": "text", "visible": true, "meta": {} }, { "id": "SOMEFIELD3", "value": "SOMEVALUE3", "top": 65.91806722689076, "left": 8.194774346793352, "width": 28.8781512605042, "height": 2.048693586698337, "page": 0, "type": "select", "visible": true, "meta": {} }, { "id": "SOMEFIELD4", "value": "4a45b2df-f7bd-48bf-a2b4-b8405eb51194", "top": 65.91806722689076, "left": 8.194774346793352, "width": 28.8781512605042, "height": 2.048693586698337, "page": 0, "type": "payment", "visible": true, "meta": {} }, { "id": "SOMEFIELD5", "value": "32.001186,34.9413393", "top": 65.91806722689076, "left": 8.194774346793352, "width": 28.8781512605042, "height": 2.048693586698337, "page": 0, "type": "location", "visible": true, "meta": { "geocoder": "Arlozorov St 160, Tel Aviv-Yafo, Israel" } } ], "attachments": [ { "id": "ATTACHMENT_FIELD_ID", "filename": "SOMEFILENAME1.png", "mimetype": "image/png", "content": "BASE64 file content" } ], "payments": [ { "status": "success", "type": "verify_credit_card", "transaction_id": "4a45b2df-f7bd-48bf-a2b4-b8405eb51194", "session_id": "wSYqmI4xsE", "provider_transaction_reference": "4f33600c-34bf-4cb1-af3a-52237b1ecc5a", "provider_transaction_result": { "currency": "ILS", "card_mask": "458045******4580", "internal_transaction_id": "69703676", "club_code": "", "credit_company": "Visa", "club_id": "", "card_id": "1080131215624580", "session_cd": "414ecb3e88ac0148eaec9c5efbad68a8a3fb60674b4e5f92ec0c0d9a709d5039", "card_expiration": "0724", "card_brand": "Visa", "card_aquirer": "Alphacard", "total": "2100", "card_no": "xxxxxxxxxxxx4580", "life_style": "1", "cguid": "69796709", "auth_number": "1579133" }, "amount": 2100 } ], "signed_document": { "filename": "SIGNEDDOCUMENT.pdf", "mimetype": "application/pdf", "content": "BASE64 file content" } } Archive response A response from the API should include: status: “0” for success or “-1” for an error . In case of an error, please provide enough details in “errordesc” key. In case of success you may response with reference or/and a url to any object/file. This can be convenient for tracking or debugging in case an issue is raised { "status": "0", "document": { "reference": "1bbc36dd-6e6b-4ab2-bb97-4ee46627bcab", "public_link": "https://mystorage.example.com/1bbc36dd-6e6b-4ab2-bb97-4ee46627bcab" }, "errordesc": "" } { "status": "-1", "document": null, "errordesc": "Something goes wrong" } Posting data elements By default Archive webhook include that entire data layer from the form. Each field has an entry in “data” array that the represent the key, value, type, position and metadata when applicable. Sometimes “Data” is not required or it may include potentially vulnerable content, mostly “paragraph” type of fields that include html tags. To override the defaults: Uncheck “Post data element” to exclude “data” altogether Uncheck “Post paragraph fields” to exclude Paragraph fields only Form submitted This webhook can post a request to your API when a session (transaction) is submitted by end-client. This API is different from archive. While archive is posting the entire session data and documents, form submitted is a notification when submit is clicked and verified in Cellosign application. Why do I need this? Use this API if you need to track lapse time for client completion, submitted to archive or creating new session in a flow Form submitted request and response Following are definitions for Body request posted from Cellosign to your API ElementWhat it’s for?EventObject that includes Event type: WHEF_CLIENT_FORM_SUBMITTED and time stampSessionThis object includes details on the session the webhook was fired from. It includes the following elements:1. “id”: session token2. “reference”: aggregator ID for business process.3. “transaction_number”: ID for transaction that can be located in cellosign UI application4. “recipient”: in case of a workflow this will indicate the recipient id in the process and it’s convention name5. “labels”: This is a key value object in reference to values injected to labels. See API documentation for detailsrecipientThe id of the recipient and conventionlabelsAny key/value that is associated with the sessionclientObject that includes basic information regards the browser that webhook was fired form Example post request Your API can expect this API example for getting information from your API. { "event": { "type": "WHEF_CLIENT_FORM_SUBMITTED", "timestamp": "2025-01-26T09:35:39.829692" }, "session": { "id": "mWPLQ0nDqw", "reference": "9bfb3574-6ffb-4e43-be47-c6001a39ad79", "process_id": "9bfb3574-6ffb-4e43-be47-c6001a39ad79", "process_number": 39, "transaction_number": 10, "recipient": { "id": 1, "name": "client" }, "labels": { "CUSTOMER_TAG": "CUSTOMER_VALUE" } }, "client": { "ip": "127.0.0.1", "user_agent": "Best browser ever", "device": "mobile" } } Expected response A successful response from the API should include array of objects, were each object includes “id” and “value” key/value pairs as in this example. Values will be injected into their corresponding id in a session. { "status": "0", "errordesc": "" } Logged in and Form loaded The post request is identical in both “Logged in” and “Form loaded”. Logged in is triggered when client logs in to a form in any mean, such as click on URL in SMS or email Form loaded is triggered when a form is fully loaded into client browser and is operational. Form loaded request and response Following are definitions for Body request posted from Cellosign to your API. ElementWhat it’s for?EventObject that includes Event type: WHEF_CLIENT_FORM_LOADED or WHEF_CLIENT_LOGGED_IN and time stampSessionThis object includes details on the session the webhook was fired from. It includes the following elements:1. “id”: session token2. “reference”: aggregator ID for business process.3. “transaction_number”: ID for transaction that can be located in cellosign UI application4. “recipient”: in case of a workflow this will indicate the recipient id in the process and it’s convention name5. “labels”: This is a key value object in reference to values injected to labels. See API documentation for detailsrecipientThe id of the recipient and conventionlabelsAny key/value that is associated with the sessionclientObject that includes basic information regards the browser that webhook was fired form Example post request Your API can expect this API example for getting information from your API. { "event": { "type": "WHEF_CLIENT_FORM_LOADED", "timestamp": "2025-01-26T10:54:28.291796" }, "session": { "id": "bkIUKTHxws", "reference": "cbbdd32e-8c97-4ec8-a20f-3b6d4d7be2fd", "process_id": "cbbdd32e-8c97-4ec8-a20f-3b6d4d7be2fd", "process_number": 2, "transaction_number": 7, "recipient": { "id": 1, "name": "client" }, "labels": { "CUSTOMER_TAG": "CUSTOMER_VALUE" } }, "client": { "ip": "127.0.0.1", "user_agent": "Best browser ever", "device": "mobile" } } Expected response A successful response from the API should include array of objects, were each object includes “id” and “value” key/value pairs as in this example. Values will be injected into their corresponding id in a session. { "status": "0", "errordesc": "" } Session expired This webhook can post a request to your API when a session (transaction) status turned expired. It is not deleted yet but it is no longer accessible and cannot be recovered by extending the session. Why do I need this? This API is similar to Session deleted, however it occurs before deleted mostly in minutes when it comes to a standalone transaction (which is not part of a workflow) or days when it is part of a workflow. Session expired request and response Following are definitions for Body request posted from Cellosign to your API ElementWhat it’s for?EventObject that includes Event type: WHEF_SESSION_EXPIRED and time stampSessionThis object includes details on the session the webhook was fired from. It includes the following elements:1. “id”: session token2. “reference”: aggregator ID for business process.3. “transaction_number”: ID for transaction that can be located in cellosign UI application4. “recipient”: in case of a workflow this will indicate the recipient id in the process and it’s convention name5. “labels”: This is a key value object in reference to values injected to labels. See API documentation for detailsrecipientThe id of the recipient and conventionlabelsAny key/value that is associated with the session Example post request { "event": { "type": "WHEF_SESSION_EXPIRED", "timestamp": "2025-01-26T09:20:03.439650" }, "session": { "id": "xM72By4JkM", "reference": "2d12cdb3-d666-4dbd-8827-d7c165ed9d17", "process_id": "2d12cdb3-d666-4dbd-8827-d7c165ed9d17", "process_number": 28, "transaction_number": 17, "recipient": { "id": 1, "name": "client" }, "labels": { "CUSTOMER_TAG": "CUSTOMER_VALUE" } } } Expected response A successful response from the API should include array of objects, were each object includes “id” and “value” key/value pairs as in this example. Values will be injected into their corresponding id in a session. { "data": [ { "id": "OrderId", "value": "1234-45" }, { "id": "OrderStatus", "value": "Open" } ] } Session deleted This webhook can post a request to your API when a session (transaction) is deleted from Cellosign database and no longer accessible. Why do I need this? A transaction in Cellosign has a Time To Live attached to it. It may be long or short. Nevertheless, If you require a notification regards a deleted session for any reason so you can fire a new session or inquire why it was deleted this is the API to consume. Session deleted request and response Following are definitions for Body request posted from Cellosign to your API ElementWhat it’s for?EventObject that includes Event type: WHEF_SESSION_DELETED and time stampSessionThis object includes details on the session the webhook was fired from. It includes the following elements:1. “id”: session token2. “reference”: aggregator ID for business process.3. “transaction_number”: ID for transaction that can be located in cellosign UI application4. “recipient”: in case of a workflow this will indicate the recipient id in the process and it’s convention name5. “labels”: This is a key value object in reference to values injected to labels. See API documentation for detailsrecipientThe id of the recipient and conventionlabelsAny key/value that is associated with the session Example post request { "event": { "type": "WHEF_SESSION_DELETED", "timestamp": "2025-01-26T09:08:37.899782" }, "session": { "id": "vFsQL3P1kr", "reference": "916ca879-0579-4f5b-9dfe-bce341aca065", "process_id": "916ca879-0579-4f5b-9dfe-bce341aca065", "process_number": 76, "transaction_number": 62, "recipient": { "id": 1, "name": "client" }, "labels": { "CUSTOMER_TAG": "CUSTOMER_VALUE" } } } Expected response A successful response from the API should include array of objects, were each object includes “id” and “value” key/value pairs as in this example. Values will be injected into their corresponding id in a session. { "status": "0", "errordesc": "" } Post notification when a new session created in workflow This webhook can post a request to your API when a new session (transaction) is created in Cellosign database.. Why do I need this? It is best used if you need to track, programmatically the advancement of a business process (workflow or BPM). Let’s assume that you have a recruitment process started in Cellosign and you want each stage (or station) to report when a form to the next station has been posted to recipient. session created request and response Following are definitions for Body request posted from Cellosign to your API ElementWhat it’s for?EventObject that includes Event type: WHEF_SESSION_CREATED and time stampSessionThis object includes details on the session the webhook was fired from. It includes the following elements:1. “id”: session token2. “reference”: aggregator ID for business process.3. “transaction_number”: ID for transaction that can be located in cellosign UI application4. “recipient”: in case of a workflow this will indicate the recipient id in the process and it’s convention name5. “labels”: This is a key value object in reference to values injected to labels. See API documentation for detailsrecipientThe id of the recipient and conventionlabelsAny key/value that is associated with the session Example post request { "event": { "type": "WHEF_SESSION_CREATED", "timestamp": "2025-01-26T08:49:33.626046" }, "session": { "id": "5Wkt78ciJc", "reference": "7932390e-ee95-4888-ba64-9c7e6f2f5908", "process_id": "7932390e-ee95-4888-ba64-9c7e6f2f5908", "process_number": 51, "transaction_number": 53, "recipient": { "id": 1, "name": "client" }, "labels": { "CUSTOMER_TAG": "CUSTOMER_VALUE" } } } Expected response A successful response from the API must include status: “0”, Otherwise “-1”. { "status": "0", "errordesc": "" } Field change As a form is being edited by a client you are able to connect data from the form to get or validate data on remote source, such as your CRM. With field change webhook you can easily map and post fields and values from within a live form were to get an answer from your endpoint. Why do I need this? This webhook can be very useful when not all data can be exposed in a form but rather need to be fetched or validated as part of business process, such as verify client ID and fetch personal details: To add field change webhook: Follow Webhook guide to add new webhook Find below details for field change body request and expected response Map fields and define when and how the data connector will act on live form. See below Setting up field change connector Field change data request and response Following are definitions for Body request posted from Cellosign to your API ElementWhat it’s for?EventObject that includes Event type: WHEF_FORM_FIELD_CHANGED and time stampSessionThis object includes details on the session the webhook was fired from. It includes the following elements:1. “id”: session token2. “reference”: aggregator ID for business process.3. “transaction_number”: ID for transaction that can be located in cellosign UI application4. “recipient”: in case of a workflow this will indicate the recipient id in the process and it’s convention name5. “labels”: This is a key value object in reference to values injected to labels. See API documentation for detailsclientObject that includes basic information regards the browser that webhook was fired formchangeObject that includes the field id, type and value that was triggering the request.fieldsArray of objects, were each includes the id,type and value of fields that we need to post to the API. Example post request Your API can expect this API example for getting information from your API. { "event": { "type": "WHEF_FORM_FIELD_CHANGED", "timestamp": "2023-06-30T13:35:51.579895" }, "session": { "id": "UDi8E55p1O", "reference": "19dae31f-377c-44a4-be51-bf3e695dea9d", "process_id": "19dae31f-377c-44a4-be51-bf3e695dea9d", "process_number": 19, "transaction_number": 26, "recipient": { "id": 1, "name": "client" }, "labels": { "CUSTOMER_TAG": "CUSTOMER_VALUE" } }, "client": { "ip": "127.0.0.1", "user_agent": "Best browser ever", "device": "mobile" }, "change": { "id": "myfield", "type": "text", "value": "new value here" }, "fields": [ { "id": "AccountID", "type": "number", "value": "999123456" }, { "id": "FullName", "type": "text", "value": "Ron Jerome" } ] } Expected response A successful response from the API should include array of objects, were each object includes “id” and “value” key/value pairs as in this example. Values will be injected into their corresponding id in a session. { "data": [ { "id": "OrderId", "value": "1234-45" }, { "id": "OrderStatus", "value": "Open" } ] } Setting up field change connector Follow these steps to apply the webhook into the template: Login to your template Select “Integrations” on the top right and then click on “Connectors” Field change connector can be applied to “LIVE” only. Click “Add Live Connector” On source, select “Webhook” On Type: select the your webhook [by alias] Turn it’s status to “Active” Define how the connector is trigerred, there are two options: On button click: Select a button from the form that will fire the webhook On change: Select a field from the form that on value change will fire the webhook Add mapping: Select the fields that will be posted to your API. For each field you have the option to modify it’s convention (alias), this can become handy if your API/DB has diferrent names for these fields. On the response the alias will be preserved to map it back into the form Save the connector and the template
Transactions File For detailed information about this section see “Post transactions from spreadsheet”. Articles Post transactions from spreadsheet Post transactions from spreadsheet This function enable you to post transactions from data you have in EXCEL spreadsheet. This is a convenient option for mass distribution in case posting from API is not available to you. Quick brief on this function To use this option select “Transaction file” from the left menu. Select template that you would like to distribute and select template fields that you wish to inject values into’ for example client name, address etc.. Download Cellosign spreadsheet that includes structure to fill data into Update Cellosign spreadsheet and upload it back Uploaded data will be displayed and will highlight invalid data, such as incorrect email address or phone number, that needs to be fixed Fix or remove rows and post transactions Cellosign will post all transactions one by one. At the end of posting you should be receiving an email on posting completion Configure Start by selecting template from templates select box. Note: users with “Agent” permissions will get templates in status “Publish” in the list and users with “Project manager” permissions will get both “Publish” and “Edit” templates in the list. Select fields that you would like to inject values into. Filtering fields to for selection includes to options: Filter all required fields. This will display fields that are setup as “required” by default in the template By Class. This function can be very handy if you are using this function a lot. Filter by class will enable you show only fields of some attribute that are per-configured in the template. To configure a class for a template field. Go to template studio Select field you wish to apply class for and enter class name. You may enter classes as many as you wish to filter for different needs Once fields are configured are setup your Class be displayed in your filter list You may add as many templates as you wish on the configuration. This can be useful in cases you wish to post a client more than one form to fill out. So in that event, each row on your spreadsheet can be submitted to a single recipient. will see how it is done shortly. Prepare data Once configuration is done: Click on “Export transaction template”. A spreadsheet file will be downloaded to your browser. If it’s not: Check your browser for blocked pop ups and allow popups from this page Otherwise, please consult with your system administrator, as this might be an blockage on your network Open the spreadsheet and you will see the following columns. To assist you with the spreadsheet column, you can hover the column header row to reveal helper tooltip. #Column textWhat it is used for1invite_messageYou may use this to post a personal message when delivered to recipient in mail or SMS. This will override the default SMS or email configured in your template. You may leave blank.2rep_idIf left blank all transaction that are posted will be associated with your Cellosign user. If you wish to associate them with another user, you may enter his user name (email address), make sure you have the correct user name, otherwise the transaction will be blocked. You may leave blank3client_copyIn case you wish to post your recipient a copy of the final PDF you may upload here your recipient email address. However, normally when the recipient destination is an email (and not SMS), Cellosign will automatically post the PDF result to the destination email. This field is useful in case the form destination is a phone number or you wish to post the PDF result to additional destination. 4expiry_durationEach transaction that is generated in Cellosign has an expiry duration, normally 24 hours, unless configured otherwise on your template or globally withing your project settings. With this field you may override any default. The value to apply here is between 1-960 hours (that’s 40 days max). If you are not sure please leave blank, or consult with your administrator. 5@recip-1-some id..Columns that start with “@” (can be many) is the destination to send the form to. The value for this column can be email address or phone number. “-1-” in the string represents the 1st recipient for the template. In case of a workflow with many recipients, you may see “@recip-2-“, “@recip-3-” and so on, each column represents the destination of that recipient. The long string afterwards, is the template ID.Hover on the column header to see the tooltip it will show some explanation such as: “Destination back office for template Direct Debit” where “back office” is role name of a recipient and “Direct Debit” is the form name6#idColumns that start with “#” are columns for injecting data into forms. Hover the column header to show the tooltip to display the field Human name. When filling up data into these columns, make sure that data types are correct, for example in case that your template field is of type Number, the field value cannot be Text or Date. Upload Once spreadsheet is ready. go back to Cellosign configuration screen, upload the file and click “Next” Validate On next screen your data will be displayed with the entire data set from your spreadsheet. Cells with a light-red background indicate an invalid value, such as wrong email format or date field that the value assigned has incorrect format. Hover the cell to see the details regard error. In addition, you may check the switch “Alert on required fields with no value” to highlight and prevent submission where row has required field that has no value. On the left most column all rows are checked, if you wish to prevent a row from being posted, simply uncheck it. Once all errors are cleared or rows unchecked Click “Post” to send transactions file for process. Once all is done you will be receiving an email with notification on transactions submission. This email will also include an id, like this one “fd52f83a-19d4-4bce-b6f8-8dacbe90b23f”, use it to filter all the batch transactions in the transactions board. Limitations Posting transactions from file is carried out in sequence (one at a time) and may take time to complete Make sure to use Spreadsheet that was downloaded from Cellosign, otherwise it might not work correctly Although this function is available for your disposal, it is advised to use API or Connectors instead as these options are faster, cleaner and in general a superior alternative
SMTP Cellosign includes the ability to post emails to users and clients for purpose of invitations, reminders, alerts etc. On cloud installations we use 3rd party providers to post and manage email traffic. Using our integrations you are able to integrate and deploy SMTP service of your organization. Why do I need this? There are number of reasons to integrate with your organization SMTP: Emails from cellosign are posted with cellosign’s sender such as “invite@cellosign.com”. Using custom SMTP will control the sender and better service to your clients Have tighter control on outbound email traffic and content You can add as many SMTP as you need to serve as fallback. For example, assume there are SMTP1 and SMTP2 integrations. In case SMTP1 fail to respond, Cellosign will automatically try to send it with SMTP2 integration. Also see below fallback option to trigger Cellosign SMTP service in case of failure. Setting up SMTP Follow these steps to add SMTP integration: At the dashboard click integrations locate SMTP integration pane click “Add” FieldWhat it’s for?AliasProvide an alias for integrationSenderInsert name that will appear as sender on Email. sender can be formatted for RFC 5322 specifics, for example: “Your company <email@company.com>”System wide fallbackIf fallback is turned then in case your SMTP fail to respond it will trigger Cellosign SMTP to make sure your emails to recipients will be posted.HostInsert host address or IPPortInsert port. * Note that Port 25 is considered harmful and it is not supported on cloud installations.SSLSwitch SSL on or off as required by your SMTP protocolTLSSwitch TLS on or off as required by your SMTP protocolAuthenticationSelect type of authentication: Simple, SASL XAUTH2, No Auth (See below)SecretIn case od SASL select secret from “Client secret” paneUserInsert user namePasswordInsert password. In case of SASL password is produced via secret integration Save the integration and test it by entering email address under “Recipient” and click “Test”. Authentication types “Simple” use the standard SMTP protocol for Authentication and require user and pasword”Simple use the standard SMTP protocol for Authentication and require user and pasword “SASL XAUTH2” option is a secured way to Authenticate mainly SMTP requests with services such as GMAIL, Office exchange etc. To use SAL XAUTH2 option, first you will need to define the Authentication method through secret integration and then connect your SMTP resource with the authentication. Note that regardless of Authentication method, the service is integrated over SMTP protocol to post emails. “No Auth” method does not require authentication at all. Be advised that this is not a recommended approach. In case your SMTP relay has no other way to connect with authentication please make sure to whiten relevant Cellosign IPs. NOTE: “SASL XAUTH2” IS DEPRECATING. DO NOT USE THIS OPTION
Image Values & Display This control allows adding an image to the form. Image uploadPress the “Choose file” button and upload the file to the controller. It is recommended that the file size does not exceed a few KB.Accessibility valueTo comply with the accessibility directive, enter a value to the “Accessibility value” field. Developer In case the image is not displayed correctly on different phone screens go to the Stylesheet option under the Configuration tab and add the following code: .logo img { width:100%!important; max-width: 100% !important;} Then go to the image controller in the template, open the Developer tab and add the tag name (in our case it is “logo”). For more information about the Stylesheet click here.
Drawing Values & Display Image uploadIt is possible to upload an image to the drawing controller. Press “Choose file” button and select the file location. Style Pen colorIt is possible to set the pen color by selecting the color from the palette. Draw control notes Be advised that draw control has no validation rule. If “Required” is checked, we will validate that the client has clicked the control and canvas is displayed. Control is not checking if any drawing was actually made.
Data sources Articles Dictionaries Data Tables Categories Dictionaries This screen allows you to add a “data list” manually or from a file (An excel, csv or a json) and associate the data list with a “List of values” type control while editing the template. Several data dictionaries can be associated with the same template and the same data dictionary can be associated with several templates. To create a dictionary, login to application and click “data sources” and “Dictionaries”. At the top on the right there is a button for adding a new dictionary and a button for uploading a file. You can use the upload button for loading a file for your dictionary. You can see on the bottom the explanation on every item at the dictionary table. Also, you can click on the Add button to create the new dictionary. In this case, you can add data manually to the dictionary by using the green + or use the replace and append buttons to load files to the dictionary. Here you can also export the dictionary that you are viewing/editing using the ‘Export” Button. The exported files will be on CSV format by default and on JSON format if you choose it using the arrow on the “Export” button: Here are the editing options on current dictionary (from left to right): The name of the dictionary, you can change this as needed. Save button, to save a new data dictionary or save changes to an existing data dictionary. Replace button for replacing the existing dictionary with a loaded excel or csv file Append button for adding the loaded file data to the existing dictionary Delete button for deleting the dictionary This table will explain the dictionary table: ColumnDescriptionIDA number that is automatically entered TextRepresents the text that will be shown to the client in the “List of Values” control. If you upload the dictionary from a file, the text should appear in column “A” in the fileValueRepresents the data that will be received in the archive and in the json file. Intended for cases where the text shown to the client is not the same as the text they want to receive in archive. For example, the customer will select the name of the bank in the “List of Values” control, and on the archive will receive the bank code and not the name of the bank. The value should appear in column “B” in the uploaded file.GroupRepresents a name of a group, intended for cases where you want to link several data dictionaries together. Like for example a list of cities and streets.Entering a group name that is identical in value from two different data dictionaries allows a connection in the value selected in the “List of Values” control. The figure should appear in column “C” in the uploaded file. Notes and Gotchas For security reasons some characters are disallowed. Disallowed for Text column: '<', '>', ';' Disallowed for value and group columns: '<', '>', '#', '$', '%', '^', '&', '*', '|', ';', ':', '{', '}', '[', ']', '=', '+', '-' Data Tables Think about it as a custom table hosted in Cellosign. You can customize it any way you want and connect it to template. What it’s for? Consider the option when you have large repository of texts and inputs that needs to be incorporated into business process either as initial value, as a condition to other selection or per user engagement. Up until now that way to handle this process would have required to configure fields and conditions inline the template. In case texts and inputs needs to be incorporated into large amounts of fields and templates, this can be quite tedious. With this feature you will be able to configure relational table with keys and data and use it in cellosign templates using our connector editor. This is specially become handy when you have extensive conditions to handle the texts and in case you have texts such as terms/legal that are expanded over large amount of templates, so you can keep it all in one place. Configuring data table To configure data table login to application and click “data sources” and “Tables”. Click add table and define: table name, columns as instructed on screen. Click to add rows. Eventually, you will have a data table with rows and columns. Note that “key” type columns are designated for the connector in next step so you can search matching records. Adding data and inputs to data table Let’s add some data and input elements to it. In the screen capture on the right we added: “House” as key for selection Texts with input elements to Application Additional texts for Conditions. To add input elements, simply click the icons bordered with blue. The icon on the left is a “Checkbox” Icon in the middle is text input The right most icon is Dropdown(select) input. Configure a template Lets add a new template that includes Select element and two paragraphs. Select will include values “Car” and “House”. What we require to occur is that when client selects “Car” or “House”, Cellosign will fetch via the connector the matching “Application” and “Conditions” for his selection. Switch on “Display bottom border only for input” in case paragraph includes input elements that otherwise might conceal upper text lines. Note: In order to secure your form you will be required to toggle a paragraph in order to allow parsing input elements into the form. So whenever data table data includes input for parsing, the toggle displayed on the right, must be checked. Connector configuration On template editor click integrations on top pane and then “Connectors”. In this screen you will see “Preset”, “Live”, “Submit” and “Post submit” for which our connectors will be integrated into. “Preset” is the ability to get values from the table on session initiation, requires no user intervention. “Live” will be configured when the connector require some of interaction from the user such as selecting value or click on a button. “Submit” and “Post submit” are for databases and apps such as salesforce or Dynamics [that are coming up in next releases]. To configure connector to data table click “add” on “Preset” or “Live” sections. Select data table you have configured Set status “Active” Define the lookup: keys from the data table [one or more] Equation [for data table equal only is applicable] To which entity to compare with: form field value, label [integration] or fixed value Add conditions as many is needed for the lookup Define what happens if query return no results, one or more than one result On “Live” you will need to configure how the connector is activated on “Change”: As the user types in. Select the field from the list to attach the connector with on “Click”: select a button from the form that will activate the connector Finally map the query result into the form fields. which value from data table goes to which field in form Demo For your convenience, this is a demo form already setup with the example above. Categories Categories are an easy way to sort our business processes into groups. We can relate any template or BPMN process to a category. First we will see how to create categories and then we relate our templates and BPMNs to the categories. How to create a category? To create a new category, login to application and click “data sources” and “Category”. Click Add category: TBD
SMS SMS are typically used when posting invitations to clients, reminders and also as an evidence for processing at the end of client engagement. Cellosign is typically bundled with SMS out of the box service, however, in case your organization requires to explicitly integrate with your own provider you are able to easily configure top SMS providers such as: inforu, bezeq, 019 and unicell with configuration only. Case you require additional provider, let us know. Why do I need this? In case your organization requires to have tight control on outbound SMS for any reason such as regulatory, you may add your provider as plugged in SMS integration. Once done, all SMS traffic for your project will consume your integration. Note that SMS integration is deployed per project and not organization. Case you need custom integration for all your organization projects, this has to be done one by one. Also you may add as many SMS integration as you need for purpose of fallback. For example assume you have configured SMS1 and SMS2 with different providers, in case SMS1 will not respond, Cellosign will automatically fire off SMS2 integration. Note: SMS failure means that an error response received from the SMS provider. It doesnt mean if message was arrived to recipient or not. Setting up SMS integration To add SMS integration, follow these steps: At the dashboard click integrationslocate SMS integration paneclick “Add” FieldWhat it’s for?AliasProvide an alias for integrationSenderInsert name that will appear as sender on SMS. Be aware that some countries has limitations on sender name. Typically phone numbers and digits are prohibited. Please consult with your provider regards this issue.Integration providerSelect your provider from the listUserInsert user name provided by your SMS providerPasswordInsert pasword provided by your SMS provider. In case inforu provider is selceted, you also have the option to use Inforu API token authentication. Your token goes into password. Save the integration and test it by entering phone number under “Recipient” and click “Test”.
Move a process to another project This page described how to move a process with all of its related elements into another project on the same environment. We will have to download/export every element separately in order to do so. (BPMN processes, templates and also Dictionaries and Tables – if we are using them on our templates) Follow the bellow steps: 1.Go to all the elements that are used on your process (BPMN processes, templates, Dictionaries and Tables) and download each one of them using the download or the export option. On a BPMN process, use this button for download: On a template, use this button for download: On a Dictionary, click on the arrow next to the export button, and than ‘Export JSON’: On a table, use this export button: 2. After you are sure that you have all the files related to you process saved on the side, delete from your current project all the data you want to move. (You can’t have identical processes/templates on the same environment) 3. Open the wanted project on the app. 4. Upload the data to the wanted project on this specific order (for remaining current connections):-Dictionaries and Tables-Templates-BPMN processes 5. Connect integrations if needed. 6. Run the all process for making sure its working as expected.
SECRETS A secret facilitates an Bearer token authentication method (i.e. OAuth2) that is consumed in builtin web-hooks and with application connectors such as Salesforce. While Secrets for application connectors are created automatically, secrets for Web-hooks are required to be created manually. This is a guide for manually creating and testing your secret integration. OAuth2 Conventions With Cellosign Secrets are managed in two standard conventions that are slightly defer in implementation. Username/password [General username and password] Client ID/Client secret [Microsoft Graph Rest API] General username and password ParameterValueTypeSelect General – username and passwordurlInsert URL to post token requestGrant typeEnter the grant typeScopeinsert scope valuesUser nameInsert usernamePasswordInsert password Request example With the example above this is how the request from Cellosign looks like { "username": "Myusername", "password": "Mypassword", "grant_type": "password", "scope": "('read,write',)" } Expected response Cellosign expects at least two parameters in response: { "expires_in": 300, "access_token": "BULvsea4JtiGRiSDSJSI%3DEUifiRBkKG5E2XzMDjRfl76ZC9Ub0wnz4XsNiRVBChTYbJcE3F" } “access_token” that will be used in web hook request header for Authorization “expires_in” is a lapse time, in seconds, that the access token can be used before it is expired Microsoft Graph Rest API ParameterValueTypeSelect Microsoft Graph REST API v1.0urlInsert URL to post token requestGrant typeEnter the grant typeScopeinsert scope valuesclient_idInsert client idclient_secretInsert secret Request example { "client_id": "8e17edb9-0f05-46cc-8741-a937e351e631", "client_secret": "Mysecret", "scope": "read,write", "grant_type": "password" } Expected response Cellosign expects at least two parameters in response: { "expires_in": 300, "access_token": "BULvsea4JtiGRiSDSJSI%3DEUifiRBkKG5E2XzMDjRfl76ZC9Ub0wnz4XsNiRVBChTYbJcE3F" } “access_token” that will be used in web hook request header for Authorization “expires_in” is a lapse time, in seconds, that the access token can be used before it is expired Notes and gotchas Note the difference in SCOPE parameter value between the two methods. Cellosign will use token until the time of expiration provided for token request. When token is expired, Cellosign will initiate a request for a new token.
Auto Date An automatic date controller is not displayed on the form to the person filling out the form. It is generated when the signed file is produced to document the time the form was sent. Basic settings Make sure the “Show” option is set to ON in Basic settings tab: In the template that includes workflow make sure to set both “Show” and “Edit” options in order to set date time specific to that recipient submission. In case “Show” and “Edit” are checked for all recipients, the value will be as the last recipient submitted the form. Notes It is not possible to set conditional permissions and conditional values on the automatic date controller. When you click “Save”, the template editor will open. Types and validation Select date formats FormatPossible valuesdd/mm/yyyy28/02/2022mm/dd/yyyy02/28/2022dd MMM yyyy02 FEB 2022yyyy 2025MMMOctobermm11dd17 Controller group The Auto Date controller that belongs to the group will have only the label and the description parameters in the Basic settings tab. All the other parameters should be defined as part of the group. Example of the Auto Date controller that belongs to the group: Example of the Auto Date controller that does not belong to the group: For more information about the Controller group click here.
Button A button controller is used for integrations with external web services. For more information about template integrations read here. Values & Display It is possible to change the default button name under “Values & Display” section.
STORAGE At the end a business process Cellosign produces number of files that can be shipped via email, API or directly to your storage. Currently we support out of the box integrations for FTP/FTPs and Google drive. Storage service can be deployed with “callback”, which means an API request will be executed from Cellosign to let you know that a storage call has been made. If you have decided to use storage integration, it is recommended to couple it with a callback webhook so you can close the gap between completion on Cellosign to acknowledge in your application. Why do I need this? There are number of reasons to integrate with your organization Storage: Occasionally business process ends up with huge and heavy list of attachments that it makes hard for an API to process massive requests You may have more options on files transformation such as the ability to compress all in a single zip archive Follow these steps to add Storage integration: At the dashboard click integrations locate Storage integration pane click “Add” Basics and storage type Insert an alias for the integration Set implicit or Explicit. Implicit means that whenever a business process is completed, this integration will fire off. Explicit means, don’t fire unless instructed. See below reference for setting up explicit/implicit Select storage type FTP or Google drive. See below reference to each type Enter relative path Apply file transformations as needed. see details below Setup callback webhook. See details in Webhook: Callback Upload file and test Configure Google drive integration First step with Google drive integration is to prepare and download your service account.1. Use Service key link to create service key at your Google Cloud Platform -> Google Drive Api -> Credentials -> Create Credentials -> Service account 2. download your JSON file with service account credentials 3. Modify default scopes case required 4. Configure path where files will be uploaded into Configure FTP/s integration Enter the following details to integrate with your FTP server FieldWhat it’s for?HostInsert DNS name name or IPPortInsert listening port. Note that we may from time to time inform, in advance, on a blockage for ports that are considered dangerous.Base pathRelative path for the files to be uploaded intoUserInsert user name to authenticatePasswordInsert passwordMax connectionsSet maximum connections allowed. This is the maximum concurrent engagement from Cellosign with your FTP server. processes will be queued as neededSSLSwitch SSL on for FTPs Explicitly/Implicitly Storage integration Storage can be setup to fire off Implicitly that means every business processes will fire this integration. For example a storage action will be executed to your when every business process within your project is completed. This is the recommended approach if indeed all your business process should end up in in this manner. However if there are different use cases, such as: separate endpoints or some business process does not need storage, it is recommended to couple your integration with a business process Explicitly. To explicitly couple a Storage with business process we purpose two options: Manually connect it to specific template(s), which means, templates configuration will include explicit coupling with your storage integration. See details below Ad hoc integration for a business process: When the integration is set to explicit, the storage pane display the integration code that can be added to create session request. Simply add the code to your request. All ad hoc integration can be add within the integrations Array Setting up storage connector Follow these steps to apply the storage integration into the template: Login to your template Select “Integrations” on the top right and then click on “Connectors” Storage can be applied to “Submit” only. Click “Add Live Connector” On source, select “Storage” On Type: select your integration [by alias] Turn it’s status to “Active” Save the connector and the template File transformations Initial set of files can be transformed with simple rules. Each rule selects some files and applies some action to selected set. It is possible to select files by tag, by content type or select all files. Initial set of files in the end of session looks like this DescriptionTagsContent typeFile with process metadatametadataapplication/jsonSigned pdfsigned_documentapplication/pdfFile attachmentsfile, attachment*/*Image attachmentsimage, attachmentimage/* Transformation examples Collect all files to zip and apply unique name Click “Add”, Select “All files” from left drop down and “Archive Zip” in drop down on the right. With only this option you will receive to your FTP file named “archive.zip” Click “Add” Select “By tag” from the left and “set name” on the right On select tag, enter “archive”. In “New template path” enter this string “{% now “Y-m-d_H-m-s” as the_time %}{{ reference }}_{{ the_time }}.zip” This parameter join the process reference id and add to it the current date time : “b7eeb82f-9aab-4dea-813c-7ba06b515867_2025-01-08_14-01-06.zip” Why this is a good option? All process product are aggregated into a single file (And not scattered) Zip ensure single commit. As oppose to separate files where 1 file can go through and the other wont Unique by date time. Reference that always exists in our output ensure that process can be located easily on our dashboards
File Cleansing In the digital age, safeguarding data integrity and security is a top priority. To ensure that files uploaded by clients during data collection are free from malware and other malicious content, Cellosign has integrated advanced file cleansing technology into its platform. This integration acts as a robust layer of security, meticulously scanning every file uploaded into forms. The process involves real-time inspection and sanitization of documents, ensuring that only clean, safe files are accepted before being archived. This proactive approach mitigates risks associated with file-based attacks, protecting both users and the system from potential vulnerabilities. Beyond security, the integration enhances user trust, offering peace of mind that their data and interactions with Cellosign are handled securely. It also aligns with industry compliance standards, reinforcing Cellosign’s commitment to delivering a reliable and secure document management experience. This seamless file cleansing feature empowers businesses to collect data confidently, knowing that every document meets stringent security requirements. With this integration, Cellosign continues to set a benchmark in secure, efficient, and trustworthy digital solutions. How it works? File cleansing integration does not work by default. You will need to activate it. See “Setting up File Cleansing integration” below. Couple of points before explanation on how this works. Files and images in Cellosign retained as base64 encrypted files. They are never stored as file objects when collected from clients and users. Also when shipped to your endpoints via API (archive) files are delivered in base64 as well. Cellosign has co-browse extension, so user and an agent can sync data in between. For example client can upload a file and an agent can download it for inspection Data collected in form is preserving its state. As such files and images are stored in Cellosign DB until form is submitted or expired. Our approach for securing and validating the files is by allowing only clean filles to be uploaded into our database, while exposing as little as possible to a potential attacker. In case a file was successfully uploaded, it will be stored in Cellosign DB and be available to sync any which way, given the appropriate permissions. In this manner we are ensuring that only validated data is stored and ready to sync and distribution. What is not covered in file cleansing integration? There are a few endpoints in which Cellosign accept files and images for which File cleansing integration is not covered. All the endpoints below require authenticated user API. Inbound files and Images from your application API to Cellosign. Management application when constructing new template Agent app when uploading a PDF for ad hoc transaction Setting up File Cleansing integration To setup file cleansing integration, log in to application console and click projects page.Locate pane “Secured file upload”. OptionWhat it doesNot activatedDefaultCleansingPerform file cleansing (Recommended)DetectionPerform detection only, does not clean the uploaded file In addition please note the switch “Allow upload if service is not available” (Default to false). Because we are using 3rd party provider service for file cleansing, we need to be ready for events that are beyond our control. Having that we are leaving to your disposal the option to allow upload in case file cleansing service is not available. We recommend that it will remain switched off. Rest assure that we have taken our stand to monitor the service and take action as needed. Audit log Each file uploaded to cleansing is recorded in Audit log. Log is preserved in case of success as well as failures. Following are audit details. LabelValuesTypeSESSION_FILE_CLEANSINGSeverityMessage: successCritical: Failure.ErrorError descriptionSessionSession IdFieldField ID in a formFile nameFile name that was uploadedHash beforeHash of file prior to cleansingHash afterHash of file after cleansing.In case of success the hash may be differ in case that the actual file required cleansing. Otherwise Hash before and after are identicalis file changedboolean indication on hash before and after. False if file unchanged, True if changed.response_timelapse time from POST request to cleaning service until response or timeout
Notes for Release 4.9.0 Over the past mobths we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed Release rollout schedule Pre production [preprod.cellosign.com]: xx Production [app.cellosign.com]: yy Security Allowed browsers We have updated our blacklisted browsers. Rate limit This new addition is builtin, none optional and controlled exclusively by Cellosign staff. In end-client views this feature limit a client to post too many requests for access in a given time window. The conditions of lock and release can be modified from time to time to our discretion. Cellosign views that includes rate limit are: Client forms (new addition shipped with this release) OTP and Challenge with Client session Javascript limitation Due to security concerns we are reducing our support to Javascript extension in templates. Please make sure that your templates does not contain javascript code. If it does, find configuration alternatives in Cellosign or seek our support team assistance. Upload file size limits Forms already include builtin limitations to upload files. Be advises that with this release we have also applied 5Mb limit when: Posting file(s) through API Configuring template Creating Adhoc session Heads-up for using iframe Over the past year browser providers were and still consistently preventing and deprecating usage of iframes. Technology wise the prevention is about blocking cookies and outbound communications from the guest. Eventually, it is widely accepted, that iframe technology will be deprecated all together sooner or later. Although Cellosign allows to deploy views in iframes, we encourage you to adapt other methods. Template changes Signature field button text Added option to change default text for signature button Default values for select field Added preference to pick default option for select field Lock template Until this release a template could be edited and changes are reflected on live sessions. With this new release we are promoting template lock per session for which a session will also hold the template properties at the time a session is initiated, which eventually result that changes in templates will have no impact on forms that have sent to clients. No clients will automatically work like so and by the end of Q1 2025 we shall enforce this change. Font David Removed Font David deprecated from Template configuration for the reason that it has issues with mixed char-sets and special characters, such as “@”. Be advised to replace template to other font face in case you are using it. Autodate field Added formats to auto date and now include breakdowns for day, month and year. Zip and password Depreciation notice. Zipping files in archive email has been depreciated. Download PDF for print We have added a new feature for client toolbar to create and download a PDF out of the data that is incorporated in a form without submitting the form. Changes in connector integrations Added functionality to modify integrations inline when moving template from one environment to another. Read only Added a read only configuration for session that disable the ability to submit a form. Integrations Filter archive web hook data Added ability to exclude data and paragraph filed types in archive web hook. Group data Added “group_data” array to archive api for future use. Dashboards Expiration widget Updated search expiry, Added 3 days and 1 week options. Applications BDI Builtin BDI interface. Electronic 101 form (טופס 101) We have renewed our 101 certification. Please consult with your reference regards fully compliant 101 template. All new client forms application Refactor of client forms application. It includes many new configuration and UI settings to match your brand looks
SSO Cellosign has a built-in authentication and authorization system, you can also hook-up Cellosign to your SSO/Idp (Identity provider) application to provide user authentication. For that purpose, Cellosign is already equipped with SAML2/Idp integration. This integration works with any SAML applications, such as Okta or AzureAD. Why do I need this? If your organization is already coupled with Idp application then you are already managing users access to resources, in that perspective Cellosign is a service provider (SP) that can be mapped to group of users with set of permissions. The alternative is to self-manage users within Cellosign and make sure that new employee have an account with Cellosign or account is blocked on leave. In terms of Information security you can control Access, Authentication requirements with your Idp seamlessly. How it works? The goal for integration is retain users credentials in a single place, with the Identity provider (IdP), and use it in Cellosign, as a Service Provider(SP) for authentication. The way it works is that user request a resource from Cellosign application that requires authentication, such as access to template editor or initating a business process. Let’s assume this is first-time user. The process works as follow: User access Cellosign resource (through browser). Cellosign identify that the resource is coupled with your Idp Cellosign redirects the request to your Idp for authentication On a successful authentication, Cellosign will record user details such as name and email and mark user’s record as managed with Idp Once user has been automatically registered he will be redirected to the required resource Notes: Cellosign keeps some data of the user since the application requires some level of engagement such as emails, alerts and other notifications. Cellosign does not keep users password For a returning user the process is pretty much similar, instead of creating user, we are validating and updating user details. Integration strategy Clients structure with Cellosign works as follow: Organization is a top level entity Within organization we have “project”(s). Some of the resources are shared on organization level, others are project specific. Users are mostly coupled with projects, for example users from HR department requires exclusive rights to HR Business processes, Digital department requires exclusive rights as well For some users, you would like to have access rights to more then one department or even access to the entire organization resources, for example support or implementation. Integration with your Idp can work both on organization, project and users layer. See details in setup section. Setting up Idp integration To integrate Cellosign with your Idp we need to couple if both ways. Before you start, you will need to get: Cellosign domain Your project(s) in Cellosign Choose role assignment strategy. For quick starter you may choose to assign minor permissions automatically in Cellosign Step 1: Integrating Idp to Cellosign In your Idp edit the Entity ID which is global unique ID of service provider. with Cellosign the components are: https://domain/project/saml2_auth/acs/ For example assuming this is an integration with shared cloud production and your project is “digital” then your entity id would be:https://app.cellosign.com/digital/saml2_auth/acs/ Same value also goes to ACS, that is url for callback. The image on the right is taken from Azure AD for setting up Entity ID and ACS[Reply URL]. Make sure to get metadata data URL (aka federated data url) or download metadata XML file, you will need it for next step Step 2: Integrating Cellosign to Idp Follow the steps below to set up Cellosign Integration: At the dashboard click integrations locate SSO integration pane click “Add” and continue with the table below for an explanation on setup SAML2 INTEGRATION PANE FieldWhat it’s for?AliasEnter an alias for your integrationmetadataInsert url to federated data or upload XML metadata fileUse on company levelCheck if you require to use this integration in the organization levelForce authenticationCheck if you require to force this integration for authentication and disable any other typeClaimsMap user details from IdP. Claim definitions must be identical in Idp and Cellosign (Mind case sensitive). For a user friendly operation map all fields. See example on the image on the right.Role assignmentsSee details below Role assignments The steps above are bout Authentication. This step is about Authorization. There are couple of options here: This is the most common implementation. When a new user is introduced, he will be assigned with the lowest permissions or no permissions at all. The permissions level, if need to be upgraded or setup, will be controlled in Cellosign application by your admin user Another option is that the authorization will be controlled by a claim or list of groups. list of groups is useful when our users are diverse, for example user may have lower permissions on Project A and higher permissions on Project B. (Keep in mind that this permissions can be made both manually or automatically with the proper setup) For option one, select “Do not assign user role” for having no permissions at all, or “Assign default role” and then select the appropriate role. Select “Agent” for minimal permissions. For option two, you are able to: Select role from a claim Select role from list of groups For selecting role from a claim, insert the claim name. The value of the claim should be one of: “agent”: For lower permissions “manager”: for project admin “company_manager”: for organization administration For getting role from list of groups. Insert claim Insert the ID for project admins group. This id represents a list of projects in cellosign that the user will be associated with for agent permissions. for example: [“hr”,”it] Insert the ID for agents group. This id represents a list of projects in cellosign that the user will be associated with for agent permissions Note: Project names should be identical to those in Cellosign. Azure AD, EntraID Specifics Setup Azure/Entra like so: Matadata is a url starting with https://login.microsoftonline.com/ Use the claims notation as demonstrated: name, givenName, surname,emailAddress In case you require to use assignment policy per claim, set it up like so”
Notes for Release 4.8.0 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. Release rollout schedule Pre production [preprod.cellosign.com]: xx Production [app.cellosign.com]: yy New features & enhancements Heads-up for using iframe Over the past year browser providers were and still consistently preventing and deprecating usage of iframes. Technology wise the prevention is about blocking cookies and outbound communications from the guest. Eventually, it is widely accepted, that iframe technology will be deprecated all together sooner or later. Although Cellosign allows to deploy views in iframes, we encourage you to adapt other methods. Sooner the better.
Location Location element provides the ability to collect client Geo-location, that is the latitude and longitude coordinates that represents a geographic position. Activating Geo-location elements requires some preparations in advance: Availability of maps feature. This feature is not bundled with the basic package and requires activation Availability of Google maps API token to access maps services Getting token from Google maps API See this following documentation to acquire Google’s API token At the end of the process you should have an API token from this screen Creating Google maps connector Login to template you wish to add location Geo-coder Click Integrations Click Connectors Click “Add Live Connector” Select “Maps” in source and “Google Map” in the subsequent dropdown Add API token and click verify. Note: Service will be available only after successful API activation Check “Apply Geo coding” in case you wish user will be able to enter and search location manually Setting up location field To setup location field, simply drag and drop location fields onto HTML template. Note: It is advised that the location field will be added to at full row width or at least 1/2 row width. On 1/3 row width the map might be too small for Desktop users in case the screen resolution is low. Check “Display Map on final PDF result” if you require that the map with it’s selected location marker will be displayed on PDF for archive Check “Display Location coordinates [longitude/latitude] on final PDF result” if you require that the coordinates will be displayed on PDF for archive Security and permissions Cellosign location field is executed on top of Google Map API and the browser. Since collection of Geographic location is a sensitive information, the client (user) will have to provide permissions to collect data. Permissions are granted on a browser level, it’s not Cellosign or Google authority to request for permissions. Only after permissions were granted than Google map may inquire for Geo location position.In case you require the extra mile for permissions, you may affirm location functionality all together by connect it to a dependency that requires client consent. For example, setup a location field with default display off. Connect the location element to a checkbox that reads client consent to collect location data. Activate the location only if consent provided. In case that the client does not provide consent to automatically detect Geo location, he can still search or browse his location on top of the map. For security reasons, co-browsing agent does not have write permissions on location field. API On a Webhook API location field will provide data in the following format “value” represents latitude and longitude that was geocoded “meta” > “geocoder” incorporates full address as it is available from Google maps API. { "id": "SOMEFIELD5", "value": "32.001186,34.9413393", "top": 65.91806722689076, "left": 8.194774346793352, "width": 28.8781512605042, "height": 2.048693586698337, "page": 0, "type": "location", "visible": true, "meta": { "geocoder": "Arlozorov St 160, Tel Aviv-Yafo, Israel" } } Notes and Gotchas 1. Location data is considered highly sensitive according to GDPR. As such it is advised to use location on templates with single recipient, without workflows. If you decided to use location control on multi recipient template be aware that location data is only available for PDF and API at the end of the process for the last recipient only. Data from previous recipients is not exposed.
Notes for Release 4.7.11 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. Release rollout schedule Pre production [preprod.cellosign.com]: released Production will be released at 28/07/24 New features & enhancements Attachments to client email With Cellosign we have two types of recipients that may receive an email at the end of a business process: agent and client. At the end of a business process a recipient of type agent will get on email that includes: signed PDF, raw data (Typically json file), attachments that were collected during the process. Client receives only the signed PDF. With this change. A file upload and image upload controls include option to attach the file to client email as well. Search in list of values field Typically a remote search in LOV fields should include some flexibility to avoid cases where spell is wrong or an hyphen is in between words. This is called a “Fuzzy” search. Cellosign search works this way and it’s good for most cases, in other cases it doesn’t. Mostly it doesn’t work well when the words are long 7 letters or more. For that purpose we have added option for select type. The default one is “Fuzzy” as it is today and the new option is “Strict”. The values Cellosign will look for are only ones which were typed. Fort more information see List of values control.
Table Table is a read only element that can be applied to HTML forms. Table can be populated with data through an API or by Lookup Connector (fetching from remote source such as database or Salesforce application). How to implement a table? In template studio, grab Table element from the right pane and drag it into the form. It’s recommended that a table will be applied to full width column. To setup a table click on the Values and Display tab and apply columns to table. In this example we are constructing a table for Orders that will have columns: Order ID, Name, Amount and Shipped. Configuration Table column configuration includes the following attributes: Column headingColumn heading textDefault valueDefault value in case cell does not include dataHiddenHide or show columnWidth %Width in %, out of 100% for the entire tablePrefixPrefix value for cell in case text applied to cellSuffixSuffix value for cell in case text applied to cellAlignAlignment: Auto [Based on language], Right, left, center or justified Apply footer row Check “Apply footer row” at the bottom. Checking it will open two additional columns to the table above: “Footer type” and “Footer value”. Use footer type “Text” to add textual value to footer Use “Sum” to calculate the values from column above “Sum” function will calculate the column above given that the values are numeric or blank only. If one of the values is a letter, a SUM result will not be displayed. Value precision (decimal point) is not rounded and will display the SUM value with comma separator and result precision. Design For table design, click on Design tab and check design settings. “Add numbering” will add ordered numbers to table rows automatically. BorderedDisplay table borders. StripedSeparate odd/even rows by background colorsHoverNumberingAutomatically add sequence number to each rowFont sizeControl Cells font size in %, relative to default fontCell padding top-bottomPad Table cells top and bottomCell padding left-rightPad Table cells left and right For table design, click on Design tab and check design settings. “Add numbering” will add ordered numbers to table rows automatically. Now that table configuration is done, let’s see how to populate it with data. Collapsed design option It is advised to use collapsed option when table is over 6 columns, other part of the table might exceed the page and will not be displayed. Please test your configuration prior to deployment in production. Known issue for rendering to PDF: Wrapping table border may exceed on page break Populate Table with an API Normally, when session is created via API, you are able to inject values into form fields. Table can also be populated with values by accepting Array of Arrays. In this example we will inject data into orders table. We have configured a four columns table: Order ID, Name, Amount and Shipped, so the value for inject could be as in this example: [ ["KL-12345-A","Disk on key Type-A","$15.23","Yes"], ["RR-87778-F","Wireless headset","","Yes"], ["JF-99087-D","Mechanic keyboard","$45.17","Yes"] ] Note that we have not included Amount on the second row. This should be populated by the default value. For security reasons, you will need to Stringify this value, so eventually injecting table dataset to API should look like the following: { "template": { "id": "your-template-id" }, "initial": { "Orders": "[[\"KL-12345-A\",\"Disk on key Type-A\",\"$15.23\",\"Yes\"],[\"RR-87778-F\",\"Wireless headset\",\"\",\"Yes\"],[\"JF-99087-D\",\"Mechanic keyboard\",\"$45.17\",\"Yes\"]]" } } Inside the form our table will be displayed like so: Populate a Table via Connector Populating a table with a connector is more flexible then populating with an API. With connectors, tables can be populated dynamically with real time data from your database and also in response to user engagement with the form. For example, lets assume that on our Salesforce application we have Account table Contact table. Each Account may have one or more contacts. We would like to display list of contacts per account. **** and remote client will insert his Account ID, in return orders table will be populated automatically with open orders. when clicking on an order row, a subsequent table or set of fields will display the order items for further engagement.**** Let’s see how this is done. First we need to configure a table. Same as above, for API that includes contact name, phone and mailing address Next. On template studio, click on Integrations, then Connectors. (See reference for connectors for more details) Let’s add a LIVE connector that would lookup on Contacts object. Note that we have configured “Select multiple records” when query result yields more than one record. In this case we want to apply multiple records to the table. Note that lookup is triggered when user “Change” account ID field, in response “Contacts” table in form will be populated with values from “Contacts” table. When Form field of type “Table” is selected for mapping, the connector will display the entire column set for mapping. Notes Make sure to build your table with minimal columns, otherwise the reminder of your table may end up with not visible both on form and PDF result. Header and Footer row are not archived back and will displayed only on the result PDF.
Payment In order to apply a payment controller in a template first of all need to define payment integration under the Integrations screen. For more information about the payment integration click here. Developer Under the Developer tab of the payment controller you can map data fields returning from provider to Fields in Cellosign form. Note: Make sure not to disclose tokens and other confidential data. Either hide them from viewer or be ready to accept them on Archive API. Payment IntegrationSelect a valid payment integration created in the Integrations screen. Transaction TypeSelect the transaction type: Debit or Recurring Debit.Select the amount input fieldSelect the field from the template where the amount of the payment will be added.Note: without the amount value the payment window will not open.You can set a default value for this field, or alternatively it can be filled in by the agent when sharing the screen with the client.The field can be hidden, and it still will be the amount of transaction.Source and Target tableYou can select fields in the template and connect them to the data returned from the payment interface. For example: last 4 digits of the credit card, card validity date, credit card type, etc.In the “Source” column, enter the name of the required data to be retrieved from the payment interface. You must choose the name of the item as it appears at the checkout (for example: card_no)Select the field in the template that will receive the information item (for example: cardNumber) See below the example of the payment controller mapping: The following parameters can be returned from the payment interface and mapped to the template fields: card_expirationExpiration date of the credit cardcguidUnique identifier of the transactioncard_noCredit card numbercard_maskCredit card maskcard_nameCredit card owner namecard_brandBrand of the credit cardcard_aquirerAcquirer of the credit cardcredit_companyCredit card companyclub_idClub ID of the credit cardclub_codeClub code of the credit cardcurrencyCurrency of the transactiontotalTotal amount of the transaction life_styleIs the card is of Life Style typeauth_numberAuthorization number of the transactionpersonal_idPersonal ID of the card ownerblocked_cardWhether the card is blocked verify_error_codeValue of “result” tag. Typically if this result is diferent then “000” there is an errorverify_error_descriptionValue of “message” tag. Typically has value when result is not equal to “000” All the data returned from the payment interface will be archived in the meta_file.json upon the form submission. Values & Display It is possible to change the default payment button name under “Values & Display” section.
Notes for Release 4.7.9(8) Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. Release rollout schedule Pre production [preprod.cellosign.com]: released Production will be released at 19/06/24 New features & enhancements Email validation On previous releases, Cellosign validated email extensions. With this release email validation is conformed to RFC 5322 standard which is basically composed of a string given that it includes “@” and a”.” in specific places. With this change there is no limitations on domain or sub domains. Company seal from image Cellosign includes a signature feature that embeds company details: name, company ID altogether with a graphic signature. With this release we added a new feature for which a client will be required to upload an image that will be used as a background for graphic signature. Email buttons recolored With this release button colors in emails has been modified from yellow to grey that conforms with contrast requirements for accessibility. Embed Image in PDF template Image controls for PDF and Hybrid templates are enhanced and can be embedded into the final PDF produced in Cellosign. Read here for further details and customization. Get sessions API enhancement Get sessions API enhanced to include assignee filter, that is the user whom created a session or was assigned to (“puh client”). See API Documentation for further details
Notes for Release 4.7.8 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. Release rollout schedule Pre production [preprod.cellosign.com]: released Production will be announced separately New features & enhancements Company Registrar API We are happy to announce that we have added an interface to Israeli companies registrar (“רשם החברות”). The interface allow you to validate that a company number actually exists. In addition the interface enable to fetch the following company details: name (Hebrew and English) and company status. This feature is available on cloud installation. Please contact our support to check your eligibility for this feature SMTP Authentication Added new option to SMTP integration that requires no authentication. Please read the following documentation prior to implementation Security enhancement: blocked login pages on iframe In order to protect your data and your users from Click jacking and phishing vulnerabilities we have disabled the ability to carry out user login from an iframe. This security enhancement added to all pages that requires your users authentication: Login to main application, Login to Agent application and Login Tasks application. Client authentication to open invitations, client forms and OTP remain unchanged. Form control dependencies split Currently dependencies tab includes a query to trigger change of permissions and value to form control. This tab has now been split to two separate tabs: Conditional permissions and Conditional values. See here documentation page. It is advised to make sure that template with conditions values and permissions are working as expected. In case of an issue, please contact our support and we will be happy to help
Notes for Release 4.7.4 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. Release rollout schedule Pre production [preprod.cellosign.com]: 17/08/23 Production [app.cellosign.com]: 23/08/23 New features & enhancements Default date and date time to date control Currently date control accepts a fixed date as a default value. With this release we have added the option to configure Date control to accept the date when transaction is generated. To configure current date apply “$now” to default value. Salesforce formula editor We have added into Salesforce “Percent” data type and now it can be edited and converted prior to propagation into form. Enhancements to paragraph control Added to new functionality to paragraph control: Input elements: Add input controls into paragraph. Placeholder: Add none-editable reference to other controls in the template
Notes for Release 4.7.0 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. Release rollout schedule Pre production [preprod.cellosign.com]: 26/6/23 Production [app.cellosign.com]: 06/07/23 New features & enhancements Table footer We have added to Table control ability to configure footer row to include textual values and SUM function that SUM column values. See here for more details SMTP/SASL XAUTH2 Autentication We have added SASL XAUTH2 authentication for SMTP integrations. SASL protocol is a secured way to Authenticate SMTP requests with services such as GMAIL, Office exchange etc. See here for more details Validation errors On previous releases a “Custom error message” was ignored in some validations. With this release , in case custom error message is added to field configuration it will be used in case of validation error, regardless of the test case. If no custom error message is added, specific mesage for the test will be displayed. Ordered lists font We have made changes to ordered lists to include formatting of bullet items. See here for more details
Notes for Release 4.6.0 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. Release rollout schedule Pre production [preprod.cellosign.com]: 18/5/23 Production [app.cellosign.com]: 01/06/23 New features & enhancements Connectors filters We have enhanced our connector functionality greatly to query and sort data from remote source based on complex conditions. Conditions can now meet any complexity of “AND/OR”, querying based on field types and compared with either fixed values or values already populated in a form. This option improves connector flexibility and to simplify connectors configuration. More details in Integrating a connector. Connector fields mapping We have enhanced our data mapping for filling forms automatically. On top of building a formula for converting native datasets, we have added the ability to CONCATENATE values and into one string and also the ability to repeat those as many as records matches the query. For instance this feature will enable you configure a result that include first, last name and DOB for all account contacts. More details in Integrating a connector. Client forms We have enhanced client forms view with automatic redirecting to list of transactions after form has been submitted. Also added texts to navigation buttons for better usage. Transaction board We have added to Transaction board the new features to access Workflow and BPM processes: Click on “See Workflow” to open Workflow or BPM diagram. Click on search icon to filter list based on workflow/BPM unique key to get all related sessions Click on Copy icon to copy the aggregating key to your clipboard Bug fixes On earlier releases search items on multiple selections in PDF documents was not enabled. Please see notes on configurations in List of values. Fixed issue with a display of conditions in a control group after modifying control ID.
Notes for Release 4.5.0 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. New features & enhancements Enhancements to paragraph control Added option for nested numbering, i.e. 1, 1.1, 1.2 etc.. with configuration Added option to display text in columns (similar to news paper) using configuration Note: this features requires activation. Submit ticket to our support to apply. Enhancements to table control Table control was added with: Design options to control Font size and cell padding, Alignment Automatically add prefix and suffix to cells Improved responsive by automatically collapse rows in case table is wider then view Connector data mapping enhancements We have added new features for mapping of data objects from remote sources: Conversion of numbers Representation and format to numbers Representation and format to dates For more details see Data mapping and conversions. Connector description Descriptions for connectors have been improved to provide better visibility on the connector content. Heading texts improved to include reference to objects in remote data source Ability to add description on connector level Data tables enhancements Improved usage with format text switcher to display or hide text styling for clear view on content Row editor is fixed for easier navigation On paragraph connectors we added the ability to override border display. See more details in data tables Faster SEAL document SEAL API is used to create sealed (closed) PF documents without user intervention. We have improved this feature to response faster by 50%. This features requires activation. Submit ticket to our support to apply. Salesforce package enhancements We have added new methods to Salesforce package: SEAL: Create signed documents Delete: Revoke transaction See more details in Salesforce guide Apply signatures at bottom of PDF pages Normally when using HTML template to produce signed PDF documents, signatures like any other form element are applied per relative position on the PDF result. With this release we have added the ability to create Signature controls that can be applied to the bottom of the signed PDF. See more details in Signature documentation. This features requires activation. Submit ticket to our support to apply. Bug fixes On earlier releases landscape documents could be uploaded for which the result could have contain errors in signed documents. To prevent that, we have added an error response when landscape PDF document is uploaded with an API or agent application Announcements Cloud migration As previously announced, an upgrade to our cloud infrastructure (migrate to Azure) in production is planned at 23/4.As a result of the upgrade our IP addresses will also be changed.This is a list of current production IP and new infrastructure IPs: SegmentCurrent IPNew IpsInbound:Requests to https://app.cellosign.com, i.e. login, API request for new sessions34.120.149.10220.31.141.237OutboundRequests from Cellosign for Outgoing requests are API, Webhooks, SMTP, FTP, SSO and all custom integrations that submitted from Cellosign to your infrastructure.The new infrastructure includes only one IP that serve as a proxy for outbound traffic.35.195.39.15734.140.217.12835.195.63.17534.78.57.11220.126.234.162. Please make sure to list the new IPs before the planned migration date 24/03/2023 to prevent service blockage.As soon as the IP addresses have been whitewashed, please submit a service request to set up a joint inspection date. Make sure the new IP addresses are enabled before the test. We recommend for a joint test as soon as possible.
Payment integration Before creating an integration with the Cellosign system, the integrity of the terminal must be checked against Credit Guard.Get the login information from Credit Guard and perform a terminal health check on the payment page. In order to create payment integration in the Cellosign system go to “Integrations” screen and press “+Add” under “Payment” section: Basic settings AliasAdd the alias name (any value).TypeSelect the Type – “Credit Guard MPI”.LanguageSelect the language. Default: HEB.CurrencySelect the currency. Default: ILS. Terminal settings Note: the following information must be obtained from the payment service provider. server_urlAdd the payment server address.terinalNumberAdd the terminal number.protocolVersionAdd the protocol version, default 2000.midAdd MID details. Authentication settings UserAdd a valid user name to the payment interface.PasswordAdd a valid password. Save and press “Test” button to verify connection with your payment server. For more information about the implementation of the Payment controller click here. How credit guard integration works? The integration with credit guard works in 3 steps: StepWhat it does?InitializeWhen user clicks of payment control in form this step requests credit guard for a url to display terminal in an Iframe. Note:The responsibility for logic, ui and data that included in the iframe is on the client. Cellosign has no way of managing business logic and looks.InquireAfter client confirm the transactions, Cellosign API receive a callback. This callback activate Inquire step that accept data from Credit guard.Note: Inquire response is does not include all the data from Credit guard.This step is terminating the integration with Credit guard only if the result code is not success (“000”)Data from interface will be pushed to formIn case your business case requires to stop the process at this point you will need to make sure that the result is any other than success.VerifyThis step is triggered if Inquire returns a success. It produce tokens from CG and push back to views and Archive API.
Registrar of Companies integration This integration allows to validate the company ID when user fills the form. There’s a public GOV API available that exposes data of Israeli companies, including: ID, name, status etc.. Company ID validation includes two steps: creating a WebHook integration and configuring a connector from the template side. WebHook integration In order to create WebHook integration in the Cellosign system go to “Integrations” screen and press “+Add” under “WebHook” section: AliasAdd the alias name (any value).TypeSelect the type “Request when form field was changed”.Use implicitlySet the Use implicitly to ON.URLAdd the following URL:http://prod-cs-company-registry.default.svc.cluster.local/api/v1/israel_companies/form_field_change/TimeoutDefault: 30 All the other parameters should not be changed, default values will be used. Save and press “Test” button to verify connection with the WebHook server. Template implementation From the template side need to add relevant fields and change their IDs according to the table below: company_idCompany ID field – can be Text, Number or ID controllers.company_hebrew_nameCompany name in Hebrew.company_english_nameCompany name in English.company_existsCheck if the company exists. Returned values: true or false.company_statusThe status of the company. Company ID field example: Company English name field example: Go to “Integrations tab” and press “+Add Live Connector” under Connectors section: In the Source field select the created WebHook integration. Set the Trigger action on “Change” of the company ID field or use “Click” action in case of button. Map the company fields from the template. Alias will be completed automatically according to the field ID. In the client side when entering the Company ID value all the other fields will be completed automatically with the returned values from the Registrar of Companies API. For more information about templates options click here.
Notes for Release 4.3.5 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. New features & enhancements Temporary account lock Prior to this change, five consecutive failed logins were locking a user account. Only user with project admin or above can release the account. While this is remain the default option, we have also added the option for a temporary lock. With this option, you will be able to setup a lock policy: Lock policy: Lock account after X consecutive failed logins. [That is the default policy] Temporary lock to prevent login for X minutes temporary lock based on two parameter: After how many consecutive failed logins the temporary lock kicks in For how long (in minutes) the account will be locked What‘s next? We advise you to review this change together with your organization security officer and choose appropriate lock policy for you. Adhoc form permissions Prior to this change, when a temporary session is created, permission defaults are applied to each field. In order to prevent errors in permissions, we have removed default permissions and leave it to the agent to define explicit permissions to each field. When field is added without permission a warning is displayed for adding permissions “Agent allowed” or “Client allowed”. Accessibility enhancements Over the last minor releases 4.3.1 to 4.3.5 we have released various changes and bug fixes for accessibility. Initial focus Prior to the following change the initial focus was applied to START button. With this modification, the focus has been moved to Hamburger icon on the Top-Left corner in left-to-right forms and Top-right corner in righ-to-left forms. Color switcher We have removed “Normal” color toggler from accessibility menu. With this change when “Monochrome” is activated form colors will be mokdified Preview texts We have added texts to screen reader in order to describe the PDF document applied to preview.
Add Service Service user are used for an API connection with Cellosign. Service user cannot login to UI applications and can only be used for integrations. To create Service user, login to Cellosign”, click on “Users” on left pane and click “Add service”. Enter details as instructed below. FieldDescriptionUsernameMandatory field.Enter a username in English and without spaces (recommendation to enter a full email address).*The field is case sensitive.Project permissionsMandatory field.You can define a project manager or a project agent permissions by entering the project name and automatic completion from a list.*The default for adding a new user is agent permission.EmailThe email address of the user to be used as archive default email. To reveal the Access token click on “Show token”. This will display the access token for integrations
Notes for Release 4.2.0 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. New features & enhancements Salesforce integration With this release we are very happy to introduce you with Salesforce integration to Cellosign. This feature opens up a world of new possibilities were the entire digital journey can be implementation with no APIs on the client can be carried out with APIs integration. Simply couple Cellosign and Salesforce, configure what data is connected for two ways integration. For more information please visit Connectors and Salesforce documentation pages. Geo location Added ability for Geo coding client location that includes a visible map, inserting an address or location manually or automatically with Client GPS or IP when applicable. Read more Passwords vulnerability check In addition to the regular passwords complexities, two-factor authentication we have applied additional security layer that check passwords renewals and passwords for new users with an internal vulnerable passwords database. When a user applying new password, password will first match the complexity and length according to your organization requirements and than match the password with passwords known to be vulnerable. Underline placeholder for empty fields New design option added to entry fields. Checking this option will include an underline where input value is empty. This is specially helpful when you need the final PDF result will show an empty value. To set this option: Click on template fieldClick on Design tabCheck “Apply underline in result PDF when field has no value” Note: This option is available for field of type: text, number, select, textarea, paragraph, date, pad, date, email, phone only. Email on Archive errors On previous version we have added a feature that post Email to configured recipients notifying them regards failed archive. Within this release we have incorporated meta data file that includes identical content and structure to data which was pushed through the API. Note: We advise you not to use the meta data from email to your application from number of reasons: Email servers are typically rendering files content, encoding etcWe can’t always be sure regards the failure reason so you may consider the meta data file as unsafe As a result of the notes above we will not be able to support cases where meta data from email is failed to upload into your APIs. Fixes #DEV-1052: Archive error notification in email are now posted with updated archive structure#BUG-1173: Signature padding on HTML to PDF when additional field on same column is now fixed#BUG-1351: Redirect URL at the end of session fail to redirect#BUG-1477: Client form screen fail to render data fields but instead display fields id
Notes for Release 4.3.0 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. New features & enhancements Updated Content Security Policy (CSP) We have updated our security policy to prevent access from forms to unknown web resources. Why is that important? We are considering that any form that posted to remote client contain sensitive and valuable information (health, financials etc). By adding external resources to forms, such as image backgrounds from external URLs or PIXEL implementation such as google-tag-manager, the form is exposed to external Attack that prevent us from keeping you and your clients data safe. What has been carried out on our side in that respective? We have scanned your templates, checked and validated external resources and explicitly added resources that are secured to our CSP whitelist. What should be done on your side? Background images to forms using URLs must be avoided. Use base64 strings for background images. This is how to do it. Case you require PIXEL support, please submit a ticket our support team. Add your PIXEL URLs to ticket for inspection. Software upgrades Software packages that are effecting remote client forms and agent application (co-browse) has been updated to latest release. We have carried out comprehensive testing to make sure applications are intact. However, in case your templates includes Custom CSS and Javascript we advise to carry out tests to make sure your custom software works as expected. To see custom code, login to application console. For each template, open “Settings” and on the right pane click “Javascript” and “Stylesheet”, case the left pane is not empty, please double check your template at work. Public page enhancement As you probably aware, template and BPM processes can be launched using a public template. Typically public pages require an input to initiate a process. Up to this release, public page is presenting page with required input. With this upcoming release input requirements can be added to URL in a querystring format. For example: Open the this url. https://preprod.cellosign.com/public/02774a7724ae4211a903043bd4171c96. It display a page where you will be required to enter name, mail and phone number. Alternatively, you can open this URL. All the required parameters are injected using a query string and the form will be opened instantly. Be advises that although this option is available use it wisely. Public pages with client data should be secured and posted to clients directly. DO NOT leave public URLs with client data out for grabs. Apply user context to form With this release you will be able to apply Agent context into form automatically. This can be helpful if you require Agent name,phone or email to appear on form automatically with no user intervention. To do so, you will need to apply context as default values to field in a form. For example, you would like an agent email to appear on form automatically. Add email field to form On field settings add “$initiator.email” to default value. Once new session is created the agent email will be displayed automatically Note: It is advised to use this option when it’s required. Do not expose your employees data when not needed. The following contexts are available for your disposal: DataContextNoteemail$initiator.emailUser login name$initiator.usernameTypically emailPhone$initiator.phoneFirst name$initiator.first_nameLast name$initiator.last_name Added “Table” element Due to multiple requests, we have added “Table” element to our form builder. For more details see reference to table in this guide. Data tables enhancements We have added new feature to data tables, that is the ability for data table cell to include input elements as well as static data. When this is useful? Let’s assume that you have an “Insurance proposal” that needs to be implemented. Your proposal might end up with hundreds or thousands of texts and input elements that are varied as our client engaging with the form, for instance, when “Second driver” is required, we want to show legal notice and inquire regards the potential driver(s). One way of doing this is implement the entire data set within the form as it’s normally being done, this can be tedious when there are lots of form elements… Another way is to implement it with data tables. With this enhancement, data table cells can include input elements as well as static data, so when client selects “Second driver” in the form, the entire set of texts and input will be displayed automatically, without the need to configure them in the form itself. More details in data tables reference. Fixes #BUG-1436: Date element accept wrong format when entered manually is fixed and now accepts manually entered values as configured in data time format options. #BUG-1362: On previous releases, when file was added to Google drive through Archive integration, date-time stamp was added to file name. This has been removed and file name includes only the file name convention, without date-time stamp.
Add User FieldDescriptionUsernameMandatory field.Enter a username in English and without spaces (recommendation to enter a full email address)*The field is case sensitiveFirst NameMandatory field.You can enter a name in Hebrew or English.Last NameYou can enter a name in Hebrew or English.MobilePhone number is also used to locate the agent on the form submission screen.EmailThe email address of the user to be used as archive default email.Project permissionsMandatory field.You can define a project manager or a project agent permissions by selecting organization, project and role details from the lists.*The default for adding a new user is agent permission. At the end of registering a new user, select the “Save User” button and additional options will immediately open. For more information see “Password control” section. In order to change user’s permissions for the same project, first remove the existing permission by clicking the “Delete Permission” button. Then select the organization from the list, the project and the desired role from the options. Click the “Update User” button to save updated data if a change is made to the user’s details. Email and mobile phone The user’s email address and phone number are supported by a quick search on the form submission page. Type a part of user’s details to locate it in the list of users and send to the relevant destination, email, or mobile phone. The access to the list of users may therefore also be for you a kind of contact list for those without any specific role in your organization who may receive self-filling forms. In the list of users must only be people from your organization and not from another external source.
Password control Send Temporary PasswordAllows a project manager/organization manager to create a temporary password, that can be copied and sent to the user. It will require the user to change his password in the next login.Force Reset PasswordAllows a project manager/organization manager to force the user to change his password in the next login.Block/Unblock UserBlock or Unblock user from accessing Cellosign.*If the user entered the login information incorrectly more times than defined in “Lock account after failed login attempts” under Project, his user will be blocked. Notes: password operations on user are allowed for users with manager and organization manager permissions. In case user has permissions to more then one project, the password requirements will be the strict one. for example if on project A password is limited to 5 characters and on project B to 8 characters. User will be obligated to 8 characters password.
Notes for Release 4.1.84 Over the past weeks we have been working on improvements to Cellosign platform. In this blog post, you can see a list of what has been changed, updated, and/or what bugs have been fixed. Other than routine maintenance and bug fixes, the highlight for this release is infrastructure for Connectors. In this release and the next releases to come we will deploy direct connections to applications and databases that will enable you to design end to end applications with no APIs. NEW FEATURES & ENHANCEMENTS Data Tables Think about it as a custom table hosted in Cellosign. You can customize it any way you want and connect it to template. What it’s for? Consider the option when you have large repository of texts that needs to be incorporated into business process either as initial value, as a condition to other selection or per user engagement. Up until now that way to handle this process would have required to configure fields and conditions inline the template. In case texts needs to be incorporated into large amounts of fields and templates, this can be quite tedious. With this new feature you will be able to configure relational table with keys and data and use it in cellosign templates using our connector editor. This is specially become handy when you have extensive conditions to handle the texts and in case you have texts such as terms/legal that are expanded over large amount of templates, so you can keep it all in one place. Configuring data table To configure data table login to application and click “data sources” and “Tables”. Click add table and define: table name, columns as instructed on screen. Click to add rows. Eventually, you will have a data table with rows and columns. Note that “key” type columns are designated for the connector in next step so you can search matching records. Configure connector On template editor click integrations on top pane and then “Connectors”. In this screen you will see “Preset”, “Live”, “Submit” and “Post submit” for which our connectors will be integrated into. “Preset” is the ability to get values from the table on session initiation, requires no user intervention. “Live” will be configured when the connector require some of interaction from the user such as selecting value or click on a button. “Submit” and “Post submit” are for databases and apps such as salesforce or Dynamics [that are coming up in next releases]. To configure connector to data table click “add” on “Preset” or “Live” sections. Select data table you have configuredSet status “Active”Define the lookup:keys from the data table [one or more]Equation [for data table equal only is applicable]To which entity to compare with: form field value, label [integration] or fixed valueAdd conditions as many is needed for the lookupDefine what happens if query return no results, one or more than one resultOn “Live” you will need to configure how the connector is activatedon “Change”: As the user types in. Select the field from the list to attach the connector withon “Click”: select a button from the form that will activate the connectorFinally map the query result into the form fields. which value from data table goes to which field in form Connectors We have created a consolidated editor for all communications with a template. That includes: Integration with WebhooksTemplate integration to get data from remote source [See additional notes below]Data tables described in the section aboveUpcoming connector to Salesforce in Release 85 [next release]Upcoming connector to Dynamics and Databases in R86 What it’s for? Consolidation of connectors has been carried out to provide the user a complete 360 view on all inbound/outbound integrations with a business process. What has changed for Webhooks? Webhooks for template, on previous release, is configured under Template->integrations -> Webhooks. With this change Webhooks can be now edited under Connectors view. The new view is also includes “implicit” webhooks by default. What has changed for Template services? Template services, previusly on Template->integrations -> Template services, has no migrated both UI and functionality to Connectors with webhook. A new webhook type has been defined “WHEF_FORM_FIELD_CHANGED”. The new webhook, like any other webhook allow to define the endpoint for integration: url, methods and many more capabilities, on top of the previous implementation, such as authentication method, timeout etc. Once defined, on the project resources, it can be defined per template as well by adding fields mapping and behavior, button click or field on change. Form preview We have added the ability to view form before submission. This is very useful feature when you required that the end client will see the final PDF view before submitting it. To activate this feature, log in to template editor, click settings icon and tick “Show form before submission”. preview will be displayed with watermark so it cant be used as an evidence before actual submit. Note: up to release 84, this feature was available in PDF or Hybrid forms. Starting this release this feature is also available in HTML forms as well. Recipient password To secure forms for online clients Cellosign has OTP, password and authentication functionality that can be activated on a template Currently OTP and authentication are activated both globally and also on recipients level, meaning a template can be configure that first recipient requires OTP and second requires authentication. We have modified password functionality to be activated on recipient level as well. All templates carrying passwords functionality will be migrated with the new functionality. Note: Make sure to double check on pre-prod or production rollout that templates are working correctly. Extended recipients We have extended the maximum capacity for recipients in template configuration. Up until now max number of recipients per template was 7. With this enhancements there’s no limit on number of recipients that can be configured. Legacy archive: depreciation notice By the end of the year we will deprecate legacy archive method. The replacement for legacy archive is Webhook archive. This is relevant for you if you are using archive in one of these ways: Configurable archive in template settingsUse “archive_url” tag on integration Please be aware that deployments with this feature will not be supported by the end of 2022. Feel free to consult our support for transition. Other changes and Fixes Tokens removed from web server response headers to reduce visibility on application informationPer WCGA 2.0 for accessibility best practice we have removed high contrast view and applied changes for better engagement on “Monochrome” viewIsraeli ID validation now includes requirement for 9 digits
Profile In the Profile area user can view and edit his account details, change password, add the private signature, view and change his token, and configure MFA for login additional verification. Note: user details cannot be changed by the third party user and should be updated by the organization. Private signature The signature allows to input the user’s signature into the form automatically. The functionality is usually used for automatic signing of files, such as invoices or a certificate “authorized to sign” in the organization. API Show Token/Hide Token/Refresh Token will show, hide and change the token accordingly. “Open documentation page” link will open the related API documentation. MFA configuration User can configure 2-Step verification for login by choosing code destination.
Notes for Release 4.1.83 Over the past weeks we have been working on improvements to Cellosign platform. In this blog post, you can see a list of what has been changed, updated, and/or what bugs have been fixed. Some of the highlights for this release are: A) Visibility: We’re continuously investing lots of efforts to collect, provision and deliver to you quality heads up on errors. This release includes automatic notification on errors and ability to report directly from application console onto our ticket system while collecting valuable information that can save time on turn-around. B) Consistency: Several changes has been made to ensure inbound and outbound data with external applications is exchanged timely and accurately. Both SMS and Email default providers has been replaced to provide consistent service. New services our complied with ISO-27001, ISO-27799 and GDPR standards. NEW FEATURES & ENHANCEMENTS Errors notifications As part of our efforts for consistency we have published a tool that will alert closed circle of application administrators to receive email notifications regards errors in business processes. Errors may occur from time to time as result of incorrect process configurations, connectivity with 3rd party applications or issues with software. Rest assure we are constantly monitoring business processes on our monitors. When an issue occurs admins will receive an email with as much information as possible to extract from Cellosign in order to complete process manually so valuable data will not be comporomised. For example, a business process is completed, Cellosign is failed to transmit the product to an API [i.e signed pdf, attachments and metadata]. In this scenario Cellosign will deliver the signed document and metadata to admins in order to be archived manually. We are constantly improving our visibility on failures and this feature is planned to be improved in every new release . To configure admins to receive error notifications you will need organization or project manager privilege. Log into Cellosign, on the left tool bar click projects and enter email(s) in field “Send logs and errors to this address” on “Messages” tab We advise to add at least one recipient Inline ticket submission We have incorporated a ticket form within the application. Ticket can be submitted from two locations in the application: 1. At the bottom of the leftmost toolbar, click the headset icon2. In transaction board, toggle a transaction and click the headset icon We will collect as much information as possible into the ticket including the reporter contact details and post it to our support team. Clear field toggle button New functionality added to enable inline clear button in form. Using this functionality requires opt-in per field (turn it on)Clear button is enabled only when edit permissions are granted To turn on clear button enter into field configuration -> Values & Display tab and toggle on “Show clear button” Old browsers deprecation notice Cellosign is designed to provide clean and smooth user experience both for agents and remote clients. As part of our efforts, we have started a process of deprecating old browsers, first in line is IE11. [Specific notice for IE 11 published at April 18th]. We are planning to deprecate more browsers down the line. Heads up will be published in advance. For a remote client we will display the view below that will enable the client to capture QR code that carry the url provided and also a click to copy into other browser. Default Email provider We are in process for replacing our email provider from Mailchimp to Sendgrid. Over the last month we have successfully deployed Sendgrid service on our per-production and lower grade environments. Sendgrid proven to be more reliable in delivery and tracking. You may test the new mail provider on our per-production service on your convenient. The service will be rolled out to production altogether with this release. Specifically In case emails from Cellosign are transported to you by an organization mail server (i.e. Exchange) please make sure emails are not blocked. Certificate change During the upgrade of this release we will also replace our outdated certificate which due to expire on June 24th. New certificate is already installed on our per-production service. Should you require a CA file to flush it onto your ends please contact our support at service@cellosign.com Other changes and Fixes Templates listing is now ordered by Template nameAdded the ability to release user from lock where the Authentication system is remote such as in OKTA, Active Directory or Azure AdReplaced SMS provider. we have deployed inforu as SMS provider which has been prove to be more timely and consistent service. The change is seamless and does not require any action on your end. you’re welcomePer WCGA 2.0 for accessibility best practice we have removed high contrast view and applied changes for better engagement on “Monochrome” view
Notes for Release 4.1.82 First and foremost we are happy to announce that we have been certified for both ISO-27001 & ISO-27799. As you probably aware, certification process requires lots of efforts to make sure we are working and abiding to information security’ best practices and standards in order to keep your data safe. Nevertheless, we haven’t slowed down with enhancements and over the last weeks, we have been working on improvements to Cellosign platform. In this blog post, listed what has been changed, updated, and/or what bugs have been fixed. NEW FEATURES & ENHANCEMENTS Client Identity Verification CIV module authenticates remote client identity, throughout comparing an official document such as ID or Driving License with a liveness test and a live selfie . The entire verification process is completely automated and does not require an agent intervention. Read more about this feature on this post. Image Upload and Compression First, for your convenient, we have removed upload limitation on image upload file size. And couple of notes on this change: All images uploaded to Cellosign are compressed and resolution is reduced to 1300px max (width/height)Mostly after compressions, image file tends to reduce up-to 1Mb. Please be aware to set up your APIs in case your forms use lots of image uploads OTP screen re-design One time password screen for clients has been re-designed now includes more engaging UI, Send again and post OTP to other location buttons. Fixes Transactions are now displaying list of destinations where invite posted to and not just the first destinationAccessibility: PDF files generated from Cellosign are now compatible to be read automatically with NVDA screen readerAccessibility: Paragraph elements are now added with new attribute presentation used by assistive technologiesAccessibility: Improve Monochrome and High contrast for accessibility modeAccessibility: Headings has been modified to adapt context hierarchy to headings:Page heading defaults to H1. Styling options moved to page style tabSection heading defaults to H2Template/form heading has been modified with shorthand “…” case template name is too longLogo on top is now hidden on mobile screen
Create New Template A form in the Cellosign application can be created using the following types of templates: Responsive HTML template, automatically adapted to the client’s screen and rich of display capabilities and directing the end user. For more information see “HTML template“. A template based on a PDF form that is loaded when the form is created. For the most part, the form is quite limited in its functional richness by nature. For more information see “PDF template“. A template that combines a PDF and HTML form, when the customer fills the details in HTML form and the information is embedded to the PDF form. For more information see “Hydrid template“. Add the Template Name. Choose one of the options: If you would like to create a template based on HTML experience and you do not have a file, select the “HTML Template” option. If the product should be a PDF, select the “From PDF file” option. Upload PDF file by pressing “Choose file” button and selecting PDF file location. If the product should be a combination of PDF and HTML form, select the “From PDF file” option. Upload PDF file by pressing “Choose file” button and selecting PDF file location. When you click “Save”, the template editor will open. Template toolbar Template NameTemplate Name field is editable and the value can be changed.EditPress the button to set the template in Draft status. Default state for the new created template.PublishPress the button to set the template in Publish status.SavePress the button to save the template.ClonePress the button to create a copy of the template.New created template will be automatically saved in the application.Default name of the new template: “Copy of <original name>”.DownloadPress the button to download the template. JSON file will be saved automatically in the computer location.Change underlying PDFPress the button to change the PDF file.Available only in PDF templates.Show AgentPress the button to open the template in the Agent screen.For more information about “Show Agent” screen click here.DeletePress the button to delete the template. The confirmation message will appear. To update a template, select a template from the list and click the template name. Perform the needed changes and press “Save” button.
How to empty Cache? Using chrome browser: On your chrome browser page, click F12. Right click the refresh image: A menu will open with 3 options. 3. Choose the 3rd option – Empty Cache and Hard Reload:
Upload Template From File This option is intended to transfer a template from one system to another, such as a test server to a production server. The file can be downloaded from a template editor before. For more information about template tools read here.
Client did not receive email or SMS. What to do? Emails and text messages in Cellosign are posted through 3rd party services. In case a message was posted successfully from Cellosign and acknowledged by the provider, you will see a green check next to to recipient address in the transaction board. Green check means that message has been provider has accepted Cellosign request for posting a message to the recipient. We do not have the visibility if messages actually delivered to recipient or has been blocked somewhere on delivery. Message block may occur for any number of reasons, such as, Phone that has no permit for text messages, company email that may receive message from known source. In case your organization requires a complete visibility on messages delivery it is advised that you will integrate with service providers to gain access to full transaction trail. Please see SMTP and SMS integrations to connect with your provider
PDF template It is recommended to use the PDF format only for documents that are regulatory such as powers of attorney and insurance forms. And in any case, even if the template is a PDF, it is recommended to use it in combination with an HTML template to provide a better customer experience. For the explanation about the HTML integration in PDF template read here. After loading a PDF file and saving, the application will go to the template editor screen with the template in “Draft” mode. On the right side is a list of possible controls for a PDF template and on the left side is the PDF file uploaded for the template. Click any controller on the right, drag and drop it to the desired position on the PDF. For more information about controllers read here. Clicking on the controller will move the right side to the controller editor. For more information about controller editor read here. Basic options In the PDF form the label does not appear, but a value must be entered in this field for accessibility purposes. The screen readers read the value embedded in the label for the accessibility of the form. For more details about accessibility read here. For a detailed explanation about controllers: mandatory fields, dependencies and more, read here. Position To reposition the input field on the PDF there are two options: Click on the control and drag it to the desired location on the PDF or, Click on the control and click on the “Position” tab on the right side of the screen. The “Top” and “Left” controls indicate the distance [in percent] from the top and left edges of the PDF page. To decrease or increase the input field there are two options: Click on the control on its right or bottom side and drag to fix the height or width of the input field, or Click on the control and click on the “Position” tab on the right side of the screen. The “Height” and “Width” controls, specify the height and width [in percent] of the height and width of the PDF page. Upload files and images Under the list of controllers on the right side there is an option to upload files and images: Add the Display Name: instruct client what file to upload. Select the Type of file: Image upload or File upload. Select whether the file is mandatory or not. When finished, click “Add” [green V button]. Default attachment extensions are defined in the Session settings under Projects. For more information read here. Archive Information in the archived PDF file based on PDF template is aligned to the center according to the width of the field in the form.
Client uploaded a file and I received a ".bin" file, why? For security reasons, file that is uploaded into form is scanned and also a check for its identity is carried out. Cellosign process does not take the file extension for example “.txt” that was uploaded for granted but rather check that the file signature (“identity”) and calculate the output file extension. In some cases a file could be uploaded as “.txt”, “.pdf” for example but the archived document could be “.bin”. That is because the file carries binary identity, mostly octet-stream identity. OK, so what do I do next? Since this file cannot go through Cellosign with the original extension contact your client to get the file in other mean.
HTML template HTML template is responsive, automatically adapted to the client’s screen and rich of display capabilities. After adding a template name and saving, the application will go to the template editor screen with the template in “Draft” mode. HTML template is built from four nested components: Page: The template contains one or more pages. Switching between the pages in the form is possible for the user using the navigation buttons at the bottom of the page. Section: Each page contains one or more sections. Row: Each row contains at least one column and up to three columns. Column: A column may contain one or more controls. At the top of the template editor is “Intro” section, that allows a Welcome message to be displayed in the form. At the bottom of the form editor is “Outro” section, that allows the completion message to be displayed to the person filling out the form. Below is an example of a template consisting of one page, in which one section includes four rows and three columns in each row. Page Template contains pages that the user can navigate through. It is recommended to use division into pages when the form is loaded with controllers, and we want to create a more pleasant experience when filling out the form. For each page in the template, you can apply a title and additional design options. To enter the page’s options, click on the margin of the page, the page will have a light green background and a panel for the page’s options will open on the right. Page titleInsert a textual title for the page.ClassUsed by developers to generate additional options in the code.Delete pageDeleting the page with all the components. Page design includes the following options: Title Background Select the color of the page title background.Title styleHeader 1 is the largest font and Header 4 is the smallest.Font colorSelect the color of the page title text.Title position “Fixed at the top” will mean that on a mobile phone the title will be pinned to the top. “Non fixed” will scroll along with the page.Show logo Set to ON to add the logo to the title.Height in pixelsHeight of the logo in pixels. Section As mentioned before, page contains one or more sections. Similar to the page options, the section also includes design options. To enter the section’s options, click on the section’s margin. The section will have a pink background and a panel for the section’s options will open on the right. Section titleInsert a textual title for the section.CLASSUsed by developers to generate additional options in the code.Delete SectionDeleting the section and its components from the page. Background colorSelect the color of the section background.Title styleHeader 1 is the largest font and Header 4 is the smallest.Font colorSelect the color of the section title text.Title BackgroundSelect the color of the section title background.IconsSelect the icon for the section title, its color and position to the right or left of the title.Search Icons [English] Search Icons [English] Allows searching by English text relevant to the icons, for example “arrow”. Rows and columns The template editor allows us to create a form that will automatically adjust to the size of the user’s screen. If we use only one column per row throughout the form the entire form, the form will be presented to the client as one column of the fields. If we use more than one column in a row, then: If the client uses a large screen such as a tablet or a desktop computer, the controls will be displayed as they are displayed in the template. If the client uses a narrow screen, for example a mobile phone, the controls in the column will be displayed in a column one after the other. Display of the form on a tablet and a desktop computer. Display of the form on a mobile phone. Intro Clicking on the “Intro” button at the top of the template entry will display the panel on the right. The “Hide Welcome screen” button will hide the rest of the parameters in the panel and will also hide the welcome screen for the client, so that the link to the form will go directly to the form itself. Hide Welcome screenWhen set to ON it will hide the rest of the parameters in the panel and will also hide the welcome screen for the client, so that the link to the form will go directly to the form itself.TitleText that appears in the title of the welcome page. The default font is H1, size and color can be edited in the text editor.Description Text that appears below the welcome page title. The default font is H3, size and color can be edited in the text editor.Start text buttonIf no value was entered the default value “Start” will be used. Outro The completion page displays an indication that the procedure has been completed successfully and even navigates it to another page such as your home site. Auto redirectIf set to ON, enter a web address to which the client will automatically redirected without going through an end page in Cellosign.Title Text that appears in the title of the Outro page. The default font is H1, size and color can be edited in the text editor.DescriptionText that appears below the Outro page title. The default font is H3, size and color can be edited in the text editor.Redirection buttonThe button to redirect to another address. If set to ON, enter a text of the redirect button and a web address to which the client will be redirected. Archive In the HTML template it is possible to hide any specific controllers from the preview and the final PDF by adding “pdf_hidden” class under the Developer tab. In this case fields with pdf_hidden class will be shown in client’s form to add the values and complete the form. But they will not be shown in the preview and in the final PDF after submission. For more information about the Developer tab click here.
PDF is generated with empty page. What to do? Each block printed on a PDF includes a markup to clear and preserve space from the content above it. The block also takes into account the height it needs to preserve. Mostly this would work just fine as expected. However on large text blocks (Mostly with paragraphs and tables), in case that the block appears in top of the page please use the following class remove-clear on section level (As appear in the image) to prevent your text-block from “jumping” to the next page.
Client could not submit a form. What to do? Step 1: check mandatory fields First, check with the client if he has filled in all the mandatory fields in the form. If the mandatory fields are not filled in, the customer will not be given the opportunity to send the form. In Cellosign, verification of the correctness of data is activated for certain fields. Therefore, make sure that the mandatory fields are filled in according to the requirements. For example: ID field contains a proper 9-digit number, an email address in a proper format, a customer number in the accepted format, and so on. In these cases, there is a red note under the field that the value entered to the field is incorrect. Step 2: Check internet connection If the client is still unable to send the form, it is recommended to check the Internet connection. If the client’s internet connection is fine, there may be a problem with the application of the form. Step 3: Check if submit size exceeded Templates may include Image and File collection controls. Specifically files can get to 5Mb each. Assuming template has many controls to collect files and images, the entire submit might exceed Cellosign limit for maximum body size: On production the limit is set to 50Mb. On Pre-production environment the limit is set to 30Mb. How to verify that this is the issue? Open browser console and search for HTTP code 413 which implicates that this is indeed the problem. How to resolve? Reduce the amount of file and image collection and make sure to reduce the maximum weight allowed for each. Step 4: Contact support Please contact support in your organization, if issue is not resolved, your support should contact Cellosign support with the relevant details If no problems were found in the form implementation, please contact Cellosign support.
Hybrid template A template that combines a PDF and HTML form, when the customer fills the details in HTML form and the information is embedded to the PDF form. When creating a hybrid form first the PDF template should be created. For more information, see “PDF template“. To create an HTML template from the controllers entered in the PDF template, click “HTML Template Editor” on the top toolbar at the right side, and then click “Create HTML template”. Once clicked, all controls from the PDF template will be injected into the HTML template. Read about the HTML template editor here. Archive Information in the archived PDF file based on Hybrid template is aligned to the center according to the width of the field in the form.
Controller types A template usually consists of a collection of controllers, some of which are read-only and some of which are intended for the user to enter data, upload a file, or select one or more of the displayed options. In “Controller editor” section we will describe common options for all controllers. See below a detailed explanation of each controller type and additional editor options. Articles Telephone ID Number Email Text Number Checkbox Radio Date List of values Text area Signature Paragraph File Upload Image Upload Image Drawing Auto Date Button Location Table Payment Telephone This controller is available only in the HTML template. Types and Validation A telephone type controller allows typing in fixed and mobile phone numbers by default. On this screen you can change the default and allow mobile or fixed only. The control does not accept non-numeric characters. Conditional permissions When checking conditions on a telephone type controller, the following options are displayed: EmptyIf the telephone controller has no value.Not EmptyIf there is any value in the telephone controller.EqualIf the telephone controller is exactly equal to the entered value.ContainsIf the telephone controller contains the entered value. ID Number This controller is available only in the HTML template. Types and Validation In this controller the “Israeli ID” is selected by default in the Builtin Types section. Validation of the field will be performed according to the ID format. Field’s value Must beTo Value in This fieldThe controller will verify if the field value meets a condition against other number fields in the form.Error Message InvalidIf an invalid value is entered, the form will notify the client by default according to the control type, for example “Data is invalid”. Insert an error message that will be displayed instead of the default.Error if no value enteredIf no value was entered to the field, the form will notify the client by default according to the type of controller, for example “Missing signature”. Insert an error message that will be displayed instead of the default. Conditional permissions When checking conditions on a ID number type controller, the following options are displayed: Grater thanIf the ID number controller is greater than the entered value.Less thanIf the ID number controller is less than the entered value.EqualIf the ID number controller is exactly equal to the entered value.Not equalIf the ID number controller is not equal the entered value.EmptyIf the ID number controller has no value.Not emptyIf there is any value in the ID number controller. Email Email Validation Email validation will be performed according to the correct email format including “@” and “.”. For example “israeli@cellosign.com”. Validation limits Email validation is conformed to RFC 5322 which is basically composed of a string given that it includes “@” and a”.” in specific places, there are no limitations on domains and sub-domain. In case you require limitation on email addresses, consider using text field and combine with regex. To do that: Add text control Use this regex ^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+.(com|net)$ to validate an email structure that must include “.com” or “.net” extensions Customize the error message if needed Note that by using a text field you will loose email functionality such as “client copy” as described below. Values & Display While setting the “Client copy” to ON, a signed copy will be sent to the entered email address. Types and Validation Field’s equation The controller will verify if the field value meets a condition against other field in the form and it can be case sensitive or not. In case the field with compare with has no value to comparison will not occur. If comparison is required that make sure the field to compare with is required.Error Message InvalidIf an invalid value is entered, the form will notify the client by default according to the control type, for example “Data is invalid”. Insert an error message that will be displayed instead of the default.Error if no value enteredIf no value was entered to the field, the form will notify the client by default according to the type of controller, for example “Missing signature”. Insert an error message that will be displayed instead of the default. Conditional permissions When checking conditions on the email type controller, the following options are displayed: EmptyIf the email controller has no value.Not EmptyIf there is any value in the email controller.EqualIf the email controller is exactly equal to the entered value.ContainsIf the email controller contains the entered value. Text Types and Validation MaskSelect a data entry format from the list. In this option, the controller will allow data entry only in the format selected for the controller.Starts withEnds with ContainThe controller will verify that the value entered corresponds to the settings entered and will display an error message if it was not entered correctly.Switch All charactersInclude Hebrew and Latin characters, numbers, and punctuation characters like space, dash, commas, underscore, middle dash. Choose specific options to exclude irrelevant characters.Switch Hebrew lettersAllow Hebrew characters plus: Single quote (“‘”), Double quote(“””), Slash (“\”), Space (” “), Underscore:(“_”), Hyphen (“-“)Switch Latin lettersAllow English characters A-Z and a-z plus: Single quote (“‘”), Double quote(“””), Slash (“\”), Space (” “), Underscore:(“_”), Hyphen (“-“)Switch NumbersAllow only digits. Min lengthMax lengthThe controller will verify the minimum and maximum length in the field integrity check.Field’s equation The controller will verify if the field value meets a condition against other text fields in the form and it can be case sensitive or not. In case the field with compare with has no value to comparison will not occur. If comparison is required that make sure the field to compare with is required.Validate bank account numberWhen set to ON the controller will verify the bank account number added to the field.Need to set Bank code and Branch code fields in order to perform the validation.Bank codeSelect the bank code field for the bank account validation.Branch codeSelect the branch code field for the bank account validation.Error Message InvalidIf an invalid value is entered, the form will notify the client by default according to the control type, for example “Data is invalid”. Insert an error message that will be displayed instead of the default.Error if no value enteredIf no value was entered to the field, the form will notify the client by default according to the type of controller, for example “Missing signature”. Insert an error message that will be displayed instead of the default. Conditional permissions When checking conditions on a text type controller, the following options are displayed: EmptyIf the text controller has no value.Not EmptyIf there is any value in the controller.EqualIf the text controller is exactly equal to the entered value.ContainsIf the text controller contains the entered value. Number Values & Display Show counter buttonsUse this option to display buttons that allow the user to increase or decrease the field value on click.Counter stepsEnables skipping according to the specified value when pressed. Default: 1 This is how the controller will be displayed on the user screen: Types and Validation Built-in TypesSelect data check from the list – ID number or company number. The controller will verify if the entered number is correct.Minimum/MaximumThe controller will verify that the entered value is according to the values entered in Minimum and Maximum fields.Field’s equation The controller will verify if the field value meets a condition against other field in the form. In case the field with compare with has no value to comparison will not occur. If comparison is required that make sure the field to compare with is required.Error Message InvalidIf an invalid value is entered, the form will notify the client by default according to the control type, for example “Data is invalid”. Insert an error message that will be displayed instead of the default.Error if no value enteredIf no value was entered to the field, the form will notify the client by default according to the type of controller, for example “Missing signature”. Insert an error message that will be displayed instead of the default. Conditional permissions When checking conditions on a number type controller, the following options are displayed: Greater thanIf the number controller is greater than the entered value.Less thanIf the number controller is less than the entered value.EqualIf the number controller is exactly equal to the entered value.Not EqualIf the number controller is not equal the entered value.EmptyIf the number controller has no value.Not EmptyIf there is any value in the controller. Checkbox Checkbox is a single selection option. Can be checked or unchecked. It is possible to set an initial button value for the checkbox, “True” or “False”, which means that the form will open for the first time with the initial value marked. Conditional permissions When checking conditions on a checkbox controller, the following options are displayed: SelectedIf the checkbox is checked.Not SelectedIf the checkbox is unchecked. Radio Values & Display TextTitle for the radio button that will be shown in the form.ValueValue of the radio button.Default valueDefault radio button that will be selected upon sending the form.Active iconThe icon that the user will see in the form when the radio is selected. In addition it is possible to define the color of the icon.Inactive iconThe icon that the user will see in the form when the radio is unselected. In addition it is possible to define the color of the icon.Delete [x] Delete the selected row.Multi selectWhen selected the user will be able to choose more than one radio button in the form.*If Multi select check box is marked icons will be ignored. See below the example of radio buttons with icons: Conditional Permissions When checking conditions on a radio type controller, the following options are displayed: EqualIf the radio controller is exactly equal to the entered value.Not EqualIf the radio controller is not equal to the entered value.EmptyIf the radio controller has no value.Not EmptyIf there is any value in the radio controller. Style Widget typesFor rating radio buttons set the type to “Rating”.Default: NoneInline BlockWhen selected the radio buttons will be lined up.Display buttonsWhen selected the radio buttons will be displayed as list of buttons See below the example of radio buttons with “Rating” widget type and “Inline Block” selected: Date A date controller type allows to select a date or a date and time. When accessibility is activated, the date is hidden and only keyboard input is allowed. Add “$now” to default value in order to inject the date (or date time) that the transaction has been created into the field. Values & Display Select the “Add Time” check box to add both date and time. By default the checkbox is unchecked. Types and Validation It is possible to apply limits on the minimum and maximum date. In the example above, the date controller will allow dates that are less than one month older than today and less than tomorrow. If we want to apply birth date selection and make sure the age is at least 18 years, we will enter “-18” in the “Maximum date” in the “Years” field. “Date format” field is used to choose the date and time format. Conditional permissions When checking conditions on a date type controller, the following options are displayed: Greater thanAfter a dateLess thanEarlier than a date Input control for validation accepts a format to calculate future or past against current date, for example make sure that contact is at least 18 years old. In the example above the parameter is set to “-18y”. As result, the dependency will be activated if the value in the date field is earlier than 18 years ago. The possible values for this field are: “y” for year, “m” for month, “w” for week and “d” for day, all in positive or negative values. User experience Date and time needs to be actively selected. To capture current date and time, user requires to select “Now” or “Today” (when time is required as well). Default selection time is “00:00” List of values A form element designated for selecting values from a list. There are two ways to store values within a list: 1.Manually typing the values within the list controller itself. (The label and the stored values will be the same). 2.Connecting the list controller to a dictionary (Unlike the first method, this method enables to create a distinction between that displayed text and its stored value). A list of values may also be cascaded while selecting a value from one element will affect available values on another list of values. For example, if the selected value from one list of states is “California”, then the other list of cities controller will filter list so that only cities within California are displayed such as: Los Angeles, San Francisco, Sacramento, etc. Configuration LabelDescriptionAdd a tagAdd manually list of values, click enter or comma to enter new valueSelect dictionaryCouple builtin dictionary with the template. Can be useful when list of values is deployed in many templates and single source need to be managed. For more information see “Dictionaries“.Multi selectEnable multi value selection to pick from the list of valuesAdd default valueFrom the dictionary or the tags, add default value that will be propagated into a form. May select many if field is configured as multi selectFilter listSelect the list of values to link the lists such as cities and streets, only if the values in the dictionaries have the same groups.AJAXSelect to enable an autocomplete in the search box of the list of values controller. If a data dictionary is selected, the functionality exists by default and cannot be cancelled.*In large lists, it is recommended to select “AJAX” in order not to overload the form.Search typeIf “AJAX” is switched on then we have two options for search values remotely.The default option is “Fuzzy”. User may override default. See notes on search types below Search types Fuzzy Search Definition: Fuzzy search is a technique used to find matches to a query that are not exact. It is particularly useful for handling misspellings, typos, or variations in word forms. The goal is to return results that are close to the search term based on certain algorithms or criteria. Example: Suppose you are searching for the term “apple” in a database. With a fuzzy search, if you accidentally type “aple” or “appl”, the search engine might still return results for “apple” because it recognizes that the intended word is similar to the input. Strict Search Definition: Strict search, also known as exact search, only returns results that exactly match the search query. There is no tolerance for variations or misspellings in this type of search. Example: Using the same example, if you search for “apple” with a strict search, you will only get results that contain the exact or partial term “apple”. If you type “aple” you will not get any results. If you type “appl” you will get results. Use Cases: Searching for specific technical terms or codes. Databases where precision is crucial (e.g., legal documents, scientific research). Situations where accuracy is more important than flexibility in matching terms. Comparison Fuzzy Search: Flexible and tolerant to errors. May return a broader set of results. Useful for improving user experience in search interfaces. Strict Search: Requires exact input. Ensures precision and accuracy in results. Useful in contexts where exact matches are necessary. Notes and gotchas When connected to dictionary, note that a dictionary include “text” and “value” columns. While the textual representation is selected it is actually holding the underlying value. As a result on a signed document produced from Cellosign the text value will appear and the underlying value is transferred as a result in the archive process. When applying multi-select on PDF templates, make sure to leave enough room for selection, also note that on a PDF result that values are concatenated on a single line with a comma separating each of the selected values. Make sure to have enough room as needed, otherwise your values will be truncated from the archived PDF. When list of values is coupled with a dictionary and you wish to assign a value upon a certain condition, make sure that the value that you are adding is in the “value” column in the dictionary and not from the “text” column (The “text” is a label that only affects the displayed text). Conditional permissions When checking conditions on the list type controller, the following options are displayed: EqualIf the list controller is exactly equal to the entered value.Not EqualIf the list controller is not equal to the entered value.EmptyIf the list controller has no value.Not EmptyIf there is any selected value in the list controller. Conditional values When using conditional values in the list of values that is connected to a dictionary, you need to use the “Values” column and not the “Text” column. See below the example of the list controller using the dictionary “Levels” with values 1, 2 and 3. Depending on the selected radio button, the value in the list controller will be set to “Level 1”, “Level 2” or “Level 3”. Client side: Text area This controller is available only in the HTML template. Types and Validation Min lengthThe controller will verify the minimum length in the field integrity check.Max lengthThe controller will verify the maximum length in the field integrity check.Error Message InvalidIf an invalid value is entered, the form will notify the client by default according to the control type, for example “Data is invalid”. Insert an error message that will be displayed instead of the default.Error if no value enteredIf no value was entered to the field, the form will notify the client by default according to the type of controller, for example “Missing signature”. Insert an error message that will be displayed instead of the default. Conditional permissions When checking conditions on a text area controller, the following options are displayed: EmptyIf the text area controller has no value.Not EmptyIf there is any value in the controller.EqualIf the text area controller is exactly equal to the entered value.ContainsIf the text controller contains the entered value. Signature Purpose Collect client graphic signatures. Signatures are embedded into the signed document in a way that it associate the signature with the signer. Values & Display Button text Override the default button text to pop signature pane. Append values A signature controller allows you to combine input from the form to be embedded in the digital stamp. In this way, you can embed the details of the user such as full name and ID into the signature field in the signed PDF. Note: The embedded data is not visible on PAD itself. It can only be viewed when clicking on signature pane using Acrobat reader. Types and Validation The signature controller includes several options. The default is a graphic signature when a user enters the controller and signs on a touch screen or using a mouse\pointing device. However, signature can be integrated data specific to the form to produce a signature with company information embedded. Also in case signer is an application user, his signature can be automatically retrieved for confirmation Company SealIf set to ON, will ask the client to enter the company name, ID and select the company type. Validation of the ID field will be performed according to the standard ID format. The input data of the company name and the identification number will form the background for the graphic signature.Company nameCompany name allows to map input fields (if present and correct) from the form to generate the company stamp automatically.Company IDCompany number allows to map input fields (if present and correct) from the form to generate the company stamp automatically. Validation of the ID field will be performed according to the standard ID format.Company TypeCompany type allows to map input fields (if present and correct) from the form to generate the company stamp automatically. Valid values “Private” or “Company”.Company stamp from imageIf set to ON, client will be required to upload an image which will be used as a background to graphic signature. The uploaded image will be used as is.Automatically apply employee signatureWith this feature Cellosign can retrieve a private user signature into the signature pad.This feature is available if the user has a private signature in his user details and user is authenticated in a workflow or a bpm process.Display signature confirmation at the bottom of this page at the PDF pageWhen applied the signature will be made available for confirmation on all consecutive pages resulting from the HTML page.In case “Display the confirmation also at the page where this signature control will appear” is set to ON it will also be made available for confirmation at the same page where the signature appears as well.Notes:1. This features requires activation2. Is available only when form preview is checked and template is an HTML3. This feature can be included on up to 6 signatures per HTML page When at least one of the Display signature confirmation options is set to ON, the green confirmation buttons will be shown in the form preview. It is possible to confirm all the signatures by clicking on the button at the top or at the bottom of the form or confirm them one by one by clicking on the green box with the signature itself. After the form submission the signatures will be displayed at the bottom of the page according to the selected settings. Due to the sensitivity of a personal signature, it is recommended to consult a legal advisor of the company in order to validate an automatic signature solution. Cellosign suggests a variety of other alternatives, such as automatic sending to the user for approval and signature. Template level features On template options you may find the following options: OptionWhat it doesAdd browser timestamp to signature fieldApplies client browser timestamp onto the signature. default unchecked.The date format displays a time signature according to the browser’s settings, the format changes according to the browser’s language, i.e. an end client that sign in the browser defined in the English (United State) language, the time signature format is American, an end client that executes a signature in the browser In Hebrew or “English (United Kingdom)” the time stamp format is European.Clone graphic signature for approvalCheck this option if your use case requires that client signatures will look the same. This option captures the first signature and use it as a signature for confirmation on the consecutive signature pads.Initialize controls on form load This option will made sure that data will be wiped as form is re-loaded. In case “Clean up signatures only” is checked, only client signatures will be cleared on reload Paragraph A paragraph is an informative controller for display only. This controller is available only in the HTML template. Values & Display Entering texts in a paragraph controller is done through a content editor. The editor supports different design tools such as: Text style, format and size Font color and highlight color Bold, Italic, Underline Ranked and numbered lists including indents Direction and alignment of the text Links (website addresses / emails), etc You can enter directly in the content editor by writing texts. Special features Ordered lists Ordered lists are texts block with incremental values such as 1,2,3 or A,B,C etc. Ordered list in paragraph control include the option for indented numbering: 1, 1.1, 1.2 etc. Click TAB to indent and Shift+TAB to out dent your text. To apply formatting on ordered lists the are few conditions: entire text should be formatted and not only portion of it Right click the bullet text that requires formatting and check: “Apply content style on list” Note that ordered lists formatting applicable for: font type, size, font color, weight (Bold) and italic. Columns spread This is a custom feature to display texts in columns (similar to way newspaper columns). To activate this feature select your text an click on icon that reads “Custom column spread”. Select how many columns, Gap in pixels between columns, ruler width, style, color and text alignment of the text Note: Column spread can be used with other styling options such as ordered lists, make sure to select the text accurately when applying additional styling, otherwise styling options might misbehave. Another approach is first to apply Column spread Pland then other styling options. Input controls Paragraph control includes builtin input types to collect data. To use this feature: Click on any of the controls appear in the menu: text, select and checkbox Enter values into dialog as needed. ID is optional, use this if you require to inject value into the control through API. Permissions to edit input controls in paragraph are driven from paragraph settings. Note: When there are input controls or editable fields from the Data table, make sure that you have edit permissions to the paragraph control: Placeholders Use placeholder button to attach value from other input controls into the placeholder. Note that data a placeholder is not editable. In addition data is propagated into a placeholder only at time when transaction create, so it’s become available when original control has default value or it has been injected using an create session API. To use placeholder: click placeholder button on the menu Select the control to attach Check/Uncheck options as required Underline options will display or hide underline where the placeholder is positioned Show label on radio or select controls refer to the option to show the visual or the underlying values of select and radio controls. As they must not be necessarily the same, for instance: “Bank Discount: can be visual value while “11” is the underlying code, having that this option provide the mean to show “11” or “Discount”. Source editor The content editor supports HTML and CSS and you can enter HTML and CSS code through the “Source” icon and/or see the design defined for the text. The content editor supports HTML and CSS and you can enter HTML and CSS code through the “Source” icon and/or see the design defined for the text. Pay attention When text is copied and pasted into the content editor, the copied text will include the HTML/CSS code from the copied source (for example: font, sizes, colors, ranked lists and any other settings that apply to the copied text in the software or website). Text pasted in this way may affect the visibility of the entire form and will affect the display of the text in the paragraph to the end user. It is required to make sure that the display is correct in the form shown to the client and not only the representative’s screen. Text should be pasted as plain text, and adjustments should be made in the content editor as needed. File Upload This control allows uploading files of any type, unless limited by file type. Types and Validation File nameAt the end of the process, the agent gets the uploaded file copy by mail. You can set here a meaningful name for this file, for example “Israel_Israeli_Photo_Document_01234”. You can also add values from the form input fields for the file name by using the “@” character with an ID of a form controller , for example @account_number. On a case that the file name uses an input from the form and this input was not entered, it will use a random file name.If you won’t set anything here, the system will generate a random file name for you.*Important: You cannot set the same file name for more then one upload file controller on the same template.Accept file typesA file upload controller will accept the following file types by default: “pdf, doc, docx, xls, xlsx, ppt, zip, txt”. It can be overwritten by entering the file types to the field.For more information about default file types see “Session settings” under Project.Add file to client email at the end of the processWhen switched on, attachment will be added to client email. Attachment is added to client regardless of the control permission. For example a Workflow where a file upload control is permitted to only one client and not the other, event than the other client will also receive the attachment in email.Default is false (not attached to client email)Maximum file sizeThe default is 1MB, maximum possible size: 5MB. Style In the Style tab, you can select the “Display button” option to show a different appearance of the controller. When the check box is selected the file cannot be downloaded or shown. Default is unselected. The example of the “File Upload” controller, when the “Display button” option is selected: The example of the “File Upload” controller, when the “Display button” option is unselected: Note: Only 8 characters of the file name including the file extension will be shown. Client with both Show and Edit permissions will be able to download the file or delete the file if needed. Conditional permissions When checking conditions on a file upload controller, the following options are displayed: EmptyIf the file upload controller has no file uploaded.Not EmptyIf there is any file uploaded in the controller. Image Upload This controller allows uploading image files only. On a desktop computer, the default is to open browser to select a file. On tablets and smart phones, uploading a photo will usually open the camera or gallery by default, depending on the type of device and its configuration [there is not always control over this]. Types and Validation File nameAt the end of the process and sending copies by email, the file name can be converted to a meaningful name, for example “Israel_Israeli_Photo_Document_01234”. Insert text or select values from the input fields by typing the “@” character.In case that the file name uses an input from the form and this input was not entered, it will use a random file name.If you won’t set anything here, the system will generate a random file name for you.*Important: You cannot set the same file name for more then one image upload controller on the same template.Convert image to PDFWhen set to ON, an image file will be converted to a PDF file, so in archival and sending copies the file will be sent as PDF and not as an image.Copy from clipboardWhen set to ON, it allows the client to paste an image from the clipboard into the field. Usually important for salespeople who want to upload a picture or an Excel table into the form.Add file to client email at the end of the processWhen switched on, attachment will be added to client email. Attachment is added to client regardless of the control permission. For example a Workflow where a file upload control is permitted to only one client and not the other, event than the other client will also receive the attachment in email.Default is false (not attached to client email)StyleInsert image in result documentIn PDF template enable embedding uploaded image into the PDF result produced in Cellosign. The image is embedded only on the result and not during the image collection (when form is processed by the end user). Make sure to add “Accessibility value” that will be embedded to PDF markup.Convert Image to DataOCR can be used to load the uploaded image and get back data structures from the certificate. For details see the OCR guide. Conditional permissions When checking conditions on the image upload controller, the following options are displayed: EmptyIf the image upload controller has no image uploaded.Not EmptyIf there is any image uploaded in the controller. Style In the Style tab, you can select the “Display button” option to show a different appearance of the controller. When the check box is selected the file cannot be downloaded or shown. Default is unselected. The example of the “Image Upload” controller, when the “Display button” option is selected: The example of the “Image Upload” controller, when the “Display button” option is unselected: Note: Only 8 characters of the image name including the file extension will be shown. Client with both Show and Edit permissions will be able to open the image for preview or delete the image if needed. Client with only Show permissions will be able to open the image for preview without deleting: Note: The orientation of the image taken with a mobile device can be different from device to device and will change according to the mobile settings. Archive In the HTML template the uploaded image will be shown as part of the final PDF file for both the client and the agent. In addition, the agent will receive the uploaded image as an attachment in the archive email. In PDF template the final PDF file will be sent without the uploaded image by default. Follow these steps ff you require that the image will be embedded inside the PDF as well: After adding image control, Switch to pane “In template” Drag your control onto the PDF layout Resize the container as needed Turn “Insert image in result document” on Only the agent will receive the image as an attachment in the archive email. Image Values & Display This control allows adding an image to the form. Image uploadPress the “Choose file” button and upload the file to the controller. It is recommended that the file size does not exceed a few KB.Accessibility valueTo comply with the accessibility directive, enter a value to the “Accessibility value” field. Developer In case the image is not displayed correctly on different phone screens go to the Stylesheet option under the Configuration tab and add the following code: .logo img { width:100%!important; max-width: 100% !important;} Then go to the image controller in the template, open the Developer tab and add the tag name (in our case it is “logo”). For more information about the Stylesheet click here. Drawing Values & Display Image uploadIt is possible to upload an image to the drawing controller. Press “Choose file” button and select the file location. Style Pen colorIt is possible to set the pen color by selecting the color from the palette. Draw control notes Be advised that draw control has no validation rule. If “Required” is checked, we will validate that the client has clicked the control and canvas is displayed. Control is not checking if any drawing was actually made. Auto Date An automatic date controller is not displayed on the form to the person filling out the form. It is generated when the signed file is produced to document the time the form was sent. Basic settings Make sure the “Show” option is set to ON in Basic settings tab: In the template that includes workflow make sure to set both “Show” and “Edit” options in order to set date time specific to that recipient submission. In case “Show” and “Edit” are checked for all recipients, the value will be as the last recipient submitted the form. Notes It is not possible to set conditional permissions and conditional values on the automatic date controller. When you click “Save”, the template editor will open. Types and validation Select date formats FormatPossible valuesdd/mm/yyyy28/02/2022mm/dd/yyyy02/28/2022dd MMM yyyy02 FEB 2022yyyy 2025MMMOctobermm11dd17 Controller group The Auto Date controller that belongs to the group will have only the label and the description parameters in the Basic settings tab. All the other parameters should be defined as part of the group. Example of the Auto Date controller that belongs to the group: Example of the Auto Date controller that does not belong to the group: For more information about the Controller group click here. Button A button controller is used for integrations with external web services. For more information about template integrations read here. Values & Display It is possible to change the default button name under “Values & Display” section. Location Location element provides the ability to collect client Geo-location, that is the latitude and longitude coordinates that represents a geographic position. Activating Geo-location elements requires some preparations in advance: Availability of maps feature. This feature is not bundled with the basic package and requires activation Availability of Google maps API token to access maps services Getting token from Google maps API See this following documentation to acquire Google’s API token At the end of the process you should have an API token from this screen Creating Google maps connector Login to template you wish to add location Geo-coder Click Integrations Click Connectors Click “Add Live Connector” Select “Maps” in source and “Google Map” in the subsequent dropdown Add API token and click verify. Note: Service will be available only after successful API activation Check “Apply Geo coding” in case you wish user will be able to enter and search location manually Setting up location field To setup location field, simply drag and drop location fields onto HTML template. Note: It is advised that the location field will be added to at full row width or at least 1/2 row width. On 1/3 row width the map might be too small for Desktop users in case the screen resolution is low. Check “Display Map on final PDF result” if you require that the map with it’s selected location marker will be displayed on PDF for archive Check “Display Location coordinates [longitude/latitude] on final PDF result” if you require that the coordinates will be displayed on PDF for archive Security and permissions Cellosign location field is executed on top of Google Map API and the browser. Since collection of Geographic location is a sensitive information, the client (user) will have to provide permissions to collect data. Permissions are granted on a browser level, it’s not Cellosign or Google authority to request for permissions. Only after permissions were granted than Google map may inquire for Geo location position.In case you require the extra mile for permissions, you may affirm location functionality all together by connect it to a dependency that requires client consent. For example, setup a location field with default display off. Connect the location element to a checkbox that reads client consent to collect location data. Activate the location only if consent provided. In case that the client does not provide consent to automatically detect Geo location, he can still search or browse his location on top of the map. For security reasons, co-browsing agent does not have write permissions on location field. API On a Webhook API location field will provide data in the following format “value” represents latitude and longitude that was geocoded “meta” > “geocoder” incorporates full address as it is available from Google maps API. { "id": "SOMEFIELD5", "value": "32.001186,34.9413393", "top": 65.91806722689076, "left": 8.194774346793352, "width": 28.8781512605042, "height": 2.048693586698337, "page": 0, "type": "location", "visible": true, "meta": { "geocoder": "Arlozorov St 160, Tel Aviv-Yafo, Israel" } } Notes and Gotchas 1. Location data is considered highly sensitive according to GDPR. As such it is advised to use location on templates with single recipient, without workflows. If you decided to use location control on multi recipient template be aware that location data is only available for PDF and API at the end of the process for the last recipient only. Data from previous recipients is not exposed. Table Table is a read only element that can be applied to HTML forms. Table can be populated with data through an API or by Lookup Connector (fetching from remote source such as database or Salesforce application). How to implement a table? In template studio, grab Table element from the right pane and drag it into the form. It’s recommended that a table will be applied to full width column. To setup a table click on the Values and Display tab and apply columns to table. In this example we are constructing a table for Orders that will have columns: Order ID, Name, Amount and Shipped. Configuration Table column configuration includes the following attributes: Column headingColumn heading textDefault valueDefault value in case cell does not include dataHiddenHide or show columnWidth %Width in %, out of 100% for the entire tablePrefixPrefix value for cell in case text applied to cellSuffixSuffix value for cell in case text applied to cellAlignAlignment: Auto [Based on language], Right, left, center or justified Apply footer row Check “Apply footer row” at the bottom. Checking it will open two additional columns to the table above: “Footer type” and “Footer value”. Use footer type “Text” to add textual value to footer Use “Sum” to calculate the values from column above “Sum” function will calculate the column above given that the values are numeric or blank only. If one of the values is a letter, a SUM result will not be displayed. Value precision (decimal point) is not rounded and will display the SUM value with comma separator and result precision. Design For table design, click on Design tab and check design settings. “Add numbering” will add ordered numbers to table rows automatically. BorderedDisplay table borders. StripedSeparate odd/even rows by background colorsHoverNumberingAutomatically add sequence number to each rowFont sizeControl Cells font size in %, relative to default fontCell padding top-bottomPad Table cells top and bottomCell padding left-rightPad Table cells left and right For table design, click on Design tab and check design settings. “Add numbering” will add ordered numbers to table rows automatically. Now that table configuration is done, let’s see how to populate it with data. Collapsed design option It is advised to use collapsed option when table is over 6 columns, other part of the table might exceed the page and will not be displayed. Please test your configuration prior to deployment in production. Known issue for rendering to PDF: Wrapping table border may exceed on page break Populate Table with an API Normally, when session is created via API, you are able to inject values into form fields. Table can also be populated with values by accepting Array of Arrays. In this example we will inject data into orders table. We have configured a four columns table: Order ID, Name, Amount and Shipped, so the value for inject could be as in this example: [ ["KL-12345-A","Disk on key Type-A","$15.23","Yes"], ["RR-87778-F","Wireless headset","","Yes"], ["JF-99087-D","Mechanic keyboard","$45.17","Yes"] ] Note that we have not included Amount on the second row. This should be populated by the default value. For security reasons, you will need to Stringify this value, so eventually injecting table dataset to API should look like the following: { "template": { "id": "your-template-id" }, "initial": { "Orders": "[[\"KL-12345-A\",\"Disk on key Type-A\",\"$15.23\",\"Yes\"],[\"RR-87778-F\",\"Wireless headset\",\"\",\"Yes\"],[\"JF-99087-D\",\"Mechanic keyboard\",\"$45.17\",\"Yes\"]]" } } Inside the form our table will be displayed like so: Populate a Table via Connector Populating a table with a connector is more flexible then populating with an API. With connectors, tables can be populated dynamically with real time data from your database and also in response to user engagement with the form. For example, lets assume that on our Salesforce application we have Account table Contact table. Each Account may have one or more contacts. We would like to display list of contacts per account. **** and remote client will insert his Account ID, in return orders table will be populated automatically with open orders. when clicking on an order row, a subsequent table or set of fields will display the order items for further engagement.**** Let’s see how this is done. First we need to configure a table. Same as above, for API that includes contact name, phone and mailing address Next. On template studio, click on Integrations, then Connectors. (See reference for connectors for more details) Let’s add a LIVE connector that would lookup on Contacts object. Note that we have configured “Select multiple records” when query result yields more than one record. In this case we want to apply multiple records to the table. Note that lookup is triggered when user “Change” account ID field, in response “Contacts” table in form will be populated with values from “Contacts” table. When Form field of type “Table” is selected for mapping, the connector will display the entire column set for mapping. Notes Make sure to build your table with minimal columns, otherwise the reminder of your table may end up with not visible both on form and PDF result. Header and Footer row are not archived back and will displayed only on the result PDF. Payment In order to apply a payment controller in a template first of all need to define payment integration under the Integrations screen. For more information about the payment integration click here. Developer Under the Developer tab of the payment controller you can map data fields returning from provider to Fields in Cellosign form. Note: Make sure not to disclose tokens and other confidential data. Either hide them from viewer or be ready to accept them on Archive API. Payment IntegrationSelect a valid payment integration created in the Integrations screen. Transaction TypeSelect the transaction type: Debit or Recurring Debit.Select the amount input fieldSelect the field from the template where the amount of the payment will be added.Note: without the amount value the payment window will not open.You can set a default value for this field, or alternatively it can be filled in by the agent when sharing the screen with the client.The field can be hidden, and it still will be the amount of transaction.Source and Target tableYou can select fields in the template and connect them to the data returned from the payment interface. For example: last 4 digits of the credit card, card validity date, credit card type, etc.In the “Source” column, enter the name of the required data to be retrieved from the payment interface. You must choose the name of the item as it appears at the checkout (for example: card_no)Select the field in the template that will receive the information item (for example: cardNumber) See below the example of the payment controller mapping: The following parameters can be returned from the payment interface and mapped to the template fields: card_expirationExpiration date of the credit cardcguidUnique identifier of the transactioncard_noCredit card numbercard_maskCredit card maskcard_nameCredit card owner namecard_brandBrand of the credit cardcard_aquirerAcquirer of the credit cardcredit_companyCredit card companyclub_idClub ID of the credit cardclub_codeClub code of the credit cardcurrencyCurrency of the transactiontotalTotal amount of the transaction life_styleIs the card is of Life Style typeauth_numberAuthorization number of the transactionpersonal_idPersonal ID of the card ownerblocked_cardWhether the card is blocked verify_error_codeValue of “result” tag. Typically if this result is diferent then “000” there is an errorverify_error_descriptionValue of “message” tag. Typically has value when result is not equal to “000” All the data returned from the payment interface will be archived in the meta_file.json upon the form submission. Values & Display It is possible to change the default payment button name under “Values & Display” section.
Client entered the form, started filling in details and then the form disappeared. What to do? The definition of the length of time in which a form can be filled out or a business process can be completed in Cellosign is determined by the implementer of the form, according to the definitions and needs of the organization. The default form availability for a client is 48 hours, however for various reasons such as a time limit or on the other hand a complex form that requires complex input of fields and attachments, it is possible to extend or shorten the time that the form will be available for the client. Every time we send a form to the customer, we send a unique link. If the defined period of time has passed, the form will no longer be available and it is required to send the form one more time, by sending a new unique link. If the expiration of the form has not passed, the client should enter the same link again, and continue until the end of the process. All the details entered by the client and/or the agent will be saved in the form, until the end of the availability period of the form. For more information about the expiration of the form read here. If the expiration of the form has not passed, however the customer clicked the link again and the form still did not open, please contact Cellosign support to check or restore the form.
Controller editor In this section we will describe possible options for all controllers. For additional options for a specific controller see “Controller types“. Basic options # Controller identifierWhen adding a controller to the template, a new value is provided automatically by the system. Change the value if there is a need for integration between the operating system and the Cellosign application. In this case the controller will receive the value that will be injected into the form and Cellosign will compile the data back to the operating system with the same identifier. For more details see “Integrations”.LabelThe title of the field. This is the main instruction for filling out the field in the form. In order for the form to be accessible, a clear explanation of the field purpose must be entered. See more accessibility guidelines here.DescriptionAdditional explanation that appears under the controller.RequiredIf set to ON, the system will check that the field has a valid value when submitting the form.ShowWhether to show the field or not. Usually used together with dependencies when, for example: the field is intended for entering a TIN number and it will be hidden when the customer type is a company and displayed when it is an authorized dealer type. In this case it is recommended to set the parameter to OFF. See more details in the dependencies section below.Agent AllowedWhether the agent is allowed to edit the field in the form or not. If not, the field will be set to read-only for the agent.Client AllowedWhether the client (recipient) is allowed to edit the field in the form or not. If not, the field will be set to read-only for the client. Values & Display The options in the tab allow you to enter values for the controller according to the type of controller. For each controller its related collection of options will be shown, like list values, etc. See “Controller types” page for detailed information. Field clone allows copying the value to a field from another input field. It is recommended to use when the customer has already filled in his name at the beginning of the form. Control specific settingsSee control specific documentation for available features in this tabShow clear buttonsAllows adding the clear button [x] in the field for the client with editing permissions. Types and Validation This tab includes options for data validation and possible input types for each controller. For example, in a signature field we can choose whether it is a signature and a company seal; in a text field we can limit the number of characters to a minimum and maximum. Error Message InvalidIf an invalid value is entered, the form will notify the client by default according to the control type, for example “Data is invalid”. Insert an error message that will be displayed instead of the default.Error if no value enteredIf no value was entered to the field, the form will notify the client by default according to the type of controller, for example “Missing signature”. Insert an error message that will be displayed instead of the default. Conditional permissions This tab allows you alter user permissions given a set of conditions. For example field will be required if a client is of “Business type”. To add a dependency, click the “Add Dependency” button. Select the behaviour of the control as result of the dependency: ShowIf the dependency is met the controller will be shown/hidden to the user.RequiredIf the dependency is met the controller will be mandatory or optional.EditIf the dependency is met the controller will be in edit mode [read/write] or read only. To add condition[s] for the dependency, click the “Add Condition” button. Select the controller on which the condition will be applied and the values on which the condition will be applied. If two or more conditions are added, the dependency will only be activated if they are all met [AND]. You can add more than one dependency, all the dependencies are related to each other. The dependency that will be activated is the one that meets all the dependency conditions. Note that the first condition met will trigger the permissions. This pane allow you to reorder the permissions order with drag and drop. Conditional values This tab enables you to carry out the following settings: Clone. If assigned value as clone of another field than its value will be fetched from the field it’s pointing at. This is very useful in cases where client name needs to be collected once and paste in multiple positions. In case clone is not defined then you are able to set default value or conditional value with this pane. Default value. Set up a value for the form control that will be propagated into the control whenever new session is created Conditional value. Similar to above conditional permissions you may query other form controls and based on that set up a new value to form control. Conditional value supports: concatenation of strings and arithmetic calculations. For instance This value “=OrderSum * 0.17” will search for a value in control “OrderSum” multiply it with “0.17” and return round up number. Arithmetic are always rounded. Thus value “=textA textB 123” will concatenate values in textA, textB (given that these are form controls, if not textA and textB will be added as plain text) and append to it “ABC” given that this is not a form control. Note that the first condition met will trigger the permissions. This pane allow you to reorder the permissions order with drag and drop. Style All the options in Style tab are to design the controller, such as the Background color of the field and the Font color and choosing an icon to be attached to the field. In order for the form to comply with the accessibility standard, it is recommended not to edit and use background colors for fields and fonts and to use only the design of the template to select colors. Developer In this tab there are additional options for developers: Regex ValidationCorrectness verification in Javascript flavour. It is recommended to check the token of the regex on sites specializing in regex.CLASSAdding tags of type CLASS. The tags are attached to the input field in the HTML form in order to activate CSS and Javascript adapted to the form. See more details in Javascript under Configuration. Built-in classes pdf_hiddenHide field on PDF generation In the HTML template only it is possible to hide any specific controllers from the preview and the final PDF by adding “pdf_hidden” class under the Developer tab. In this case fields with pdf_hidden class will be shown in client’s form to add the values and complete the form. But they will not be shown in the preview and in the final PDF after submission. For more information about the HTML template click here. remove-clearPerform “page-break-inside: auto” on row. Use this class in the section settings when need to remove irrelevant blank spaces in the final PDF.
Client sent the form, but the form did not reach my email. What to do? In this case there can be several options. The first and most common possibility is that the customer did not actually complete the form submission process. To verify that the client has indeed sent the form, check in the Processes screen, under “Submitted” column. If no information (date and time) appears under “Submitted” column, it can be concluded that the client did not complete the process of sending the form at all, and therefore the form was not received by email. See the image below. A second option is when the information appears under “Submitted” column, meaning that the customer did send the form. Please check that the email was not received in spam or another folder. If an email was not received in spam or other folders, then the next option is to check in the application of the form. In the process of creating the digital form, you can choose with each sending of the form who will receive a signed copy. Often the reason why a form does not reach the email is that the definition has been changed to another email or there is “no email” defined. If this option has also been checked and rejected like all the other options, please contact Cellosign support to check or restore the form.
How do I know that the client has opened the form? There are three ways to check if the client has opened the form: Verification from Dashboard. Verification from Processes screen. Verification online from the Show Agent screen. Verification from Dashboard In Dashboard screen there is a section called “Viewed” where you can see all the forms that were viewed by clients in last 24 hours. In addition, in all the other sections there is a column “Viewed”, that is automatically updated with the date and time details once the client opened the form. For more information about Dashboard read here. Verification from Processes screen There is another way to check if a client has opened the form, for any user with agent or project manager permissions. In Processes screen there is a column with the title “Client logged in” and there you can check last date and time the client opened the form. For more information about Processes window read here. Verification online A representative from the organization works in screen sharing with a remote person online. The work is done on top of Show Agent interface. Once the client opens the form the green indicator will appear at the bottom of the screen at the agent side for a short time. For more information about Show Agent read here.
Controller group It is possible to create a group of controllers with the same basic settings and conditional permissions. In order to create the group, go to the Control Group tab, under the template editor, and press the “Add Group” button. Press the Edit button and add the group name. Click on the controllers in the template to be added to the same group. They will be marked in green, and will be shown under the group in the right pane. Press the Settings button and add the basic settings and the conditional permissions that will be applied to all of the controllers in the same group. In the example below the fields ID, Email, Phone and Signature will be shown to the client and will be required and editable only when the check box is selected and the Full name is not empty. Client side before the conditions are met: Client side after the conditions are met: Note: the controller that belongs to the group will have only the label and the description parameters in the Basic settings tab. Also Conditional Permissions and Conditional values tabs will not appear. They should be defined as part of the group. Example of the Text controller that belongs to the group: Example of the Text controller that does not belong to the group: To remove the controller from the group, click on it in the template or use the trash button. The green mark will be removed from the field and it will not be shown under the group in the right pane. Note: the controllers that have been removed from the group would keep the definitions of the group after it has been deleted. In order to change or remove those definitions you would need to do it manually.
Design The Design tab is divided into two parts. It is possible to choose the design that is already ready for you or to set your own style for each component in the form. Part of the parameters are available only in HTML form or HTML combined with PDF. Page design Page backgroundSelect the page background color from the palette. Additional backgrounds and designs can be applied by using CSS. See more details in “Javascript” and “Stylesheet” sections.Page Background imageSelect the background image for the page. Additional backgrounds and designs can be applied by using CSS. See more details in “Javascript” and “Stylesheet” sections. Form design Form Background ColorSelect the form background color from the palette.Default: #ffffffForm Background OpacitySelect the form background opacity: 1 is most transparent, 10 is not transparent.Show table of pagesWhen selected the table of pages with the number of fields to complete will be shown at the client side.Show template name on HeaderWhen selected the template name will be added to the form header.Text colorSelect the color for all the texts appearing in the form. Default: #555555Titles colorSelect the color for all the titles appearing in the form. The landing and the final pages get the color of the titles from this element.Default: #555555 Buttons design Buttons Background ColorSelect the buttons background color from the palette (see example).Default: #eeeeeeButtons colorSelect the buttons text color from the palette (see example).Default: #555555 Buttons design settings will be applied to all types of buttons in the form, including navigation buttons, radio buttons and check boxes. See below the example of controllers according to the design: Controllers Icons colorSelect the icon color of the controller (see example).Input background colorSelect the background color of the input field.Default Input bordersSelect the border color of the input field (see example).See “Full input border” parameter for more information about full border.Default: #555555Input borders selectedSelect the border color of the input field when the field is selected by the user.Default: #555555Labels backgroundSelect the color of the fields labels background (see example). Labels colorSelect the color of the fields labels text. See “Mandatory fields titles in red” parameter for more information about mandatory fields.Mandatory fields titles in red (Accessibility)When selected the labels of mandatory fields will appear in red and override the defaults.Default: UnselectedFull input borderWhen unselected only the lower border will be shown in the input field.When selected the input field will be shown with the full border and “Border Radius” field will appear to select the radius value.Default: UnselectedStatic labelsWhen selected the field label will be fixed above the input field even when there is no content in it (see example).Default: UnselectedFontSelect the text font from the list. The font style will be applied to all the texts appearing in the form. Default: OpenSansHebrew Note: Error messages will always appear in red. PDF form design PDF font sizeSelect the font size in the signed document. Sometimes an additional control of the font size is required. It is recommended to use the default.Default: MediumPDF font colorSelect the font color in the signed document. Default: BluePDF bordersSelect the frames color for the for all the columns in the form. Relevant for HTML format only. It is recommended to leave frames without color. It is possible to select the completed design from the “Custom theme” tab.
How do I know that the client has submitted the form? There are three ways to check if the client has submitted the form: Verification from Dashboard. Verification from Processes screen. Verification online from the Show Agent screen. Verification from Dashboard In Dashboard screen there is a section called “Submitted” where you can see all the forms that were submitted by clients in last 24 hours. For more information about Dashboard interface read here. Verification from Processes screen There is another way to check if a client has submitted the form, for any user with agent or project manager permissions. In Processes screen there is a column with the title “Submitted” and there you can check date and time when the client submitted the form. For more information about Processes interface read here. Verification online A representative from the organization works in screen sharing with a remote person online. The work is done on top of Show Agent interface. At the end of the process after the client completed and submitted the form the green indicator will appear at the bottom of the screen at the agent side for a short time. For more information about Show Agent interface read here.
Client clicks the form link, but the form does not exist. What to do? First, check that the client is properly connected to the Internet. Then check the time settings of the form. Every time we send a form to the client, we send a unique link that is valid for a certain period of time determined by the implementer of the form, according to the definitions and needs of the organization. For more information about the expiration of the form read here. If the defined period of time has passed, the form will no longer be available and it will be necessary to send the form one more time, by sending a new unique link. If the expiration of the form has not passed, please contact Cellosign support to check or restore the form.
Configuration Configuration of the template includes the following tabs: Basic configuration: show form before submission, text for general buttons, categories for the template, etc. Messages & Reminders: client messages that go out of the application, text messages and emails throughout the life cycle of the form. Workflow: multiple recipients workflow, definition of different roles in the form while everyone can have a different experience. Templates sequence: definition of a triggering action (sending another form) when this form is sent by the client. Javascript & Stylesheet: options for developers [Extensions]. Errors: definition of custom error messages. Custom PDF template: definition of a unique header and footer for PDF final form. Articles Basic Messages & Reminders Workflow Templates Sequence Javascript Stylesheet Errors Custom PDF template Basic HTML and Hybrid template Show form before submissionWhen selected will allow the end user to view the details of the form in final PDF format before submission.Use this option if there is a legal obligation to show the client the form (usually statutory) before sending.Default: UnselectedPost form button textAllows to enter different text for the submit button in the form. Default: Submit FormNext page button textAllows to enter different text for the next button in the form. Default: NextPrevious page button textAllows to enter different text for the previous button in the form. Default: PrevSelect or enter new tagAllows to select an existing tag or enter a new tag. Entering tags in this field will display the tags in the “Templates” screen. So that it will be possible to search by tag and to view all templates with the same [one or more] tags. CategoriesAllows to associate a template with an existing category. For more information see “Categories” section. PDF template Post signed PDF to clientWhen selected will allow the end user to enter a valid email address in order to receive a signed copy of the document. Default: UnselectedMandatoryAppears when “Post signed PDF to client” checkbox is selected.When selected will require the end user to enter an email address in order to send the form.Default: UnselectedSelect or enter new tagAllows to select an existing tag or enter a new tag. Entering tags in this field will display the tags in the “Templates” screen. So that it will be possible to search by tag and to view all templates with the same [one or more] tags. CategoriesAllows to associate a template with an existing category. For more information see “Categories” section. See below an example of selected “Post signed PDF to client” field in the form: Client forms configurations OptionDescriptionAppearance OrderSet order of transaction appearance in client forms. Inputr accept number between 1 to 100. The lower the number is it will be displayed higher in the list of transactions.IconSet Icon for button that opens the transactionIcon/Button textSet text to button that opens the transaction Messages & Reminders Email address to post when process is completeAdd in this field permanent email addresses to which a copy will be sent at the end of the process.Description Description of the template in the dashboard screens. The text can contain dynamic data from the form. Click “@” to select an input field.Date filter Select a field from the form to display in the dashboard screens.SMS text message when open a linkText that will appear in the phone message to open the form. A link will be automatically added to the text.SMS text when process is completeA text message that will be sent to the client at the end of the process. Click @ to select an input field from the form. So the message to be sent can contain personal data such as: “Hello Israel, we received the form…”.Select SMS destinationSelect the destination of the SMS that will be sent at the end of the process, based on the data from the form.Default: Current destinationInvitation Email subjectText that will appear in the email subject to open the form.Invitation email bodyText that will appear in the body of the email to open the form.Email subject for copyText that will appear in the email subject at the end of the process (copy to the client). The text can contain dynamic data from the form. Click “@” to select an input field.Email body for copyText that will appear in the body of the email that will be sent as a copy to the client at the end of the process (signed copy).Signed PDF file nameThe name of a PDF file that will be sent as a signed copy at the end of the process. The name can contain dynamic data from the form. Click “@” to select an input field. A “#timestamp” tag can be added to the filename to make it unique.Default: signed.pdfRemind about the expiration of the formWhen set to ON the client will get a reminder about the expiration of the form.Default: OFFSend with linkWhen set to ON the reminder will be sent with the form link.Default: ONRemind before (minutes)The time when the reminder will be sent, will be calculated from the Expiration time. Default: 15DestinationThe destination of the reminder message.Default: CurrentReminder textText that will appear in the reminder message.Export XLSXWhen set to ON the XLSX file will be sent in addition to the JSON file in the signed copy email at the end of the process.Default: OFFExport data to archive emailWhen set to ON the input data from the form will be exported to the archive email.Default: OFFTitle tableTitle of the exported data table in the archive email.Select fields to displaySelect the fields to be exported to archive email.Recipient targetSelect the recipient of the exported data: agent, client or both.Default: BothShow empty fieldsWhen set to ON empty fields will be shown in the exported data table in the archive email. Workflow In order to describe the workflow screen, consider the process of joining a new client when the joining details have to be validated by a representative in your organization (agent). When the details are incorrect or incomplete (for example: no appropriate power of attorney is attached) the agent can return the form to the client with notes. A recipient has a role in filling out the form: in the above example, the client and the agent both have roles. A person in the role of filling out the form can be a customer, a representative in the organization, an authorized signer, or the spouse of a main signer whose approval/signature is needed. Defining a role in the template enables the following capabilities: Application of a template in such a way that each role will have its permissions at the viewing and updating level, so for example we would like the client to have the option to type in an ID number and type of requested service, and the agent will only have the option to view the data without updating. Automatic sending of actions according to the sequence defined in the workflow screen and according to the conditions. Cellosign process engine makes it possible to produce more complex process logic than automatic sending, but still use the recipient’s application settings and especially the permissions provided to each recipient. Turn workflow onWhen selected the workflow will be created and each recipient will be able to fill only his designated fields.Recipient nameA name that will represent the recipient’s role.Submit orderThe form will be sent to the recipients according to the order defined in the workflow.Default userAn email address of a user in the application to whom an action will be sent. Usually this is a regular user to whom a sequence of actions reaches.Allow recipient enter address of next recipientIn some cases, we will not know the target for the next action in the sequence, such as a spouse who must also approve the form. In this field we select the input field from the form from which the value will be drawn to send to this role holder.Requires authenticationWhen selected the recipient will get a login screen to enter the application in order to verify that it is an authorized user.Activate OTPWhen selected the recipient will get one-time code to the selected destination in order to enter the application.Require passwordSelect one of the form fields as password, so only an authorized recipient will be able to enter the form by entering correct data.Read onlyWhen activated, client will not be able to submit the session. Session will be expired as usual. Make sure to use on a single session configuration or with BPMN. Note that it does not make sense to use it with a regular workflow unless the only last recipient is read only.Add RecipientClick “Add Recipient” button to add as many recipients as needed.Delete RecipientClick “Delete Recipient” button to delete recipients. Workflow conditions At the bottom of the recipients screen it is possible to add conditions in the sequence of recipients, so for example we can create an action that returns the form from the client to the agent in case the agent does not confirm the completeness of the details in the form. Select the recipient that forwards the action. Select the recipient to whom the action will go. Select the input field for the condition and its value. In the example above you can see that if the checkbox field is not selected, the action will go from the agent back to the client until it is checked. Recipients and their influence on controllers defined in the template In the example above there are two roles client and sales representative. We would like to allow the client to edit the full name field and for the sales representative to only view it and not edit it. The lower part of the controller settings is intended for appearance on the recipients’ screen: set “Show” ON for the recipients that are allowed to see the field data and “Edit” ON for the recipients that are allowed to edit the field data. Note: Regarding the “Agent Allowed” controller settings, this option is intended for a screen sharing operation and is not relevant for operations between recipients. Recipients and their influence on controllers’ dependencies In the example above we will activate show\required\enabled for the client only if a certain condition has been activated [in this example a value selected from the radio buttons list]. Dependencies can be activated for all recipients by selecting “All recipients”. Notes and Gotchas Workflow is limited to 10 recipients. In case you need to deploy a process that include more than 10 recipients you may add recipients in workflow pane, however the business process must be conducted using the BPM. Templates Sequence To explain the sequence of actions, consider the following example: a representative in the human resources department recruits a new employee for the position of software developer and a laptop should be issued for him. Upon sending the employee intake form, we can use this screen to send a form to an IT representative in the organization only if a certain condition is met. In such a way the data from form A will be transferred to form B without the need for additional typing. If so, form A is the form where we use templates sequence. To activate the option of templates sequence, click on “+New”. Template NameSelect a template from the list [in our example the template to send to the IT representative].Select destinationSelect destination address to which the form will be sent: – A value from an existing field in the form, a phone number or email. – Current destination: the destination to which the current form was sent, a phone number or email [in our example, the new employee procedure form]. – No destination: usually implemented by an application for field personnel.Select conditionSelect the condition (input field), if any, to activate the additional template. This field is not mandatory, so if the operation condition is not selected, it will be sent unconditionally.If equalIf the condition is selected, select the value that will be applied to the condition. In the example above, a condition will be applied to the field “Position” and the value “Programmer”. In this way we activate an additional form that will be sent to the IT representative, only if a candidate has been accepted for a programmer position. A new templates sequence can be added according to need, in a way that a separate form can reach the payroll department, etc. Note: In order for data from form A to be transferred to form B, it should be maintained that the IDs of the controllers have the same value. Javascript This option is under deprecation and it is disabled on new projects. Be advised that templates that include Javascript are not supported and you may also expect errors when imitating from an API. A template editor comes with the option of customizing CSS and JAVASCRIPT. Note: Templates that contain CSS and JAVASCRIPT code are not supported as part of the service’s maintenance and support. Javascript component in the template can be used to generate various events: for example, integration with analytics systems for the purpose of measuring events. Cellosign includes a test option when sending the form that does not depend on the out-of-the-box application, so it is possible, for example, to validate some data before sending the form. To activate this validation, create a “custom_submit” function in the Javascript panel of the template editor to generate a relevant error message and return true or false, so the process of sending the form will stop. As noted in the Stylesheet, CLASS or ID elements can be used at the controller level. It is recommended to use native Javascript. Note: each textual controller includes an option for REGEX Validation, so it can be used at the controller level without code. For more information see “Controller editor”. Stylesheet A template editor comes with the option of customizing CSS and JAVASCRIPT. It is allowed to use these options with caution and after performing the required comprehensive tests. Note: Templates that contain CSS and JAVASCRIPT code are not supported as part of the service’s maintenance and support Cellosign contains an option to produce CLASS (plural) in the elements: page, section and controller. Also, each controller includes a unique ID for which a CSS tag can be created. Since Cellosign forms come by standard with accessibility components, to use CSS with caution to avoid overriding existing accessibility functionality. For more details see “Accessibility” section. Additional highlights: Background images, icons, and media: It is allowed to load different backgrounds as “background-image” in CSS with a path to an external source, or use icons from an external source, but emphasis should be placed on the issue of copyright. It is not recommended to use a font face that is not part of the design content. Cellosign is served in a Bootstrap grid layout, it is recommended to generate CSS code in this framework. Errors Custom errorDescriptionError when OCR failsOverride default error messsage when OCR module fail to parse uploaded imageAlready sent errorCustom error when client try to post a token that is already submitted.Error messages when malware detected on file uploadOverride default error when file from cleansing returns “malware detected”. Note: OTP error, API error and Wizard page error are obsolete and not in use. Custom PDF template In the HTML template it is possible to configure a unique header and footer for final PDF file under “Custom PDF template” section. Custom header configurationWhen set to ON header editor will be opened. Custom footer configurationWhen set to ON footer editor will be opened. Header and footer have the same editor settings and the description below is relevant to both of them. The editor supports different design tools such as: Text style, format and size Text and background color Bold, Italic, Underline Ranked and numbered lists including indents Direction and alignment of the text Links (website addresses / emails), etc You can enter directly in the content editor by writing texts. Placeholders Header and footer configuration can use dynamic content from the form and project dataset such as name, logo. Use the Placeholder button to attach values from project parameters, print parameters or template fields into header or footer. Barcode Use the Barcode button to add the barcode to header or footer based on the value of the selected source field from the template. Upload Image It is possible to use the project logo and the template image in header and footer or to upload your own image. When uploading the image first choose the file from the selected location. Then go to Advanced tab and set width, height and alignment settings. Preview Click the Preview button to see the example of the page with your header and footer configurations.
Information Security This chapter describes information security options in the template. Also, apart from the identification options shown in this chapter, there are additional security settings under Projects. For more information read here. Activate OTP Activating this option will generate a random 4-digit one-time password for entering the form by the person filling out the form. The password will be sent to the destination to which the action was sent. In case the operation cannot be sent through Cellosign in SMS or email, it is not possible to use the OTP. Default OTP validity is 5 minutes. Selecting the OTP option allows you to set a validity between one minute and 1440 minutes (which is a day). eIDAS The eIDAS standard implemented in the template generates a log of activity in the signature fields. Every event of signing or deleting a signature is saved in the system log and exported together with the results of the operation in an archive to email or to the core systems of your organization. The sample output below is a sample of a signature deletion event: Add browser timestamp to signature field When set to ON the timestamp of the browser will be added to signature field: Clone graphic signature for approval When set to ON it will use the last signature added by the customer and insert it into the signature field for the customer’s approval. Note: Although this is a signature that requires approval, it is recommended to consult the legal department to validate the solution of the process. Combining input fields from the form to the signature field In addition to a digital signature that is embedded in the product, it is also possible to embed input fields from the form into the signature field. In this way a signed document can be presented when the signature fields contain identifying details of the client. Require password When activated the client will be asked to fill in data that was inserted by the agent into the form, for example an ID Number. To activate this option, you must select an input field from the list of fields in the form. The field label will also serve as a guide to the client regarding what to type. Expiration in hours A working assumption is that a form contains sensitive information such as personal details, photographs of sensitive documents and signatures. Each operation has a predefined lifetime, according to the following hierarchy: At the project level: valid for 24 hours [1 day], unless otherwise applied. At the template level: valid for 48 hours by default. Valid values between 1 to 960 hours. This value overrides the project default. At the operation level [in integration only] that overrides all defaults. If the form is not sent by the client, the token [the unique link to the action] will be deleted automatically after the action is expired and will no longer be accessible. The message to the customer “404”. Additional parameters Initialize controls on form loadWhen set to ON will clear all values when client opens a form. (Pre-populated values will also be cleared).Collect geolocation dataWhen set to ON will collect geolocation data. Input validation Cellosign forms comprised of various input fields, images and datasets. Some of the inputs, such as paragraph may include rich text editor features as: html, css and javascripts. In order to secure your forms and restrict inputs it is advised to use the proper data types where needed. For example, use “Number” controls instead of plain “Text” fields to ensure that number value will be collected. Use “Email” for the same reason. In addition, Cellosign template studio include rich configuration to limit the allowed input values. For example Text field includes variety of configuration options to make sure that the right data is collected. In addition, you may also use REGEX to narrow down input options even further. Read only When activated, client will not be able to submit the session. Articles Safe Safe Select FieldsSelect input fields from the template to save.Select parametersSelect parameters to save. In the example below “Full name” and “ID” fields from the template and “”Parameter1” are saved. Analytics In the Analytics section, you can select these parameters in the filter and perform a search by a specific value. For more information see “Analytics” section. Processes In the Processes window saved parameters are shown under “Vault Parameters” section: It is recommended to change the ID of the saved parameter field to any clear and unique value before the run, so it will be easy to distinguish it from others. When exporting data to the Excel file saved parameters will be shown under “vault” column: For more information about “Processes” window read here.
Client could not enter data into a certain field. What to do? In Cellosign system it is possible to define permissions for each field separately, who is allowed to enter data into a certain field. Data can come from another system in the organization or can be entered by the agent or by the client or both, and so on. First, need to check with the form implementer that the client is allowed to enter data. See the image below. If it was defined that the client does not have permissions to enter data in a certain field, he will not succeed. It can be said that in most cases where a client will not be able to enter data into a certain field, the problem is in the permissions of the specific field. If the issue is checked by an implementer and indeed permission is given to the client and yet he is unable to enter data, apparently this is a malfunction. Please contact Cellosign support to check the form.
I exited the agent screen and I want to help the client to complete the form. What to do? Agent screen can be opened again from Processes interface, for any user with agent or project manager permissions. Press “+” next to the transaction that needs help: After it press “Show Agent” button to open the transaction from the agent side: For more information about Processes window read here.
Integrations Articles Archive Public link Connectors Archive Archive addressHeadersKey & Value Public link While running a public link the user will be asked to add a full name, email and mobile number. In Processes screen the template that was run from the public link will be shown with the agent name “public@cellosign.com”. It is possible to run the public link with predefined values of the full name, email and mobile number, as shown in the example below: https://form.cellosign.co/public/1234567890111222333444aa555bbb12?mobile_number=0500000000&fullname=israel&email=israel@example.com In this case all the related fields in the template should be defined with proper IDs (fullname, mobile_number and email). The values will be automatically added to the form and the connect window will not appear. For more information about templates click here. Connectors Connector is a method in Cellosign to interact with your core applications and databases. For more information see “Apps and databases connector” section.
How can I send a form to the client? There are several options to send a form in Cellosign application: From Show Agent screen. From Dashboard screen. From Templates screen. Send a form from the Show Agent screen Press the “Show Agent” button at the top of the screen and select a form from the list. Enter the client’s email address or mobile phone number at the top of the screen and press “Connect” button. At this point, when the client opens the link from the phone message or the email, you can both work together on the form. For more information about Show Agent read here. Send a form from the Dashboard panel There are two options to send a form from the Dashboard: Initiate New Process section. Select a form from the list and press Send. The template will be opened at the Agent screen. Add phone number of the client or email address where the client will be able to open the form and add the relevant details. Press “Connect” button to send the form to the client. Initiate Ad-Hoc Process section. Drag PDF file to the field or upload it by pressing “click here to upload” and selecting PDF file location. By pressing “Send” button the file will be opened at the Agent screen. Press “Add Fields” button to add controllers. Add phone number of the client or email address where the client will be able to open the form and press “Connect” button to send the form to the client. For more information about Dashboard read here. Send a form from the Templates screen Templates panel displays the list of templates related to the project. The page is accessible for users with “Project manager” and “Organization manager” permissions. Go to the Templates screen, select a form template from the list and click the template name. From the template toolbar press the “Show Agent” button to open the template in the Agent screen. For more information about Templates read here.
New Workflow Workflow window consists of the controllers list at the left side, workflow toolbar at the bottom and parameters editor at the right side. Workflow toolbar Start BPMN from chosen start pointPress the button to start the workflow from chosen start point.Save BPMNPress the button to save the workflow.Download an image of BPMNPress the button to download an image of the workflow. SVG file will be saved automatically in the computer location.Download a .json of BPMNPress the button to download a .json file of the workflow. JSON file will be saved automatically in the computer location.Backup whole processPress the button to download a .cellosign file of the whole process. Cellosign file will be saved automatically in the computer location.Delete BPMNPress the button to delete the workflow. Confirmation message will appear for approval.Reset zoomPress the button to perform zoom reset.Zoom inPress the button to perform zoom in.Zoom outPress the button to perform zoom out. Controllers Controllers allow to create the workflow with different forms, messages, dependencies and tasks. See below the explanation of each controller. Activate the hand toolUse this controller to activate the hand tool and move the whole workflow.Activate the lasso toolUse this controller to activate the lasso tool in order to mark a part of the workflow and move it to another place.Activate the create/remove space toolUse this controller to activate the space tool in order to add or remove the space between controllers in the workflow.Activate the global connect toolUse this controller to create the connection between two controllers.Create start eventIt is required to add the start event at the beginning of each workflow as a start point.Create finish eventIt is required to add the finish event at the end of each workflow as the end point.Create formUse this controller to add a template to the workflow, select roles, insert data to the form fields etc.Create messageUse this controller to create SMS or Email messages of different types with default or custom messages.Create parallel gatewayUse this controller to create parallel tasks in the workflow. It is recommended to add this controller at the beginning of each set of parallel tasks as open point and at the end of each set as close point, so the workflow will wait for all the parallel tasks to be completed before continue. Create exclusive gatewayUse this controller to create an exclusive path of the tasks and to add conditions.Create script taskUse this controller to add scripts to the workflow.Create service taskUse this controller to add services to the workflow, like Webhook, Archive etcCreate call activityUse this controller to create a call activity. In addition a new controller can be added from another controller by clicking the relevant icon and they will be automatically connected to each other. Additional options RemovePress the icon the remove the controller from the workflow.Change colorPress the icon to change the color of the controller in the workflow.Change typePress the icon to change the type.Append typePress the icon to append the type.Append form created eventPress the icon to append the form event. For example, to send a message to the recipient. Example of the workflow
Import From File This option is intended to transfer a workflow from one system to another, such as a test server to a production server. The file can be downloaded from a workflow editor before. For more information about workflow tools read here.
Supported browsers Our current approach for supported browsers is blacklist and no whitelist. Blocking specific browsers and releases intends to remediate: Popular browsers that are vulnerable or EOL with the limitation of popularity Browsers or UA that known to be vulnerable Browsers that does not make adequate use or no use at all to new technologies. Specifically use of cookies, local storage, recent CSS etc. In the near future we intend to modify our approach to whitelist. In that event only specific browsers and versions will be allowed for service What browsers are blacklisted? BrowserVersionNoteChrome80 or lowerSamsung Browser13 or lowerFirefox95 or lowerYaBrowser20 or lowerSafari15.3 or lowerInternet explorerAll version Edge80 or lowerOpera67 and below
Create start event This controller is used as a start point of the workflow with input parameters and other configurations. When pressing “Start” controller in the workflow the settings panel will be opened at the right side. General settings IdID has a unique value that is automatically generated by the system.NameDefault name “Start” can be changed by the user to another value. The name is shown under the controller in the workflow.Default start pointSelect the check box if the start point is default.Is public availableSelect the check box for public start point. Upon selecting public checkbox additional parameters will be shown. Public linkPublic link that can be copied and used for the access from the public location.Public nodeSelect the public node to which the user will be redirected after the start of the process.Authentication requiredSelect the check box if the authentication is required. Inputs settings This screen is used to add input parameters to the start event controller that will be displayed when the workflow starts and used in the following sessions and messages. Add input specificationPress “+” icon to add a new input parameter.IdID of the input parameter. The value is automatically generated by the system and is unique for the specific controller.NameName of the input parameter.SourceSource of the input parameter. TypeType of the input parameter. Default: StringDefaultDefault value of the input parameter.RequiredRequired or not. Default: No Public link screen example
How to protect forms? We are dedicating significant effort to safeguarding your data and your clients’ data. While some methods are fully covered by us, others require your attention. Below is a list of the protections we provide for forms. Before we begin let’s clarify that we have a separate set of rules for “User” which are authenticated and authorized personnel whom are permitted to access Cellosign resources. Typically these users are connected to Cellosign through your organization IDM. (Azure Ad, LDAP etc..)Forms that needs to be filled by your users will require their authentication. This page is about end-clients. Obviuous
Create form This controller is used to create a session with a specific template and role, input parameters and other configurations. When pressing “Session” controller in the workflow the session settings panel will be opened at the right side. General settings IdID has a unique value that is automatically generated by the system.NameDefault name “Session” can be changed by the user to another value. The name is shown inside of the controller in the workflow and with a unique value it is easy to distinguish it from others.Use session as defaultsSelect the default to get the data from. In case the controller was added from “Append form” option the value will be automatically added and configured to the previous session result. It is very important to define the default when there is more than one entry to the session. For more information see “Inputs” section below.DescriptionAdd the description of the session. Inputs settings This screen is used to add input parameters to the session controller from the previous controllers or from the form. Add input specificationPress “+” icon to add a new input parameter.IdID of the input parameter. The value is automatically generated by the system and is unique for the specific controller.NameName of the input parameter.SourceSource of the input parameter. Can be any of the previous controllers or the session result from the form.TypeType of the input parameter. Default: AnyRequiredRequired or not. Default: No Example of the input parameter from the Start event: Example of the input from the previous session result: Example of the input parameter from the Form Result of the client session: Form settings TemplateSelect the template from the list of existing templates to run in the current session.RoleSelect the role (recipient) from the list that is automatically created based on the template definition.Is seal sessionSelect the check box if the session is seal.DocumentPress “Choose file” button to attach the document to the session or the link button to select the reference.Input Press “+” icon to add the fields for the template parameters.KeyAdd the ID of the field controller in the template where the value will be inserted upon running the session.ValueAdd the value that will be inserted to the template field or select it from the list of input parameters.Redirect URLAdd the redirect URL or select it from the list of input parameters.Archive URLAdd the archive URL or select it from the list of input parameters.
Accessibility Articles Accessibility statement Guide Accessibility statement An accessible website is a website that allows people with disabilities and older people to view a web page with the same level of efficiency and enjoyment as other user. About 20 to 25 percent of the population encounter difficulties using the Internet and may benefit from more accessible Internet content. We at Republix believe in and works for equal opportunities in the Internet space for those with various disabilities and/or who use assistive technologies to use a computer, tablets and mobile devices. Website accessibility The site provides the general public with accessible content as much as possible. We work to update and implement the accessibility rules as much as possible, in accordance with the principles of the accessibility standard. Republix form content are tested with NVDA screen readers on top of the following browsers on their latest editions chromium Firefox Safari This website complies with the requirements of the Equal Rights Regulations for people with disabilities (accessibility adjustments to the service), the website complies with the recommendations of the Israeli standard [5568] for content accessibility on the Internet at AA level. How to browse the site with accessible mode Open the menu at the top of the page and toggle on “Activate accessibility”. When activated, form entries and texts will display a distinct border when elements are on focus. You can navigate forward using the TAB button. To navigate back, press the SHIFT + TAB key combination. To get the best browsing experience with screen reader software, we recommend using the latest NVDA software. Changing colors From the top menu toggle :Monochrome” to change the site’s colors for for comfortable and easy reading. Known issues There are currently no known accessibility issues on the site. Did you encounter a problem with the site? Please submit a ticket to our support team and we will be happy to help. Guide Cellosign is an accessible product in AA standard. However, in order for the forms and business processes to be accessible to the end users, a number of basic rules must be followed. Controllers Each visible (not hidden) controller in the form should have a field label and an additional description if necessary. Note: in Paragraph controller, if you use copied content, make sure that the “design” is not copied as well. Before pasting the content, you must first transfer the content through the Notepad software, which will clean the CSS styling, and then you can paste the text into the content editor. Images For the uploaded images, you must enter a value for accessibility, a text indicating what the image is, for example: In the case of a logo: the logo and company name must be specified. In the case of a signature image it must be stated: “the signature of” and the full name of the signer and his position. In the case of inserting images in the integration, an “Alt” tag must be applied to each image that is uploaded to the form. Headers labelling Emphasis should be placed on the structure of the document in terms of headers. The reference to headers labelling is very similar to the implementation of a document in WORD for example. See the example below. When using the header labelling as shown in the example, the end user’s browser will automatically adjust the text size, without further intervention. Should try to avoid using a specific font size and leave it only for exceptional cases. HTML developers can use a code editor to make additional labelling as shown here. Colorfulness The rule of thumb for color is maintaining contrast. Cellosign application for the end user comes with a built-in accessibility menu that also includes contrast, keyboard support and more. However, the starting point of an initial display for the form is to maintain a contrast of colors, for example dark text on a light color. In the picture here, the implementation of the colors is not correct since there is no high contrast between the background and the text. As a general rule, try to avoid different backgrounds than the default. Links Links in a paragraph field must be labelled according to the type of link. For a link to a website, select the text, click on the link icon, select “URL” and enter the desired address, for example: https://support.cellosign.com/. For the link to send an email, select the text, click on the link icon, select “E-mail” and add the address for sending an email, for example: support@cellosign.com. CSS In the Cellosign template, it is possible to implement CSS tags for use in the form elements. This option is open for the implementers with appropriate knowledge. Here are some highlights: The use of CSS is under the responsibility of the customer. We do not provide support for changes made to this component for accessibility or in general. Do not use image elements for backgrounds. If changes were made to the colors of the components, it is recommended to use a contrast test to make sure that the changes did not affect the accessibility of the form Client side In order for the clients to activate the accessibility of the received form they need to open the “Support and Accessibility Menu” from the top corner of the form and mark the “Activate accessibility” check box.
Privacy statement Introduction This privacy statement (“Statement”) applies to Republix Ltd. which develop and operate the Cellosign system (together “Company” “we,” or “us” and the “System”). The security and privacy of your information are very important to us. Whether you are using one of our services as a cust-omer, potential customer, or just visiting our website, we want you to trust us with managing and protecting the information that you provide us with. We have prepared this statement to explain more about who we are and how we collect and manage your information. This site is a general audience site which is neither designed nor intended to collect personal information from children and/or minors. In order to ensure compliance with the provisions of the law, children under the age of 13 should not provide use this site or the System. By using any of our products or services (including our website) and/or by agreeing to this Statement, e.g., in the context of registering for any of our services or by any other means, you understand and acknowledge that we will collect and use Personal Data as described in this Statement. It is important to note that this statement applies only to the data which is being collected and processed in our website by the company. Cellosign System is a product of the Company, which allows Company’s customers to easily create and manage forms for the collection of data. It should be emphasized, that the Company is not the owner of such data, is not allowed to use any of this data and has no control regarding the use of this data. Any inquiry or complaint regarding the data collected by any form in the system should be addressed to the relevant company/organization which is the owner of the data. Who we are and how can you contact us Republix Ltd. Kibutz Kefar Szold, pob180, 12230 Israel Phone +972 -525-794-833 Email Info@Cellosign.com While you are visiting our website, we might collect some information about your use in our website for our purposes, as set forth by this Privacy Statement. Therefore, and with regard to any such Personal Data collected, we are deemed as the Controller for GDPR purposes. Questions, comments, requests and complaints regarding this Statement and the information we hold are welcome and should be addressed to us by using the contact details above. All requests will be dealt with promptly and efficiently. You have the right to make a complaint at any time to the relevant supervisory authority for data protection issues. however, we will appreciate the chance to deal with your concerns before you approach the authorities, so please feel free to contact us in the first instance. Information we may collect from you “Personal Data”, or personal information, means any information about an individual from which that person can be identified. We collect Personal Data from you voluntarily when you provide such Personal Data to us, or via our services and websites with which you voluntarily interact. We may also obtain such Personal Data about you as may be provided to us in the course of our legitimate business activities. You do not have to provide us with your information, but in some cases, if you do not, it may mean that you are unable to use our services. For example, we may be unable to complete a requested “contact form” inquiry, unless you’ll provide us with your contact details. When you use our website or services and choose voluntarily to provide us with your information, we might collect and process the following information: Identity Data – including full name, username or any similar identifier, title, date of birth and gender and any other information provided by you upon your sole discretion. Contact Data – including email address and telephone numbers. Usage Data – includes information about how you use our website and services. Technical Data – includes internet protocol (IP) address, the device you are using, browser type and version, screen resolution, time zone setting and location, browser plug-in types and versions, operating system and platform and other technology on the devices you use to access this website. Marketing and Communications Data – includes your preferences in receiving marketing from us and our third parties and your communication preferences. We also collect, use and share Aggregated Data such as statistical or demographic data for any purpose. Aggregated Data may be derived from your Personal Data but is not reveal your identity. How is your Personal Data Collected We use different methods to collect data from and about you, including through: Direct interactions – You may give us your Identity, Contact and Financial Data by filling in forms (e.g. “Contact Us” or “Newsletter Subscription”, etc.) or by corresponding with us by phone, email or otherwise. Automated technologies or interactions – As you interact with our website or any other system operated by us, we may automatically collect Personal Data (please refer to the description below, under “Cookies Usage”). Third parties or publicly available sources – We may receive Personal Data about you from various third parties and public sources, e.g.: advertising and social networks, analytics providers, search information providers. Cookies Usage Like many other websites, our website may use Cookies or Other Technologies (such as “pixel tags”, “web beacons”, links in emails, JavaScript, device IDs assigned by Google or Apple, or similar technologies, collectively “Other Technologies”). Cookies are a small text file that is placed onto an Internet user’s web browser or device and is used to remember as well as obtain information about that party. Cookies and Other Technologies allow us and third parties to obtain information about your visits to our website, including to analyze your visiting patterns, and to deliver online and mobile advertisements, messages, and content for us and others that are specific to your interests. In addition, Cookies may be used on the site in order to improve your experience. We may use various types of Cookies: Essential Cookies – which are necessary for the site to work properly; Functional Cookies – designated to save your settings on the site – your language preference or other view preferences; Session Cookies – used to support the functionality of the website – such Cookies are stored only temporarily during a browsing session and are deleted from your device when you close the browser. Targeting Cookies – these cookies are used to collect information from you to help us to improve our products and services as well as serve you with targeted advertisements that we believe will be relevant to you. Social networks Cookies – Social Plug-In Cookies (e.g. Facebook) enabling sharing of information with your social networks accounts to be smooth and seamless. Analytics Cookies – give us aggregated information which enables us to improve the way our website works, e.g. Google analytics. Please note that the data collected by use of Cookies may be linked to and combined with any other data, including Personal Data. Managing cookies and opting out: aside from the Essential Cookies described above, you can always choose to configure your browser to reject all cookies or notify you when a cookie is set, but sometimes in that case, certain services, features, and functionality in our website may not be available to you. You can always delete your browser history in order to delete any cookies from your computer. The Legal Basis for the usage of your Personal Data We will only process and use your Personal Data when the law allows us to, i.e. when we have a Lawful Basis for such usage. Such lawful and legal basis can be any of the following: Processing actions which are related to your reservations and/or requests, to carry out our obligations arising from any contracts entered between you and us. For example, contacting you per “Contact” form filled by you; our use of your information is necessary to meet responsibilities we have to our regulators, tax officials, law enforcement, or otherwise meet our legal responsibilities; our use of your information is in our legitimate interest as a commercial organization. For example, to operate and improve our services and to keep people informed about our products and services (including for profiling and targeted advertising). In these cases, we will look after your information at all times in a way that is proportionate and respects your privacy rights, making sure our legitimate interest is not overridden by your interests or fundamental rights and freedoms; You have provided us with your consent for the process of your Personal Data, upon your sole discretion and free will to use our website for making online purchases. In general, and as detailed above, we do not rely on consent as a legal basis for processing your Personal Data. Yet, in any case in which you have provided your consent to our processing of your information, you can withdraw this consent at any time by contacting us through the contact details provided above. The purposes of the processing We might use your data in order to: enable you to use our website and services in the most effective way, including the personalization of your experience by presenting content tailored to your interests; to meet or comply with any applicable rules, laws, regulations, codes of practice or guidelines issued by any legal or regulatory body; assess or evaluate the effectiveness of our system and services, as well as any technical and organizational measures designated for the protection of your Personal Data; protect our rights and legitimate interests, as well as defend against any lawsuit, legal claim or complaint; to conduct any other activities that are required to provide our services. Transfer and disclosure of Personal Data We are not in the business of selling your Personal Data. However, we may disclose your Personal Data to third parties in a variety of circumstances in the ordinary course of operating our business, such as: Disclosure of Personal Data to third-party service providers, providing us with services supporting our website and ordinary course of business, e.g. system, storage and computing services; Use of third-party services supporting our marketing efforts, in accordance with applicable law; When we have a legal obligation to do so, or when where are allowed to do so under our legitimate interests. In any such transfer we will take steps to make sure such transfer is carefully managed to protect your privacy rights: transfers within our group and affiliates, will be subject to an agreement / policies and procedures made to ensure that your data receives an adequate and consistent level of protection as required by applicable law; transfers to any subcontractor or processor will be subject to contractual terms ensuring the security and protection of any Personal Data under any such sub-processor, in accordance with applicable law provisions; any transfer of data which originates in the European Union (“EU”) to a country outside of the European Economic Area (EEA), shall be made in compliance with the provisions of chapter 5 of the GDPR. Such transfer can be made to countries which are recognized as providing an adequate level of legal protection or where we can be satisfied that alternative arrangements are in place to protect your privacy rights, e.g. the EU-US Privacy Shield; any requests for information we receive from law enforcement or regulators will be carefully validated before the disclosure of any Personal Data. Links to other sites Our website may include links to third-party websites, plug-ins and applications. Clicking on those links or enabling those connections may allow third parties to collect or share data about you. We do not control these third-party websites and are not responsible for their privacy statements. When you leave our website, we encourage you to read the privacy notice of every website you visit. How we secure your information We are committed to protecting the security of your Personal Data. We use a variety of security technologies and procedures to help protect your Personal Data from unauthorized access and use. However, the collection, transmission and storage of information can never be guaranteed to be completely secure. Yet, we take steps to ensure that appropriate security safeguards are in place to protect your information, and we will continue to revise our policies and implement additional security features. Retaining your information in our systems We will only retain your Personal Data for as long as necessary to fulfil the purposes we collected it for, including for the purposes of satisfying any legal, accounting, or reporting requirements. We have defined data retention priods for any data item in our systems, ensuring minimization of retention periods. In some circumstances we may anonymize your Personal Data (so that it can no longer be associated with you) for research or statistical purposes in which case we may save and use this information indefinitely without further notice to you. Data Subjects’ rights under EU data protection laws – GDPR Under EU law, EU residents and individuals, have certain rights to apply to us to provide information or make amendments to how we process data relating them: right to access your Personal Data – you can ask us to confirm whether or not we have and use your Personal Data, and if so, you can ask for a copy of your data; right to correct your Personal Data – you can ask us to correct any of your Personal Data which is incorrect, after verifying the accuracy of the data first; right to erase your Personal Data – you can ask us to erase your Personal Data if you think we no longer need to use it for the purpose we collected it from you. you can also ask for such erasure in any case in which the process of your data was based on your consent, or where we have used it unlawfully or where we are subjsect to a legal obligation to erase your Personal Data. any request for such erasure will be subject to our obligations under the law (e.g. our obligation to keep some records for tax or customs purposes); right to restrict our use in your Personal Data – you can ask us to restrict our use of your Personal Data in certain circumstances; right to object to how we use your Personal Data – you can object to any use of your Personal Data which we have justified by our legitimate interest if you believe your fundamental rights and freedoms to data protection outweigh our legitimate interest in using the information; you can always require us to refrain from using your data for direct marketing purposes; you can ask us to transfer your information to another organization and/or provide you with a copy of your Personal Data. We may not always be able to do what you have asked, for example, if it would impact the duty of confidentiality we owe to others, or if we are otherwise legally entitled to deal with the request in a different way. However, we encourage you to contact us with any such request, and we will be happy to assist you. Special Notification for California Residents Individual customers who reside in California and have provided their personal information to us may request information about our disclosures of certain categories of personal information to third parties for their direct marketing purposes. Such requests must be submitted to us through the contact information Specified above. Changes to this Privacy Statement We reserve the right to change this statement from time to time at our sole discretion. If we make any changes, we will post those changes here so that you can see what information we gather, how we might use that information and in what circumstances we may disclose it. By continuing to use our site or our services or otherwise provide data after we post any such changes, you accept and agree to this statement as modified. Effective as for August 2019
Create message This controller is used to create SMS or Email messages of different types with default or custom text, input parameters and other configurations. When pressing “Message” controller in the workflow the message settings panel will be opened at the right side. General settings IdID has a unique value that is automatically generated by the system.NameDefault name “Message” can be changed by the user to another value. The name is shown under the controller in the workflow and with a unique value it is easy to distinguish it from others. Inputs settings This screen is used to add input parameters to the message controller from the previous controllers or from the form. Add input specificationPress “+” icon to add a new input parameter.IdID of the input parameter. The value is automatically generated by the system and is unique for the specific controller.NameName of the input parameter.SourceSource of the input parameter. Can be any of the previous controllers or the session result from the form.TypeType of the input parameter. Default: AnyRequiredRequired or not. Default: No Example of the input parameter from the Start event: Example of the input parameter from the Form Result of the client session: Message settings This screen is used to configure the kind of message, recipients, message text etc. Select the kind of the message: SMS or Email. Parameters of the window will vary according to the selected kind. Email Email message settings KindSelect the kind of the message Email for email message.SenderSelect the sender from the list defined in the system. Default: support@cellosign.comPrioritySelect the priority of the email. Default: NormalAdd recipientPress “+” icon to add the fields for the recipients emails according to the number of recipients.RecipientsAdd the email address to the field or select the input parameter from the list.Add CCPress “+” icon to add the recipients to send a copy of the email.Add BCCPress “+” icon to add the recipients to send an invisible copy of the email.SubjectAdd the subject of the emailBody templateSelect the body template:– “Invitation” is the email that will include the link of the form for the recipient to sign and complete.– “Archive to rep” is the archive email, that will be sent to the agent after the form completion.– “Signed document” is the email to the client with the signed copy of the form.– “Default” is the email that will include only the Body text.Body textAdd body text. If not added, default text will be sent.Session for invitationSelect the session for invitation. SMS SMS message settings KindSelect the kind of the message SMS for phone message.SenderSelect the sender from the list defined in the system. Add recipientPress “+” icon to add the fields for the recipients phone numbers according to the number of recipients.RecipientsAdd the phone number to the field or select the input parameter from the list.Body typeSelect the body type:– “Invitation” is the SMS message that will include the link of the form for the recipient to sign and complete.– “Inline template” is the SMS message that will include only the Body text.Body textAdd body text that will be sent in the SMS message.Session for invitationSelect the session for invitation.
Create exclusive gateway This controller is used to create an exclusive gateway in the workflow with Javascript or Expression Builder conditions, input parameters and other configurations. When pressing “Create exclusive gateway” controller in the workflow the settings panel will be opened at the right side. General settings IdID has a unique value that is automatically generated by the system.NameDefault name “ExclusiveGateway” can be changed by the user to another value. The name is shown next to the controller in the workflow.Default waySelect the way where the workflow will go by default. Inputs settings This screen is used to add input parameters to the exclusive gateway controller from the previous controllers or from the form. Add input specificationPress “+” icon to add a new input parameter.IdID of the input parameter. The value is automatically generated by the system and is unique for the specific controller.NameName of the input parameter.SourceSource of the input parameter. Can be any of the previous controllers or the session result from the form.TypeType of the input parameter. Default: AnyRequiredRequired or not. Default: No Example of the input parameter from the Recipient1 session result: Example of the input parameter from the Form Result of the Recipient1 session: Condition definition When pressing the gateway in the workflow the settings panel will be opened at the right side. Press “Condition” tab to add conditions to your exclusive gateway. Expression language can be “Javascript Expression” or “Expression Builder”.
Post transactions from spreadsheet This function enable you to post transactions from data you have in EXCEL spreadsheet. This is a convenient option for mass distribution in case posting from API is not available to you. Quick brief on this function To use this option select “Transaction file” from the left menu. Select template that you would like to distribute and select template fields that you wish to inject values into’ for example client name, address etc.. Download Cellosign spreadsheet that includes structure to fill data into Update Cellosign spreadsheet and upload it back Uploaded data will be displayed and will highlight invalid data, such as incorrect email address or phone number, that needs to be fixed Fix or remove rows and post transactions Cellosign will post all transactions one by one. At the end of posting you should be receiving an email on posting completion Configure Start by selecting template from templates select box. Note: users with “Agent” permissions will get templates in status “Publish” in the list and users with “Project manager” permissions will get both “Publish” and “Edit” templates in the list. Select fields that you would like to inject values into. Filtering fields to for selection includes to options: Filter all required fields. This will display fields that are setup as “required” by default in the template By Class. This function can be very handy if you are using this function a lot. Filter by class will enable you show only fields of some attribute that are per-configured in the template. To configure a class for a template field. Go to template studio Select field you wish to apply class for and enter class name. You may enter classes as many as you wish to filter for different needs Once fields are configured are setup your Class be displayed in your filter list You may add as many templates as you wish on the configuration. This can be useful in cases you wish to post a client more than one form to fill out. So in that event, each row on your spreadsheet can be submitted to a single recipient. will see how it is done shortly. Prepare data Once configuration is done: Click on “Export transaction template”. A spreadsheet file will be downloaded to your browser. If it’s not: Check your browser for blocked pop ups and allow popups from this page Otherwise, please consult with your system administrator, as this might be an blockage on your network Open the spreadsheet and you will see the following columns. To assist you with the spreadsheet column, you can hover the column header row to reveal helper tooltip. #Column textWhat it is used for1invite_messageYou may use this to post a personal message when delivered to recipient in mail or SMS. This will override the default SMS or email configured in your template. You may leave blank.2rep_idIf left blank all transaction that are posted will be associated with your Cellosign user. If you wish to associate them with another user, you may enter his user name (email address), make sure you have the correct user name, otherwise the transaction will be blocked. You may leave blank3client_copyIn case you wish to post your recipient a copy of the final PDF you may upload here your recipient email address. However, normally when the recipient destination is an email (and not SMS), Cellosign will automatically post the PDF result to the destination email. This field is useful in case the form destination is a phone number or you wish to post the PDF result to additional destination. 4expiry_durationEach transaction that is generated in Cellosign has an expiry duration, normally 24 hours, unless configured otherwise on your template or globally withing your project settings. With this field you may override any default. The value to apply here is between 1-960 hours (that’s 40 days max). If you are not sure please leave blank, or consult with your administrator. 5@recip-1-some id..Columns that start with “@” (can be many) is the destination to send the form to. The value for this column can be email address or phone number. “-1-” in the string represents the 1st recipient for the template. In case of a workflow with many recipients, you may see “@recip-2-“, “@recip-3-” and so on, each column represents the destination of that recipient. The long string afterwards, is the template ID.Hover on the column header to see the tooltip it will show some explanation such as: “Destination back office for template Direct Debit” where “back office” is role name of a recipient and “Direct Debit” is the form name6#idColumns that start with “#” are columns for injecting data into forms. Hover the column header to show the tooltip to display the field Human name. When filling up data into these columns, make sure that data types are correct, for example in case that your template field is of type Number, the field value cannot be Text or Date. Upload Once spreadsheet is ready. go back to Cellosign configuration screen, upload the file and click “Next” Validate On next screen your data will be displayed with the entire data set from your spreadsheet. Cells with a light-red background indicate an invalid value, such as wrong email format or date field that the value assigned has incorrect format. Hover the cell to see the details regard error. In addition, you may check the switch “Alert on required fields with no value” to highlight and prevent submission where row has required field that has no value. On the left most column all rows are checked, if you wish to prevent a row from being posted, simply uncheck it. Once all errors are cleared or rows unchecked Click “Post” to send transactions file for process. Once all is done you will be receiving an email with notification on transactions submission. This email will also include an id, like this one “fd52f83a-19d4-4bce-b6f8-8dacbe90b23f”, use it to filter all the batch transactions in the transactions board. Limitations Posting transactions from file is carried out in sequence (one at a time) and may take time to complete Make sure to use Spreadsheet that was downloaded from Cellosign, otherwise it might not work correctly Although this function is available for your disposal, it is advised to use API or Connectors instead as these options are faster, cleaner and in general a superior alternative
Dictionaries This screen allows you to add a “data list” manually or from a file (An excel, csv or a json) and associate the data list with a “List of values” type control while editing the template. Several data dictionaries can be associated with the same template and the same data dictionary can be associated with several templates. To create a dictionary, login to application and click “data sources” and “Dictionaries”. At the top on the right there is a button for adding a new dictionary and a button for uploading a file. You can use the upload button for loading a file for your dictionary. You can see on the bottom the explanation on every item at the dictionary table. Also, you can click on the Add button to create the new dictionary. In this case, you can add data manually to the dictionary by using the green + or use the replace and append buttons to load files to the dictionary. Here you can also export the dictionary that you are viewing/editing using the ‘Export” Button. The exported files will be on CSV format by default and on JSON format if you choose it using the arrow on the “Export” button: Here are the editing options on current dictionary (from left to right): The name of the dictionary, you can change this as needed. Save button, to save a new data dictionary or save changes to an existing data dictionary. Replace button for replacing the existing dictionary with a loaded excel or csv file Append button for adding the loaded file data to the existing dictionary Delete button for deleting the dictionary This table will explain the dictionary table: ColumnDescriptionIDA number that is automatically entered TextRepresents the text that will be shown to the client in the “List of Values” control. If you upload the dictionary from a file, the text should appear in column “A” in the fileValueRepresents the data that will be received in the archive and in the json file. Intended for cases where the text shown to the client is not the same as the text they want to receive in archive. For example, the customer will select the name of the bank in the “List of Values” control, and on the archive will receive the bank code and not the name of the bank. The value should appear in column “B” in the uploaded file.GroupRepresents a name of a group, intended for cases where you want to link several data dictionaries together. Like for example a list of cities and streets.Entering a group name that is identical in value from two different data dictionaries allows a connection in the value selected in the “List of Values” control. The figure should appear in column “C” in the uploaded file. Notes and Gotchas For security reasons some characters are disallowed. Disallowed for Text column: '<', '>', ';' Disallowed for value and group columns: '<', '>', '#', '$', '%', '^', '&', '*', '|', ';', ':', '{', '}', '[', ']', '=', '+', '-'
Data Tables Think about it as a custom table hosted in Cellosign. You can customize it any way you want and connect it to template. What it’s for? Consider the option when you have large repository of texts and inputs that needs to be incorporated into business process either as initial value, as a condition to other selection or per user engagement. Up until now that way to handle this process would have required to configure fields and conditions inline the template. In case texts and inputs needs to be incorporated into large amounts of fields and templates, this can be quite tedious. With this feature you will be able to configure relational table with keys and data and use it in cellosign templates using our connector editor. This is specially become handy when you have extensive conditions to handle the texts and in case you have texts such as terms/legal that are expanded over large amount of templates, so you can keep it all in one place. Configuring data table To configure data table login to application and click “data sources” and “Tables”. Click add table and define: table name, columns as instructed on screen. Click to add rows. Eventually, you will have a data table with rows and columns. Note that “key” type columns are designated for the connector in next step so you can search matching records. Adding data and inputs to data table Let’s add some data and input elements to it. In the screen capture on the right we added: “House” as key for selection Texts with input elements to Application Additional texts for Conditions. To add input elements, simply click the icons bordered with blue. The icon on the left is a “Checkbox” Icon in the middle is text input The right most icon is Dropdown(select) input. Configure a template Lets add a new template that includes Select element and two paragraphs. Select will include values “Car” and “House”. What we require to occur is that when client selects “Car” or “House”, Cellosign will fetch via the connector the matching “Application” and “Conditions” for his selection. Switch on “Display bottom border only for input” in case paragraph includes input elements that otherwise might conceal upper text lines. Note: In order to secure your form you will be required to toggle a paragraph in order to allow parsing input elements into the form. So whenever data table data includes input for parsing, the toggle displayed on the right, must be checked. Connector configuration On template editor click integrations on top pane and then “Connectors”. In this screen you will see “Preset”, “Live”, “Submit” and “Post submit” for which our connectors will be integrated into. “Preset” is the ability to get values from the table on session initiation, requires no user intervention. “Live” will be configured when the connector require some of interaction from the user such as selecting value or click on a button. “Submit” and “Post submit” are for databases and apps such as salesforce or Dynamics [that are coming up in next releases]. To configure connector to data table click “add” on “Preset” or “Live” sections. Select data table you have configured Set status “Active” Define the lookup: keys from the data table [one or more] Equation [for data table equal only is applicable] To which entity to compare with: form field value, label [integration] or fixed value Add conditions as many is needed for the lookup Define what happens if query return no results, one or more than one result On “Live” you will need to configure how the connector is activated on “Change”: As the user types in. Select the field from the list to attach the connector with on “Click”: select a button from the form that will activate the connector Finally map the query result into the form fields. which value from data table goes to which field in form Demo For your convenience, this is a demo form already setup with the example above.
Categories Categories are an easy way to sort our business processes into groups. We can relate any template or BPMN process to a category. First we will see how to create categories and then we relate our templates and BPMNs to the categories. How to create a category? To create a new category, login to application and click “data sources” and “Category”. Click Add category: TBD
Accessibility statement An accessible website is a website that allows people with disabilities and older people to view a web page with the same level of efficiency and enjoyment as other user. About 20 to 25 percent of the population encounter difficulties using the Internet and may benefit from more accessible Internet content. We at Republix believe in and works for equal opportunities in the Internet space for those with various disabilities and/or who use assistive technologies to use a computer, tablets and mobile devices. Website accessibility The site provides the general public with accessible content as much as possible. We work to update and implement the accessibility rules as much as possible, in accordance with the principles of the accessibility standard. Republix form content are tested with NVDA screen readers on top of the following browsers on their latest editions chromium Firefox Safari This website complies with the requirements of the Equal Rights Regulations for people with disabilities (accessibility adjustments to the service), the website complies with the recommendations of the Israeli standard [5568] for content accessibility on the Internet at AA level. How to browse the site with accessible mode Open the menu at the top of the page and toggle on “Activate accessibility”. When activated, form entries and texts will display a distinct border when elements are on focus. You can navigate forward using the TAB button. To navigate back, press the SHIFT + TAB key combination. To get the best browsing experience with screen reader software, we recommend using the latest NVDA software. Changing colors From the top menu toggle :Monochrome” to change the site’s colors for for comfortable and easy reading. Known issues There are currently no known accessibility issues on the site. Did you encounter a problem with the site? Please submit a ticket to our support team and we will be happy to help.
Guide Cellosign is an accessible product in AA standard. However, in order for the forms and business processes to be accessible to the end users, a number of basic rules must be followed. Controllers Each visible (not hidden) controller in the form should have a field label and an additional description if necessary. Note: in Paragraph controller, if you use copied content, make sure that the “design” is not copied as well. Before pasting the content, you must first transfer the content through the Notepad software, which will clean the CSS styling, and then you can paste the text into the content editor. Images For the uploaded images, you must enter a value for accessibility, a text indicating what the image is, for example: In the case of a logo: the logo and company name must be specified. In the case of a signature image it must be stated: “the signature of” and the full name of the signer and his position. In the case of inserting images in the integration, an “Alt” tag must be applied to each image that is uploaded to the form. Headers labelling Emphasis should be placed on the structure of the document in terms of headers. The reference to headers labelling is very similar to the implementation of a document in WORD for example. See the example below. When using the header labelling as shown in the example, the end user’s browser will automatically adjust the text size, without further intervention. Should try to avoid using a specific font size and leave it only for exceptional cases. HTML developers can use a code editor to make additional labelling as shown here. Colorfulness The rule of thumb for color is maintaining contrast. Cellosign application for the end user comes with a built-in accessibility menu that also includes contrast, keyboard support and more. However, the starting point of an initial display for the form is to maintain a contrast of colors, for example dark text on a light color. In the picture here, the implementation of the colors is not correct since there is no high contrast between the background and the text. As a general rule, try to avoid different backgrounds than the default. Links Links in a paragraph field must be labelled according to the type of link. For a link to a website, select the text, click on the link icon, select “URL” and enter the desired address, for example: https://support.cellosign.com/. For the link to send an email, select the text, click on the link icon, select “E-mail” and add the address for sending an email, for example: support@cellosign.com. CSS In the Cellosign template, it is possible to implement CSS tags for use in the form elements. This option is open for the implementers with appropriate knowledge. Here are some highlights: The use of CSS is under the responsibility of the customer. We do not provide support for changes made to this component for accessibility or in general. Do not use image elements for backgrounds. If changes were made to the colors of the components, it is recommended to use a contrast test to make sure that the changes did not affect the accessibility of the form Client side In order for the clients to activate the accessibility of the received form they need to open the “Support and Accessibility Menu” from the top corner of the form and mark the “Activate accessibility” check box.
Publications Articles Whitepapers Newsletter Whitepapers Newsletter Newsletter publications. Read the latest news. Cellosign tools of Notifications & Reminders In today’s fast-paced world, it’s easy to forget important tasks. This is where Cellosign tools of notifications and reminders come in handy. Messages that are sent to the user to remind them of an upcoming task, are a great way to keep users informed and engaged, and can help to increase customer satisfaction and loyalty. Notifications and reminders can be used in a variety of situations, They can be sent via email, text message, or through the app for a specific or multiple customers. The key is to send them at the right time, and in the right way, to maximize their effectiveness. One of the primary benefits of Cellosign notifications and reminders tools is that they help to reduce the number of missed deadlines. By sending a timely reminder, you can ensure that your customers pay their bills on time or complete other important tasks. This can help to increase customer satisfaction, as customers are more likely to be happy with a service that is reliable and efficient. Automate notifications throughout Template, Workflow or BPM Another benefit of notifications and reminders is that they can be used to encourage customers to take action. For example, if you’re trying to get customers to complete a business process, such as filling out a An accession document or Purchase of services, you can send a reminder that includes a call to action. This can help to motivate customers to complete the task, and can increase your response rates. When sending a reminder to encourage customers to complete a business process, it’s important to be clear and concise. Your message should include a clear call to action, such as “Please fill out the attached form by the end of the week”. You should also provide any necessary instructions or links to make it as easy as possible for the customer to complete the task. In addition, it’s also important to be friendly and engaging in your reminder message. Use a conversational tone, and try to connect with your customer on a personal level. For example, you might start your message by saying “Hi David, we just wanted to remind you to fill out our survey”. This can help to create a positive impression, and can encourage the customer to take action. Send reminder to a specific customer In summary, Cellsign notifications and reminders tools can help you achieve an effective way to keep customers engaged and informed. They can be used in a variety of situations, and can help to increase customer satisfaction and loyalty. When sending a reminder to encourage customers to complete a business process, be clear, concise, and friendly, and include a clear call to action. By following these guidelines, you can increase your response rates and ensure that your customers stay engaged with your business.
Documentation Hello and welcome to Cellosign documentation. If you are new to cellosign please check Getting started guide to bring you up to speed. Otherwise, please check below the guides, FAQ or search for keyword. We are putting our best efforts to make the guides readable and helpful and we will be more than happy if you can acknowledge if guide was helpful or not. Right below of every page please click thumb-up/down you may also leave a comment, suggestion and our support team would love to respond. The best, Cellosign team. Articles Getting Started User Application Client applications How to Release management FAQs Security Reference Getting Started Hello and welcome, we are happy to introduce you with Cellosign, First let’s get the basics. What is Cellosign? Cellosign is a data collection application which can help you easily and securely collect data in shape of forms. From the end client point of view this is as simple as form where pieces of data are injected into, validated and submitted. Cellosign is able to collect and validate data in any conceivable method, as simple as make sure that ID number is correct or with complex cases validating data with remote application to ensure data integrity. But wait there’s so much more.. With Cellosign you will be able to easily configure a complete journey that involves multiple recipients along the way. For example a journey that starts with a remote-client, continue to back office for further inspections can be automated with simple as drag and drop and clicks. Cellosign is easily integrated with 3rd party applications through APIs and Application connectors to GET, UPDATE, CREATE or DELETE data records in a remote source. Where do I go from here? We strongly advise you to read the documentation within the Getting started guide, it includes important information regards getting support, best practices that can get you up to speed with no hassle. Next, for your convenience, our documentation is organized by User Application components, so just pick up the documentation according to your role and your tasks. Best practices Security first Regardless if you are using Cellosign builtin login or your organization Single Sign On application, keep your password safe: Do not use passwords or tokens that were not granted to you. This is strictly prohibitedDo not leave notes with password on your deskKeep your password easy to remember and hard to guessIf you have a slight suspicious that something is wrong, logout immediately, report your manager and Cellosign support for immediate response Testing new business processes It is recommended that new or changes to existing business processes will be carried out at pre-production environment rather than production. This will help you to develop the process in a secured and controlled environment with no client access and no disruption to production environment. Every type of business process and it’s related meta data can be easily exported from pre-production and uploaded to production when testes are completed. Change management New releases are distributed every other month in according to yearly plan that takes into account holidays and peek times such as end of Quarters and end of year. On Cellosign cloud application typically new releases are distributed to production occurs at Thursday night. There are also reserved time slots for distribution for on premise clients. Please make sure to read full cycle practice, schedule and change logs in this documentation branch. How to contact Cellosign support Cellosign customers have the option to contact Cellosign support by submitting a ticket using our web form. Important: in case of critical production issues open a ticket and contact your account manager / support by phone. What kind of issues can be submitted: General Support issues. Reporting a bug. New request or CR. Note: in our FAQs section you can find detailed information about common issues. There are several options to submit a ticket. In case you can login to Cellosign application the options are: From “Processes” screen (recommended). From main application menu. In case you cannot login, contact Cellosign support from the web site. See below a detailed explanation of each option. Contact Cellosign support from “Processes” window Login the Cellosign application. Navigate to the “Processes” window. Select the transaction from the list and press “Show Transaction Details” (+). Click “Service call” button. You will be redirected to “Request for support and reporting service” form. Add the details and send the form. Please describe a complete scenario and add as much information as possible. The ticket will be opened automatically with all the attached to the form information. You will receive an email with the ticket number and all the details to the email address filled in the form. To update the ticket or add an additional information click the link in the received email. You will be redirected to the ticket details in the support site. If, for any reason, you have lost access to your Cellosign account, you can still submit a support ticket from the web site (see below). For more information about “Processes” window read here. Contact Cellosign support from the application Login the Cellosign application. Click “Service call” button at the left bottom corner. You will be redirected to “Request for support and reporting service” form. Add the details and send the form. Please describe a complete scenario and add as much information as possible. The ticket will be opened automatically with all the attached to the form information. You will receive an email with the ticket number and all the details to the email address filled in the form. To update the ticket or add an additional information click the link in the received email. You will be redirected to the ticket details in the support site. If, for any reason, you have lost access to your Cellosign account, you can still submit a support ticket from the web site (see below). Contact Cellosign support from the web site Navigate to Cellosign site. Click “Support” button at the top menu at the right. You will be redirected to “Request for support and reporting service” form. Add the details and send the form. Please describe a complete scenario and add as much information as possible. The ticket will be opened automatically with all the attached to the form information. You will receive an email with the ticket number and all the details to the email address filled in the form. To update the ticket or add an additional information click the link in the received email. You will be redirected to the ticket details in the support site. For detailed information about “Privacy statement” read here. Login Connect to the representative interface page using the URL provided to you by Cellosign: 2. Enter your user name and password and click the ‘Sign In’ button. If its the first time you are logging in , you will need to set a new password: Enter a new password on the ‘New password’ field and again on the ‘Confirm password’ field. Click the ‘Change Password’. After the successful login in the header of the interface you can see the user name, where under it you can find Profile details and Logout option. To send a form to the client from the agent’s interface, press the “Show Agent” button. For a detailed explanation about user application read here. Send a form To send a form to the client from the agent’s interface, press the “Show Agent” button at the top of the screen and select a form prepared for you from the list. For more information about forms templates read here. Enter the client’s email address or mobile phone number at the top of the screen and press “Connect” button. At this point, when the client opens the link from the phone message or the email, you can both work together on the form. Visit Screen sharing section for more information about the screen sharing option. When the client sends the form (after all the mandatory fields have been filled in) you will receive the signed form by email. For additional information about how to send a form in Cellosign application read here. Screen sharing Cellosign system allows sending a template to the client and creating a common interface (client and agent) for filling out a common template. The interface allows the agent to view the values entered by the client and the client to view the values entered by the agent in real time. Each of them (agent, client) can add values according to the editing and viewing permissions given in the template. The screen sharing option can be implemented in two ways, through the Show Agent interface or Processes interface. In the Show Agent interface, the option exists by default and under the following conditions: Agent has sent the template (a timer indicator will appear next to the target box for sending the template). Client opened the link sent to him (a green indicator will appear at the bottom of the screen at the agent side in real time). If both conditions are met, you can use the screen sharing option. For more information about Show Agent interface read here. In Processes interface the option exists in the actions screen under the specific transaction. Press “+” next to the transaction that need to share: After it press “Show Agent” button to open the transaction from the agent side: Note: In Processes interface users with organization manager or project manager privileges can also open a client screen by pressing “Show Client” button and view or edit the template with client permissions. For more information about Processes window read here. User Application The user application is the user’s main entry point to the application. At the far left is a navigation bar to the various pages in the system. [See below detailed explanation for each page]. Dashboard Processes Projects Intergrations Analytics Users Templates Workflows Transactions File Data sources In the header of the interface you can see: Show Agent button that opens the agent window for running forms. Project to which the user is currently connected. User name, where under it you can see the user profile and the logout option. For more information about Profile click here. At the left bottom corner there is a Service call option to contact Cellosign support: Dashboard SentAll the forms that were sent to clients in last 24 hours.ViewedAll the forms that were viewed by clients in last 24 hours.WaitingAll the forms that are waiting for clients in last 24 hours.SubmittedAll the forms that were viewed by clients, completed and submitted in last 24 hours.ExpiredAll the forms that were not completed and expired in last 24 hours.FailedAll the forms that were failed in last 24 hours. Under each section it is possible to perform search, filter by user and see the details of each transaction. Processes What is a process on Cellosign? A process in Cellosign is running a template to its destination and includes the filling of the form and its sending by the customer.Running a template can be done in 5 ways: Running a template by an operating system (integration) Running a template by a system user Running a template via an external link – from a website or portal (public) With a multi-recipient process – a new process is created for each recipient in the process With a multi-templates process – a new process is created on each template in the process For every action in Cellosign there is an information line in the “processes tab”. This screen shows all the processes performed in your projects according to a section of time, with the default when entering the screen being actions created “today”. At the top of the screen: Panel for selecting a date range Free text search to find processes that contain certain text such as: phone number, email address or template A list of projects to select from in case you have more than one project If you have selected a project, you can also select a specific template An “Export” button that allows downloading all the processes selected by the searching criteria’s to an excel document Below is an explanation of the data appearing in the processes panel: At the table header, the column names where the first column # can be used for arranging the table by ascending or descending order. At the bottom of the table, the number of columns in the selected section appears, as well as a navigator that moves to the following processes. ColumnDescription#A unique number of the operation in the systemCreatedDate and time the process was created [time the form was sent to the client]ProjectThe project which the operation is associated toDestinationThe recipient of the process: usually an email address or a phone number. Note: the destination column is sometimes empty, in cases where the action was taken from an external system such as CRM or the action was taken directly from a browser and then no active sending action was actually performedAgentThe name of the agent who created the process. Sometimes when it comes from a computer creation [one created from CRM for example] the name of the system or a generic name will appearExpirationEach action created in the system has an expiration time, during which time the action will no longer be accessible to the representative and the end customer to whom the action was sent.DeletedDate and time when the action was deleted. An action will be deleted given three possible cases: – Expiration time has passed– Customer sent the form and copies were also sent to the representative and customer or/and was compiled into the operational systems– The agent or project manager deleted the processClient logged in Last date and time the customer opened the formSubmittedDate and time when the customer submitted the formTemplateTemplate nameAn indicatorGreen indicator: everything is fine – Red indicator: error on the operation [see details further down the page] Process details Clicking on the green plus to the left of the process opens the process details screen and displays the process update actions: This action will appear as long as the operation has not been deleted from the system. The buttons allow: Manual deletion of the process Open the form as client Open the form as agent Open a service call for support Bellow them, we have five panels contains the process data, detailed below: Document Displays the process IDs and form processing information. ColumnDescriptionClient View Doc Date and time when the form was viewed by the end client. Note: This is a different documentation than “client logged in”. The information indicates that the form has been fully opened in the client’s browser and that the form is ready for an update operation.Doc GeneratedDate and time of creating a digitally signed file.Doc StatusThe status of the doc created. ‘true’ if a doc was created. empty if not created yet.TokenA unique identifier of the operation in the system. Used as a unique identifier for the form sent to the client.WorkflowIf the action is part of a business process that includes several actions, this content is the unique identifier of the process in which this action is included.RecipientThe number of the recipient during the process. [if this action is part of a process]. Archive If there is a connection [integration] between Cellosign and the CRM system in the customer organization, this panel will show the details of the process archive, after the form has been sent and processed. ColumnDescriptionPostedDate and time when the archive was created (the process product is sent to the core system).Doc NumberDocument number, if received as a response from the core system in exchange for a successful archive.Archive StatusThe status of the archive. ‘true’ if a doc was created. ‘false’ if failed.Archive Failed Error The archive error as received from the core system. Mail to Agent & Mail to Client If copies of signed forms are sent to the email boxes of the organization or the client, their details will appear in these panels. ColumnDescriptionAgent/Client MailMail address of the agent/client.Note: in the template without recipients, when entering the email, a copy of the form will be automatically sent to the client after completion.PostedDate and time of sending.Post StatusThe status of sending. ‘true’ if a doc was sent. ‘false’ if failed.Note: this status indicates if the mail was sent from Cellosign but was not necessarily received at the mail address.Post Failed ErrorError description, if the error failed and was reported to the Cellosign application. Projects Cellosign is a multi-tenant application, so it knows how to handle multiple clients (projects) in a way that produces complete separation between the various projects. The advantage of a project is complete separation between users, templates, logs, interfaces, tokens and a separate repository for custom code. The disadvantage of multiple projects for the client is mainly when using functionality that is not out-of-the-box because then in fact each project manages a separate code repository. Let’s take for example a case where requests from Cellosign to SMTP or SMS server must go through PROXY. In such a case, a specific code should be written for the proxy and be duplicated and maintained for each environment separately. Moreover, the API for our interfaces include the project code in the URL, which means that the client will have to maintain several different repositories in order to communicate with the Cellosign servers. If the main purpose of the separation is for access to templates and performed actions, you can use the functionality of teams because it allows you to associate users, templates and actions to a team. Integrations Analytics Analytics screen allows you perform the analysis of your transactions and perform filtering by date and specific templates. In addition it is possible to save parameters and fields in the template and perform search by specific parameters and values. For more information about saved parameters and fields read here. Users Cellosign manages three types of user’s permissions: PermissionsAbilityAgentA user with agent permission can:– Access the agent interface and management interface.– Send a form or initiate a process [agent interface, dashboard screen].– View actions sent by him only.Project managerA user with this permission can do everything a user with agent permission can, plus:– View all the actions in the project in which he is set as a manager.– View and update the Project settings.– Create and update Integrations.– View Analytics data.– Create and update Templates.– Create and update Processes.– Create and update Users.– Perform Post Transactions from file.– Create and update Dictionaries [linked lists], Tables and Categories.– Create new dashboards with different widgets.Organization managerA user with this permission can do everything that a user with project manager permission can do, plus:– Create and update additional projects in the organization in which he manages.– Set up SSO integration for providing user authentication. In Cellosign, there is the option to create users and also the option to connect to Active Directorysystems, so the login process will take place as part of the corporate identification system. In case that Cellosign is connected to the Active Directory system in your organization, the creationof the user will be automatic, without the need to create the user in Cellosign as well. Users panel This panel can be used to view and locate existing users, add new users and set permissions. Search box filterAllows searching by any text relevant to the user: name, email, phone number, etcSelect Project filterAllows searching by project. Relevant if the organization has several projects“Search” buttonAllows searching after changing filters+ Add ServiceAllows adding a new service+ Add UserAllows adding a new userExportAllows exporting the list of users to the external .csv file To update a user, select a user from the list. Perform the needed changes and press “Update User” button. Templates Templates panel displays the list of templates related to the project. The page is accessible for users with “Project manager” and “Organization manager” permissions. In the header of the page there are buttons “+ Create New Template” and “Upload Template From File”. ColumnDescriptionTemplate NameIncludes the name of the template as well as categories attached to the template.Status – Publish: The form is published and can be sent to customers. – Edit: The form is in editing mode, has not yet been transferred to production, can’t be sent to customers.UpdatedDate and time of the last update of the template.Updated ByThe name of the user who performed the last update of the template. You can filter templates by using “Search by template or tag” field. Workflows BMPN engine Drag & Drop establishment of exclusive, parallel, or dynamic business processes while integrating a round of approvals between internal and external organizational users, collecting and automatically completing data from tangential systems, creating digital forms, and driving tasks required for the business process by a representative or a core system. The process can begin from any digital point starting from the company’s portal or website of the end user (customers, suppliers, employees), web landing page, CRM, DWH, ERP systems as well as from a representative through individual or multiple sending. Workflows panel displays the list of workflows related to the project. The page is accessible for users with “Project manager” and “Organization manager” permissions. In the header of the page you can see buttons “+ New Workflow” and “Import From File”. ColumnDescriptionNameName of the workflow.CreatedDate and time when the workflow was created.UpdatedDate and time of the last update of the workflow.ActiveStatus of the workflow, whether it is active or not. The following options are available in the workflow screen: Create new workflow by pressing “+ New Workflow” button. Import workflow from file by pressing “Import From File” button. Update already existing workflow by selecting it from the list and pressing the name. Transactions File For detailed information about this section see “Post transactions from spreadsheet”. Data sources Client applications Form support and accessibility toolbar Support and accessibility toolbar incorporated in all forms. The toolbar receives first focus when open a form link so screen readers can read through its content. To open the menu click the hamburger icon at the top of your frame. Accessibility features Activate accessibility option Transform inputs to valid accessible collection. Date input transformed from a date or date-time widget to manual input Signature pad will require upload a signature image rather then drawing the sugnature In addition focus on input or (Tab/Shift+TAB) between fields will draw a border on the focused input Monochrome option This option modifying colors to monochromatic that makes to contrast accessible. It is advised to use high contrast as a default, regardless if the Monochrome option is activated or not. Accessibility statement Link to our accessibility statement Assistance Download file for print This option, if activated, allow client to download a PDF file based on the data already propagated into the form. please consult with our support for activation of this feature. Privacy statement Link to our accessibility statement About View display form and client data. On some cases were client has an issue we will require this data Release: Cellosign release Token: Session ID in view Browser: Client browser Client forms Client forms is a user interface that present to a client a list of forms that needs to be filled in an organized and secured fashion. Clients receives one link against they will need to identify and authorized for access. The interface is highly customizable and include rich function customization and looks configuration to match your brand. Why do I need this? Client forms is a great way to communicate with your clients, push new forms that needs to be filled, Client can see show how much time left to complete and all in a single link and one time authentication. Setting up client forms Login to projects page and locate “Client forms” and follow the tabs to set it up. Before modifying default colors and backgrounds make sure to read accessibility section below. Background settings This setting is optional. It affect the authorization pages only. It does not propagated in transactions page. SettingHelperBackground imageClient forms ius responsive and will adapt to any device automatically. We advise to pick an image with 4 (width):3(height) proportions, it scales better.In addition, we advise to upload an image smaller than 100 KB to expedite loading time for your clientBackground image settingThere are 3 CSS settings available for your disposal, check what works best for you when device is table, mobile or desktop.Alternative textMake sure to enter a meaningful name that represents the image, typically it would be a “background image of <my brand>” Color settings Button background color and button text color All buttons on transactions view and authorization page gets there attributes from the first two color pickers. including the shading below a transaction row. The image on the right is a result of a red background and white-gray text color as configured in the image below Remember to make sure to pick colors that contrasts well. Text color Most of the texts in client forms view will pick on this color, including transactions text and hello text as can be seen in the image above. Authentication settings This tab includes a collection of settings to process the authentication stage and configuration of footer links Identification header, text, error and support text Configure texts for intro page. For accessibility compliance make sure your text are simple and direct Suppress leading zeros Client forms viewer collects all client’s transactions that share the same password, see require password for details. Occasionally the access password is a number, such as ID that has fluid representations to include or exclude leading zeros. As such when client insert the password it will not include leading zero and when the transaction is initiated from your core application it does include it. Essentially, we might end up with mismatch when client enters “7673899” as password and your DB inject “07673899”. These will never match. This is where “Suppress leading zeros” become handy. It will suppress leading zeros to match. As such “000123” is equal to “123”. Note: Be aware on what data to use for password authentication. Make sure that “0123” and “123” are not different entities. In Activate OTP We encourage you to use this option. OTP will guarantee that clients can access their transactions can do so only after we have doubled checked their identity. To apply OTP to transactions, at least one transaction that match the password will need to have an OTP associated. If there are more that one OTP address then the viewer will list the propagated OTP destinations. Footer links By default Cellosign displays links to Accessibility, Privacy and terms of use pages. Use the switch to turn off any of the links. Alternatively. You may override the defaults to include links of your own. Make sure to add valid markup and texts. i.e.: Markup to open external web address: “https://yourdomain.com” To pop up phone app. “tel:0500001234” (For mobile apps) To display only the label please enter “#” in url Transactions settings Introduction text Enter here text that will appear before the list of transactions Show validity When activated the date and time on which a transaction will be expired is displayed below the transaction button. Aggregate Enable this option if you are using business models and wish to display collections of transactions associated with business case. In the example below we have two business case aggregations and two stand alone transactions: Loan 12345-67: Has 2 transactions and is expanded Loan 456778-90: Has 3 transactions and is collapsed “Change of banking information” and “Direct debit consent” are stand alone transaction Note that stand alone transactions are displayed only after business case aggregations. Show submitted transactions and document options These options are related with data model option which is not yet released. Popup Enter title and texts (or HTML markup). The popup will be displayed after each successful login. In case you are using HTML markup make sure to test the result on different browsers. Order of appearance OptionDescriptionExpirationDefault option for order is transaction expiration. Transactions that are first to expire will be displayed first by default.Template order numberOrder is arranged by template order of appearanceTemplate nameOrder is by template name: Note that evaluation is case sensitive. “z” (small letter) is prior to “A” (Capital) Note that aggregated transactions appear prior to standalone transactions Additional control on looks Template configuration offers the option to control the icon and the text of the button that opens up a transaction. Make sure to select a proper icon and a “call to action” text Client forms security We are investing great deal of efforts protecting your and your clients data. For some of the methods we are providing the coverage. others require your attention. Following is a list of protections we have for client forms Rate limit This feature is builtin and is not optional. Rate limit prevents a client from posting too many requests for access in a given time window. The conditions of lock and release can be modified from time to time o our discretion. Captcha This feature is builtin and is not optional. Google captcha to prevent brute force Password This is a preliminary condition to access client forms. We advise to use passwords that cannot be mined such as sequence numbers. Instead make sure that the password include checksum/parity and it needs to be captured as part of the password. OTP OTP option is at your discretion and we encourage to make use of it. Auto logout on idle On idle (No use of client forms view) client is automatically logged out after 5 minutes Auto logout if no transactions left on view When completing a transaction client is be redirected to main client form view. If there are no transaction he will be automatically logged out after 1 minute Poplast option When appending ?poplast=true parameter to client forms it will automatically open a form in condition that there is only one transaction in view. Note that transaction will be displayed after authentications and regardless if there is a popup message configured. Accessibility guideline As in any other interface builder, we are making our best efforts to bring you all the goodies for collecting data and create amazing interface for your clients that reflect your brands. However this also come with a responsibility on your side. Although we are try to protect you in whatever way we possibly can to avoid accessibility errors, there are couple of ground rules to pay attention to. Contrasts Make sure that colors setting has sufficient contrasts. A button with pale background and pale text is not accessible. same goes to background image. make sure to incorporate background and colors sets that has contrast. How much contrast? check out this tester. Messages and text Make sure your messages, errors and instructions are clear and not implied. for example “Open” is better than “Transaction” as a text on a button to open new transaction. How to Move a process to another project This page described how to move a process with all of its related elements into another project on the same environment. We will have to download/export every element separately in order to do so. (BPMN processes, templates and also Dictionaries and Tables – if we are using them on our templates) Follow the bellow steps: 1.Go to all the elements that are used on your process (BPMN processes, templates, Dictionaries and Tables) and download each one of them using the download or the export option. On a BPMN process, use this button for download: On a template, use this button for download: On a Dictionary, click on the arrow next to the export button, and than ‘Export JSON’: On a table, use this export button: 2. After you are sure that you have all the files related to you process saved on the side, delete from your current project all the data you want to move. (You can’t have identical processes/templates on the same environment) 3. Open the wanted project on the app. 4. Upload the data to the wanted project on this specific order (for remaining current connections):-Dictionaries and Tables-Templates-BPMN processes 5. Connect integrations if needed. 6. Run the all process for making sure its working as expected. Release management Release management is our process to introduce new versions of Cellosign. Typical release include: New features Bug fixes Maintenance and upgrades to software components Adaptation to regulations and compliance requirements Performance related changes We are releasing approximately 6 new versions of Cellosign every year. That is every other month. What a release cycle looks like? Each release includes the following steps and thresholds. Each cycle is a two months lapse time starting from step 2 to step 7. Step#StepDescriptionLapse time1AssembleCollect and prioritize release requirements. Bugs and security issues prioritized higher2DocumentationBuild supporting documentation for development and testing1 week3Requirements freezeA stage we are not receiving new requirements to release unless it’s a critical bug or security related04DevelopmentDevelopment of release content3 weeks5Internal test cyclesIncluding: Regression, Automated and manual tests for bug and new features, security, compliance and vulnerabilities test3 weeks6Beta releaseReleasing beta version to cloud pre-production environment were our clients may also conduct acceptance testing and report us findings. 1 week7ProductionReleasing version to shared cloud production environment0 Notes for Release 4.9.0 Over the past mobths we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed Release rollout schedule Pre production [preprod.cellosign.com]: xx Production [app.cellosign.com]: yy Security Allowed browsers We have updated our blacklisted browsers. Rate limit This new addition is builtin, none optional and controlled exclusively by Cellosign staff. In end-client views this feature limit a client to post too many requests for access in a given time window. The conditions of lock and release can be modified from time to time to our discretion. Cellosign views that includes rate limit are: Client forms (new addition shipped with this release) OTP and Challenge with Client session Javascript limitation Due to security concerns we are reducing our support to Javascript extension in templates. Please make sure that your templates does not contain javascript code. If it does, find configuration alternatives in Cellosign or seek our support team assistance. Upload file size limits Forms already include builtin limitations to upload files. Be advises that with this release we have also applied 5Mb limit when: Posting file(s) through API Configuring template Creating Adhoc session Heads-up for using iframe Over the past year browser providers were and still consistently preventing and deprecating usage of iframes. Technology wise the prevention is about blocking cookies and outbound communications from the guest. Eventually, it is widely accepted, that iframe technology will be deprecated all together sooner or later. Although Cellosign allows to deploy views in iframes, we encourage you to adapt other methods. Template changes Signature field button text Added option to change default text for signature button Default values for select field Added preference to pick default option for select field Lock template Until this release a template could be edited and changes are reflected on live sessions. With this new release we are promoting template lock per session for which a session will also hold the template properties at the time a session is initiated, which eventually result that changes in templates will have no impact on forms that have sent to clients. No clients will automatically work like so and by the end of Q1 2025 we shall enforce this change. Font David Removed Font David deprecated from Template configuration for the reason that it has issues with mixed char-sets and special characters, such as “@”. Be advised to replace template to other font face in case you are using it. Autodate field Added formats to auto date and now include breakdowns for day, month and year. Zip and password Depreciation notice. Zipping files in archive email has been depreciated. Download PDF for print We have added a new feature for client toolbar to create and download a PDF out of the data that is incorporated in a form without submitting the form. Changes in connector integrations Added functionality to modify integrations inline when moving template from one environment to another. Read only Added a read only configuration for session that disable the ability to submit a form. Integrations Filter archive web hook data Added ability to exclude data and paragraph filed types in archive web hook. Group data Added “group_data” array to archive api for future use. Dashboards Expiration widget Updated search expiry, Added 3 days and 1 week options. Applications BDI Builtin BDI interface. Electronic 101 form (טופס 101) We have renewed our 101 certification. Please consult with your reference regards fully compliant 101 template. All new client forms application Refactor of client forms application. It includes many new configuration and UI settings to match your brand looks Notes for Release 4.8.0 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. Release rollout schedule Pre production [preprod.cellosign.com]: xx Production [app.cellosign.com]: yy New features & enhancements Heads-up for using iframe Over the past year browser providers were and still consistently preventing and deprecating usage of iframes. Technology wise the prevention is about blocking cookies and outbound communications from the guest. Eventually, it is widely accepted, that iframe technology will be deprecated all together sooner or later. Although Cellosign allows to deploy views in iframes, we encourage you to adapt other methods. Sooner the better. Notes for Release 4.7.11 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. Release rollout schedule Pre production [preprod.cellosign.com]: released Production will be released at 28/07/24 New features & enhancements Attachments to client email With Cellosign we have two types of recipients that may receive an email at the end of a business process: agent and client. At the end of a business process a recipient of type agent will get on email that includes: signed PDF, raw data (Typically json file), attachments that were collected during the process. Client receives only the signed PDF. With this change. A file upload and image upload controls include option to attach the file to client email as well. Search in list of values field Typically a remote search in LOV fields should include some flexibility to avoid cases where spell is wrong or an hyphen is in between words. This is called a “Fuzzy” search. Cellosign search works this way and it’s good for most cases, in other cases it doesn’t. Mostly it doesn’t work well when the words are long 7 letters or more. For that purpose we have added option for select type. The default one is “Fuzzy” as it is today and the new option is “Strict”. The values Cellosign will look for are only ones which were typed. Fort more information see List of values control. Notes for Release 4.7.9(8) Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. Release rollout schedule Pre production [preprod.cellosign.com]: released Production will be released at 19/06/24 New features & enhancements Email validation On previous releases, Cellosign validated email extensions. With this release email validation is conformed to RFC 5322 standard which is basically composed of a string given that it includes “@” and a”.” in specific places. With this change there is no limitations on domain or sub domains. Company seal from image Cellosign includes a signature feature that embeds company details: name, company ID altogether with a graphic signature. With this release we added a new feature for which a client will be required to upload an image that will be used as a background for graphic signature. Email buttons recolored With this release button colors in emails has been modified from yellow to grey that conforms with contrast requirements for accessibility. Embed Image in PDF template Image controls for PDF and Hybrid templates are enhanced and can be embedded into the final PDF produced in Cellosign. Read here for further details and customization. Get sessions API enhancement Get sessions API enhanced to include assignee filter, that is the user whom created a session or was assigned to (“puh client”). See API Documentation for further details Notes for Release 4.7.8 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. Release rollout schedule Pre production [preprod.cellosign.com]: released Production will be announced separately New features & enhancements Company Registrar API We are happy to announce that we have added an interface to Israeli companies registrar (“רשם החברות”). The interface allow you to validate that a company number actually exists. In addition the interface enable to fetch the following company details: name (Hebrew and English) and company status. This feature is available on cloud installation. Please contact our support to check your eligibility for this feature SMTP Authentication Added new option to SMTP integration that requires no authentication. Please read the following documentation prior to implementation Security enhancement: blocked login pages on iframe In order to protect your data and your users from Click jacking and phishing vulnerabilities we have disabled the ability to carry out user login from an iframe. This security enhancement added to all pages that requires your users authentication: Login to main application, Login to Agent application and Login Tasks application. Client authentication to open invitations, client forms and OTP remain unchanged. Form control dependencies split Currently dependencies tab includes a query to trigger change of permissions and value to form control. This tab has now been split to two separate tabs: Conditional permissions and Conditional values. See here documentation page. It is advised to make sure that template with conditions values and permissions are working as expected. In case of an issue, please contact our support and we will be happy to help Notes for Release 4.7.4 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. Release rollout schedule Pre production [preprod.cellosign.com]: 17/08/23 Production [app.cellosign.com]: 23/08/23 New features & enhancements Default date and date time to date control Currently date control accepts a fixed date as a default value. With this release we have added the option to configure Date control to accept the date when transaction is generated. To configure current date apply “$now” to default value. Salesforce formula editor We have added into Salesforce “Percent” data type and now it can be edited and converted prior to propagation into form. Enhancements to paragraph control Added to new functionality to paragraph control: Input elements: Add input controls into paragraph. Placeholder: Add none-editable reference to other controls in the template Notes for Release 4.7.0 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. Release rollout schedule Pre production [preprod.cellosign.com]: 26/6/23 Production [app.cellosign.com]: 06/07/23 New features & enhancements Table footer We have added to Table control ability to configure footer row to include textual values and SUM function that SUM column values. See here for more details SMTP/SASL XAUTH2 Autentication We have added SASL XAUTH2 authentication for SMTP integrations. SASL protocol is a secured way to Authenticate SMTP requests with services such as GMAIL, Office exchange etc. See here for more details Validation errors On previous releases a “Custom error message” was ignored in some validations. With this release , in case custom error message is added to field configuration it will be used in case of validation error, regardless of the test case. If no custom error message is added, specific mesage for the test will be displayed. Ordered lists font We have made changes to ordered lists to include formatting of bullet items. See here for more details Notes for Release 4.6.0 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. Release rollout schedule Pre production [preprod.cellosign.com]: 18/5/23 Production [app.cellosign.com]: 01/06/23 New features & enhancements Connectors filters We have enhanced our connector functionality greatly to query and sort data from remote source based on complex conditions. Conditions can now meet any complexity of “AND/OR”, querying based on field types and compared with either fixed values or values already populated in a form. This option improves connector flexibility and to simplify connectors configuration. More details in Integrating a connector. Connector fields mapping We have enhanced our data mapping for filling forms automatically. On top of building a formula for converting native datasets, we have added the ability to CONCATENATE values and into one string and also the ability to repeat those as many as records matches the query. For instance this feature will enable you configure a result that include first, last name and DOB for all account contacts. More details in Integrating a connector. Client forms We have enhanced client forms view with automatic redirecting to list of transactions after form has been submitted. Also added texts to navigation buttons for better usage. Transaction board We have added to Transaction board the new features to access Workflow and BPM processes: Click on “See Workflow” to open Workflow or BPM diagram. Click on search icon to filter list based on workflow/BPM unique key to get all related sessions Click on Copy icon to copy the aggregating key to your clipboard Bug fixes On earlier releases search items on multiple selections in PDF documents was not enabled. Please see notes on configurations in List of values. Fixed issue with a display of conditions in a control group after modifying control ID. Notes for Release 4.5.0 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. New features & enhancements Enhancements to paragraph control Added option for nested numbering, i.e. 1, 1.1, 1.2 etc.. with configuration Added option to display text in columns (similar to news paper) using configuration Note: this features requires activation. Submit ticket to our support to apply. Enhancements to table control Table control was added with: Design options to control Font size and cell padding, Alignment Automatically add prefix and suffix to cells Improved responsive by automatically collapse rows in case table is wider then view Connector data mapping enhancements We have added new features for mapping of data objects from remote sources: Conversion of numbers Representation and format to numbers Representation and format to dates For more details see Data mapping and conversions. Connector description Descriptions for connectors have been improved to provide better visibility on the connector content. Heading texts improved to include reference to objects in remote data source Ability to add description on connector level Data tables enhancements Improved usage with format text switcher to display or hide text styling for clear view on content Row editor is fixed for easier navigation On paragraph connectors we added the ability to override border display. See more details in data tables Faster SEAL document SEAL API is used to create sealed (closed) PF documents without user intervention. We have improved this feature to response faster by 50%. This features requires activation. Submit ticket to our support to apply. Salesforce package enhancements We have added new methods to Salesforce package: SEAL: Create signed documents Delete: Revoke transaction See more details in Salesforce guide Apply signatures at bottom of PDF pages Normally when using HTML template to produce signed PDF documents, signatures like any other form element are applied per relative position on the PDF result. With this release we have added the ability to create Signature controls that can be applied to the bottom of the signed PDF. See more details in Signature documentation. This features requires activation. Submit ticket to our support to apply. Bug fixes On earlier releases landscape documents could be uploaded for which the result could have contain errors in signed documents. To prevent that, we have added an error response when landscape PDF document is uploaded with an API or agent application Announcements Cloud migration As previously announced, an upgrade to our cloud infrastructure (migrate to Azure) in production is planned at 23/4.As a result of the upgrade our IP addresses will also be changed.This is a list of current production IP and new infrastructure IPs: SegmentCurrent IPNew IpsInbound:Requests to https://app.cellosign.com, i.e. login, API request for new sessions34.120.149.10220.31.141.237OutboundRequests from Cellosign for Outgoing requests are API, Webhooks, SMTP, FTP, SSO and all custom integrations that submitted from Cellosign to your infrastructure.The new infrastructure includes only one IP that serve as a proxy for outbound traffic.35.195.39.15734.140.217.12835.195.63.17534.78.57.11220.126.234.162. Please make sure to list the new IPs before the planned migration date 24/03/2023 to prevent service blockage.As soon as the IP addresses have been whitewashed, please submit a service request to set up a joint inspection date. Make sure the new IP addresses are enabled before the test. We recommend for a joint test as soon as possible. Notes for Release 4.3.5 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. New features & enhancements Temporary account lock Prior to this change, five consecutive failed logins were locking a user account. Only user with project admin or above can release the account. While this is remain the default option, we have also added the option for a temporary lock. With this option, you will be able to setup a lock policy: Lock policy: Lock account after X consecutive failed logins. [That is the default policy] Temporary lock to prevent login for X minutes temporary lock based on two parameter: After how many consecutive failed logins the temporary lock kicks in For how long (in minutes) the account will be locked What‘s next? We advise you to review this change together with your organization security officer and choose appropriate lock policy for you. Adhoc form permissions Prior to this change, when a temporary session is created, permission defaults are applied to each field. In order to prevent errors in permissions, we have removed default permissions and leave it to the agent to define explicit permissions to each field. When field is added without permission a warning is displayed for adding permissions “Agent allowed” or “Client allowed”. Accessibility enhancements Over the last minor releases 4.3.1 to 4.3.5 we have released various changes and bug fixes for accessibility. Initial focus Prior to the following change the initial focus was applied to START button. With this modification, the focus has been moved to Hamburger icon on the Top-Left corner in left-to-right forms and Top-right corner in righ-to-left forms. Color switcher We have removed “Normal” color toggler from accessibility menu. With this change when “Monochrome” is activated form colors will be mokdified Preview texts We have added texts to screen reader in order to describe the PDF document applied to preview. Notes for Release 4.2.0 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. New features & enhancements Salesforce integration With this release we are very happy to introduce you with Salesforce integration to Cellosign. This feature opens up a world of new possibilities were the entire digital journey can be implementation with no APIs on the client can be carried out with APIs integration. Simply couple Cellosign and Salesforce, configure what data is connected for two ways integration. For more information please visit Connectors and Salesforce documentation pages. Geo location Added ability for Geo coding client location that includes a visible map, inserting an address or location manually or automatically with Client GPS or IP when applicable. Read more Passwords vulnerability check In addition to the regular passwords complexities, two-factor authentication we have applied additional security layer that check passwords renewals and passwords for new users with an internal vulnerable passwords database. When a user applying new password, password will first match the complexity and length according to your organization requirements and than match the password with passwords known to be vulnerable. Underline placeholder for empty fields New design option added to entry fields. Checking this option will include an underline where input value is empty. This is specially helpful when you need the final PDF result will show an empty value. To set this option: Click on template fieldClick on Design tabCheck “Apply underline in result PDF when field has no value” Note: This option is available for field of type: text, number, select, textarea, paragraph, date, pad, date, email, phone only. Email on Archive errors On previous version we have added a feature that post Email to configured recipients notifying them regards failed archive. Within this release we have incorporated meta data file that includes identical content and structure to data which was pushed through the API. Note: We advise you not to use the meta data from email to your application from number of reasons: Email servers are typically rendering files content, encoding etcWe can’t always be sure regards the failure reason so you may consider the meta data file as unsafe As a result of the notes above we will not be able to support cases where meta data from email is failed to upload into your APIs. Fixes #DEV-1052: Archive error notification in email are now posted with updated archive structure#BUG-1173: Signature padding on HTML to PDF when additional field on same column is now fixed#BUG-1351: Redirect URL at the end of session fail to redirect#BUG-1477: Client form screen fail to render data fields but instead display fields id Notes for Release 4.3.0 Over the past weeks we have been working on improvements to Cellosign platform. In this post you can see a list of what has been changed, updated, and/or what bugs have been fixed. New features & enhancements Updated Content Security Policy (CSP) We have updated our security policy to prevent access from forms to unknown web resources. Why is that important? We are considering that any form that posted to remote client contain sensitive and valuable information (health, financials etc). By adding external resources to forms, such as image backgrounds from external URLs or PIXEL implementation such as google-tag-manager, the form is exposed to external Attack that prevent us from keeping you and your clients data safe. What has been carried out on our side in that respective? We have scanned your templates, checked and validated external resources and explicitly added resources that are secured to our CSP whitelist. What should be done on your side? Background images to forms using URLs must be avoided. Use base64 strings for background images. This is how to do it. Case you require PIXEL support, please submit a ticket our support team. Add your PIXEL URLs to ticket for inspection. Software upgrades Software packages that are effecting remote client forms and agent application (co-browse) has been updated to latest release. We have carried out comprehensive testing to make sure applications are intact. However, in case your templates includes Custom CSS and Javascript we advise to carry out tests to make sure your custom software works as expected. To see custom code, login to application console. For each template, open “Settings” and on the right pane click “Javascript” and “Stylesheet”, case the left pane is not empty, please double check your template at work. Public page enhancement As you probably aware, template and BPM processes can be launched using a public template. Typically public pages require an input to initiate a process. Up to this release, public page is presenting page with required input. With this upcoming release input requirements can be added to URL in a querystring format. For example: Open the this url. https://preprod.cellosign.com/public/02774a7724ae4211a903043bd4171c96. It display a page where you will be required to enter name, mail and phone number. Alternatively, you can open this URL. All the required parameters are injected using a query string and the form will be opened instantly. Be advises that although this option is available use it wisely. Public pages with client data should be secured and posted to clients directly. DO NOT leave public URLs with client data out for grabs. Apply user context to form With this release you will be able to apply Agent context into form automatically. This can be helpful if you require Agent name,phone or email to appear on form automatically with no user intervention. To do so, you will need to apply context as default values to field in a form. For example, you would like an agent email to appear on form automatically. Add email field to form On field settings add “$initiator.email” to default value. Once new session is created the agent email will be displayed automatically Note: It is advised to use this option when it’s required. Do not expose your employees data when not needed. The following contexts are available for your disposal: DataContextNoteemail$initiator.emailUser login name$initiator.usernameTypically emailPhone$initiator.phoneFirst name$initiator.first_nameLast name$initiator.last_name Added “Table” element Due to multiple requests, we have added “Table” element to our form builder. For more details see reference to table in this guide. Data tables enhancements We have added new feature to data tables, that is the ability for data table cell to include input elements as well as static data. When this is useful? Let’s assume that you have an “Insurance proposal” that needs to be implemented. Your proposal might end up with hundreds or thousands of texts and input elements that are varied as our client engaging with the form, for instance, when “Second driver” is required, we want to show legal notice and inquire regards the potential driver(s). One way of doing this is implement the entire data set within the form as it’s normally being done, this can be tedious when there are lots of form elements… Another way is to implement it with data tables. With this enhancement, data table cells can include input elements as well as static data, so when client selects “Second driver” in the form, the entire set of texts and input will be displayed automatically, without the need to configure them in the form itself. More details in data tables reference. Fixes #BUG-1436: Date element accept wrong format when entered manually is fixed and now accepts manually entered values as configured in data time format options. #BUG-1362: On previous releases, when file was added to Google drive through Archive integration, date-time stamp was added to file name. This has been removed and file name includes only the file name convention, without date-time stamp. Notes for Release 4.1.84 Over the past weeks we have been working on improvements to Cellosign platform. In this blog post, you can see a list of what has been changed, updated, and/or what bugs have been fixed. Other than routine maintenance and bug fixes, the highlight for this release is infrastructure for Connectors. In this release and the next releases to come we will deploy direct connections to applications and databases that will enable you to design end to end applications with no APIs. NEW FEATURES & ENHANCEMENTS Data Tables Think about it as a custom table hosted in Cellosign. You can customize it any way you want and connect it to template. What it’s for? Consider the option when you have large repository of texts that needs to be incorporated into business process either as initial value, as a condition to other selection or per user engagement. Up until now that way to handle this process would have required to configure fields and conditions inline the template. In case texts needs to be incorporated into large amounts of fields and templates, this can be quite tedious. With this new feature you will be able to configure relational table with keys and data and use it in cellosign templates using our connector editor. This is specially become handy when you have extensive conditions to handle the texts and in case you have texts such as terms/legal that are expanded over large amount of templates, so you can keep it all in one place. Configuring data table To configure data table login to application and click “data sources” and “Tables”. Click add table and define: table name, columns as instructed on screen. Click to add rows. Eventually, you will have a data table with rows and columns. Note that “key” type columns are designated for the connector in next step so you can search matching records. Configure connector On template editor click integrations on top pane and then “Connectors”. In this screen you will see “Preset”, “Live”, “Submit” and “Post submit” for which our connectors will be integrated into. “Preset” is the ability to get values from the table on session initiation, requires no user intervention. “Live” will be configured when the connector require some of interaction from the user such as selecting value or click on a button. “Submit” and “Post submit” are for databases and apps such as salesforce or Dynamics [that are coming up in next releases]. To configure connector to data table click “add” on “Preset” or “Live” sections. Select data table you have configuredSet status “Active”Define the lookup:keys from the data table [one or more]Equation [for data table equal only is applicable]To which entity to compare with: form field value, label [integration] or fixed valueAdd conditions as many is needed for the lookupDefine what happens if query return no results, one or more than one resultOn “Live” you will need to configure how the connector is activatedon “Change”: As the user types in. Select the field from the list to attach the connector withon “Click”: select a button from the form that will activate the connectorFinally map the query result into the form fields. which value from data table goes to which field in form Connectors We have created a consolidated editor for all communications with a template. That includes: Integration with WebhooksTemplate integration to get data from remote source [See additional notes below]Data tables described in the section aboveUpcoming connector to Salesforce in Release 85 [next release]Upcoming connector to Dynamics and Databases in R86 What it’s for? Consolidation of connectors has been carried out to provide the user a complete 360 view on all inbound/outbound integrations with a business process. What has changed for Webhooks? Webhooks for template, on previous release, is configured under Template->integrations -> Webhooks. With this change Webhooks can be now edited under Connectors view. The new view is also includes “implicit” webhooks by default. What has changed for Template services? Template services, previusly on Template->integrations -> Template services, has no migrated both UI and functionality to Connectors with webhook. A new webhook type has been defined “WHEF_FORM_FIELD_CHANGED”. The new webhook, like any other webhook allow to define the endpoint for integration: url, methods and many more capabilities, on top of the previous implementation, such as authentication method, timeout etc. Once defined, on the project resources, it can be defined per template as well by adding fields mapping and behavior, button click or field on change. Form preview We have added the ability to view form before submission. This is very useful feature when you required that the end client will see the final PDF view before submitting it. To activate this feature, log in to template editor, click settings icon and tick “Show form before submission”. preview will be displayed with watermark so it cant be used as an evidence before actual submit. Note: up to release 84, this feature was available in PDF or Hybrid forms. Starting this release this feature is also available in HTML forms as well. Recipient password To secure forms for online clients Cellosign has OTP, password and authentication functionality that can be activated on a template Currently OTP and authentication are activated both globally and also on recipients level, meaning a template can be configure that first recipient requires OTP and second requires authentication. We have modified password functionality to be activated on recipient level as well. All templates carrying passwords functionality will be migrated with the new functionality. Note: Make sure to double check on pre-prod or production rollout that templates are working correctly. Extended recipients We have extended the maximum capacity for recipients in template configuration. Up until now max number of recipients per template was 7. With this enhancements there’s no limit on number of recipients that can be configured. Legacy archive: depreciation notice By the end of the year we will deprecate legacy archive method. The replacement for legacy archive is Webhook archive. This is relevant for you if you are using archive in one of these ways: Configurable archive in template settingsUse “archive_url” tag on integration Please be aware that deployments with this feature will not be supported by the end of 2022. Feel free to consult our support for transition. Other changes and Fixes Tokens removed from web server response headers to reduce visibility on application informationPer WCGA 2.0 for accessibility best practice we have removed high contrast view and applied changes for better engagement on “Monochrome” viewIsraeli ID validation now includes requirement for 9 digits Notes for Release 4.1.83 Over the past weeks we have been working on improvements to Cellosign platform. In this blog post, you can see a list of what has been changed, updated, and/or what bugs have been fixed. Some of the highlights for this release are: A) Visibility: We’re continuously investing lots of efforts to collect, provision and deliver to you quality heads up on errors. This release includes automatic notification on errors and ability to report directly from application console onto our ticket system while collecting valuable information that can save time on turn-around. B) Consistency: Several changes has been made to ensure inbound and outbound data with external applications is exchanged timely and accurately. Both SMS and Email default providers has been replaced to provide consistent service. New services our complied with ISO-27001, ISO-27799 and GDPR standards. NEW FEATURES & ENHANCEMENTS Errors notifications As part of our efforts for consistency we have published a tool that will alert closed circle of application administrators to receive email notifications regards errors in business processes. Errors may occur from time to time as result of incorrect process configurations, connectivity with 3rd party applications or issues with software. Rest assure we are constantly monitoring business processes on our monitors. When an issue occurs admins will receive an email with as much information as possible to extract from Cellosign in order to complete process manually so valuable data will not be comporomised. For example, a business process is completed, Cellosign is failed to transmit the product to an API [i.e signed pdf, attachments and metadata]. In this scenario Cellosign will deliver the signed document and metadata to admins in order to be archived manually. We are constantly improving our visibility on failures and this feature is planned to be improved in every new release . To configure admins to receive error notifications you will need organization or project manager privilege. Log into Cellosign, on the left tool bar click projects and enter email(s) in field “Send logs and errors to this address” on “Messages” tab We advise to add at least one recipient Inline ticket submission We have incorporated a ticket form within the application. Ticket can be submitted from two locations in the application: 1. At the bottom of the leftmost toolbar, click the headset icon2. In transaction board, toggle a transaction and click the headset icon We will collect as much information as possible into the ticket including the reporter contact details and post it to our support team. Clear field toggle button New functionality added to enable inline clear button in form. Using this functionality requires opt-in per field (turn it on)Clear button is enabled only when edit permissions are granted To turn on clear button enter into field configuration -> Values & Display tab and toggle on “Show clear button” Old browsers deprecation notice Cellosign is designed to provide clean and smooth user experience both for agents and remote clients. As part of our efforts, we have started a process of deprecating old browsers, first in line is IE11. [Specific notice for IE 11 published at April 18th]. We are planning to deprecate more browsers down the line. Heads up will be published in advance. For a remote client we will display the view below that will enable the client to capture QR code that carry the url provided and also a click to copy into other browser. Default Email provider We are in process for replacing our email provider from Mailchimp to Sendgrid. Over the last month we have successfully deployed Sendgrid service on our per-production and lower grade environments. Sendgrid proven to be more reliable in delivery and tracking. You may test the new mail provider on our per-production service on your convenient. The service will be rolled out to production altogether with this release. Specifically In case emails from Cellosign are transported to you by an organization mail server (i.e. Exchange) please make sure emails are not blocked. Certificate change During the upgrade of this release we will also replace our outdated certificate which due to expire on June 24th. New certificate is already installed on our per-production service. Should you require a CA file to flush it onto your ends please contact our support at service@cellosign.com Other changes and Fixes Templates listing is now ordered by Template nameAdded the ability to release user from lock where the Authentication system is remote such as in OKTA, Active Directory or Azure AdReplaced SMS provider. we have deployed inforu as SMS provider which has been prove to be more timely and consistent service. The change is seamless and does not require any action on your end. you’re welcomePer WCGA 2.0 for accessibility best practice we have removed high contrast view and applied changes for better engagement on “Monochrome” view Notes for Release 4.1.82 First and foremost we are happy to announce that we have been certified for both ISO-27001 & ISO-27799. As you probably aware, certification process requires lots of efforts to make sure we are working and abiding to information security’ best practices and standards in order to keep your data safe. Nevertheless, we haven’t slowed down with enhancements and over the last weeks, we have been working on improvements to Cellosign platform. In this blog post, listed what has been changed, updated, and/or what bugs have been fixed. NEW FEATURES & ENHANCEMENTS Client Identity Verification CIV module authenticates remote client identity, throughout comparing an official document such as ID or Driving License with a liveness test and a live selfie . The entire verification process is completely automated and does not require an agent intervention. Read more about this feature on this post. Image Upload and Compression First, for your convenient, we have removed upload limitation on image upload file size. And couple of notes on this change: All images uploaded to Cellosign are compressed and resolution is reduced to 1300px max (width/height)Mostly after compressions, image file tends to reduce up-to 1Mb. Please be aware to set up your APIs in case your forms use lots of image uploads OTP screen re-design One time password screen for clients has been re-designed now includes more engaging UI, Send again and post OTP to other location buttons. Fixes Transactions are now displaying list of destinations where invite posted to and not just the first destinationAccessibility: PDF files generated from Cellosign are now compatible to be read automatically with NVDA screen readerAccessibility: Paragraph elements are now added with new attribute presentation used by assistive technologiesAccessibility: Improve Monochrome and High contrast for accessibility modeAccessibility: Headings has been modified to adapt context hierarchy to headings:Page heading defaults to H1. Styling options moved to page style tabSection heading defaults to H2Template/form heading has been modified with shorthand “…” case template name is too longLogo on top is now hidden on mobile screen FAQs How to empty Cache? Using chrome browser: On your chrome browser page, click F12. Right click the refresh image: A menu will open with 3 options. 3. Choose the 3rd option – Empty Cache and Hard Reload: Client did not receive email or SMS. What to do? Emails and text messages in Cellosign are posted through 3rd party services. In case a message was posted successfully from Cellosign and acknowledged by the provider, you will see a green check next to to recipient address in the transaction board. Green check means that message has been provider has accepted Cellosign request for posting a message to the recipient. We do not have the visibility if messages actually delivered to recipient or has been blocked somewhere on delivery. Message block may occur for any number of reasons, such as, Phone that has no permit for text messages, company email that may receive message from known source. In case your organization requires a complete visibility on messages delivery it is advised that you will integrate with service providers to gain access to full transaction trail. Please see SMTP and SMS integrations to connect with your provider Client uploaded a file and I received a ".bin" file, why? For security reasons, file that is uploaded into form is scanned and also a check for its identity is carried out. Cellosign process does not take the file extension for example “.txt” that was uploaded for granted but rather check that the file signature (“identity”) and calculate the output file extension. In some cases a file could be uploaded as “.txt”, “.pdf” for example but the archived document could be “.bin”. That is because the file carries binary identity, mostly octet-stream identity. OK, so what do I do next? Since this file cannot go through Cellosign with the original extension contact your client to get the file in other mean. PDF is generated with empty page. What to do? Each block printed on a PDF includes a markup to clear and preserve space from the content above it. The block also takes into account the height it needs to preserve. Mostly this would work just fine as expected. However on large text blocks (Mostly with paragraphs and tables), in case that the block appears in top of the page please use the following class remove-clear on section level (As appear in the image) to prevent your text-block from “jumping” to the next page. Client could not submit a form. What to do? Step 1: check mandatory fields First, check with the client if he has filled in all the mandatory fields in the form. If the mandatory fields are not filled in, the customer will not be given the opportunity to send the form. In Cellosign, verification of the correctness of data is activated for certain fields. Therefore, make sure that the mandatory fields are filled in according to the requirements. For example: ID field contains a proper 9-digit number, an email address in a proper format, a customer number in the accepted format, and so on. In these cases, there is a red note under the field that the value entered to the field is incorrect. Step 2: Check internet connection If the client is still unable to send the form, it is recommended to check the Internet connection. If the client’s internet connection is fine, there may be a problem with the application of the form. Step 3: Check if submit size exceeded Templates may include Image and File collection controls. Specifically files can get to 5Mb each. Assuming template has many controls to collect files and images, the entire submit might exceed Cellosign limit for maximum body size: On production the limit is set to 50Mb. On Pre-production environment the limit is set to 30Mb. How to verify that this is the issue? Open browser console and search for HTTP code 413 which implicates that this is indeed the problem. How to resolve? Reduce the amount of file and image collection and make sure to reduce the maximum weight allowed for each. Step 4: Contact support Please contact support in your organization, if issue is not resolved, your support should contact Cellosign support with the relevant details If no problems were found in the form implementation, please contact Cellosign support. Client entered the form, started filling in details and then the form disappeared. What to do? The definition of the length of time in which a form can be filled out or a business process can be completed in Cellosign is determined by the implementer of the form, according to the definitions and needs of the organization. The default form availability for a client is 48 hours, however for various reasons such as a time limit or on the other hand a complex form that requires complex input of fields and attachments, it is possible to extend or shorten the time that the form will be available for the client. Every time we send a form to the customer, we send a unique link. If the defined period of time has passed, the form will no longer be available and it is required to send the form one more time, by sending a new unique link. If the expiration of the form has not passed, the client should enter the same link again, and continue until the end of the process. All the details entered by the client and/or the agent will be saved in the form, until the end of the availability period of the form. For more information about the expiration of the form read here. If the expiration of the form has not passed, however the customer clicked the link again and the form still did not open, please contact Cellosign support to check or restore the form. Client sent the form, but the form did not reach my email. What to do? In this case there can be several options. The first and most common possibility is that the customer did not actually complete the form submission process. To verify that the client has indeed sent the form, check in the Processes screen, under “Submitted” column. If no information (date and time) appears under “Submitted” column, it can be concluded that the client did not complete the process of sending the form at all, and therefore the form was not received by email. See the image below. A second option is when the information appears under “Submitted” column, meaning that the customer did send the form. Please check that the email was not received in spam or another folder. If an email was not received in spam or other folders, then the next option is to check in the application of the form. In the process of creating the digital form, you can choose with each sending of the form who will receive a signed copy. Often the reason why a form does not reach the email is that the definition has been changed to another email or there is “no email” defined. If this option has also been checked and rejected like all the other options, please contact Cellosign support to check or restore the form. How do I know that the client has opened the form? There are three ways to check if the client has opened the form: Verification from Dashboard. Verification from Processes screen. Verification online from the Show Agent screen. Verification from Dashboard In Dashboard screen there is a section called “Viewed” where you can see all the forms that were viewed by clients in last 24 hours. In addition, in all the other sections there is a column “Viewed”, that is automatically updated with the date and time details once the client opened the form. For more information about Dashboard read here. Verification from Processes screen There is another way to check if a client has opened the form, for any user with agent or project manager permissions. In Processes screen there is a column with the title “Client logged in” and there you can check last date and time the client opened the form. For more information about Processes window read here. Verification online A representative from the organization works in screen sharing with a remote person online. The work is done on top of Show Agent interface. Once the client opens the form the green indicator will appear at the bottom of the screen at the agent side for a short time. For more information about Show Agent read here. How do I know that the client has submitted the form? There are three ways to check if the client has submitted the form: Verification from Dashboard. Verification from Processes screen. Verification online from the Show Agent screen. Verification from Dashboard In Dashboard screen there is a section called “Submitted” where you can see all the forms that were submitted by clients in last 24 hours. For more information about Dashboard interface read here. Verification from Processes screen There is another way to check if a client has submitted the form, for any user with agent or project manager permissions. In Processes screen there is a column with the title “Submitted” and there you can check date and time when the client submitted the form. For more information about Processes interface read here. Verification online A representative from the organization works in screen sharing with a remote person online. The work is done on top of Show Agent interface. At the end of the process after the client completed and submitted the form the green indicator will appear at the bottom of the screen at the agent side for a short time. For more information about Show Agent interface read here. Client clicks the form link, but the form does not exist. What to do? First, check that the client is properly connected to the Internet. Then check the time settings of the form. Every time we send a form to the client, we send a unique link that is valid for a certain period of time determined by the implementer of the form, according to the definitions and needs of the organization. For more information about the expiration of the form read here. If the defined period of time has passed, the form will no longer be available and it will be necessary to send the form one more time, by sending a new unique link. If the expiration of the form has not passed, please contact Cellosign support to check or restore the form. Client could not enter data into a certain field. What to do? In Cellosign system it is possible to define permissions for each field separately, who is allowed to enter data into a certain field. Data can come from another system in the organization or can be entered by the agent or by the client or both, and so on. First, need to check with the form implementer that the client is allowed to enter data. See the image below. If it was defined that the client does not have permissions to enter data in a certain field, he will not succeed. It can be said that in most cases where a client will not be able to enter data into a certain field, the problem is in the permissions of the specific field. If the issue is checked by an implementer and indeed permission is given to the client and yet he is unable to enter data, apparently this is a malfunction. Please contact Cellosign support to check the form. I exited the agent screen and I want to help the client to complete the form. What to do? Agent screen can be opened again from Processes interface, for any user with agent or project manager permissions. Press “+” next to the transaction that needs help: After it press “Show Agent” button to open the transaction from the agent side: For more information about Processes window read here. How can I send a form to the client? There are several options to send a form in Cellosign application: From Show Agent screen. From Dashboard screen. From Templates screen. Send a form from the Show Agent screen Press the “Show Agent” button at the top of the screen and select a form from the list. Enter the client’s email address or mobile phone number at the top of the screen and press “Connect” button. At this point, when the client opens the link from the phone message or the email, you can both work together on the form. For more information about Show Agent read here. Send a form from the Dashboard panel There are two options to send a form from the Dashboard: Initiate New Process section. Select a form from the list and press Send. The template will be opened at the Agent screen. Add phone number of the client or email address where the client will be able to open the form and add the relevant details. Press “Connect” button to send the form to the client. Initiate Ad-Hoc Process section. Drag PDF file to the field or upload it by pressing “click here to upload” and selecting PDF file location. By pressing “Send” button the file will be opened at the Agent screen. Press “Add Fields” button to add controllers. Add phone number of the client or email address where the client will be able to open the form and press “Connect” button to send the form to the client. For more information about Dashboard read here. Send a form from the Templates screen Templates panel displays the list of templates related to the project. The page is accessible for users with “Project manager” and “Organization manager” permissions. Go to the Templates screen, select a form template from the list and click the template name. From the template toolbar press the “Show Agent” button to open the template in the Agent screen. For more information about Templates read here. Security Supported browsers Our current approach for supported browsers is blacklist and no whitelist. Blocking specific browsers and releases intends to remediate: Popular browsers that are vulnerable or EOL with the limitation of popularity Browsers or UA that known to be vulnerable Browsers that does not make adequate use or no use at all to new technologies. Specifically use of cookies, local storage, recent CSS etc. In the near future we intend to modify our approach to whitelist. In that event only specific browsers and versions will be allowed for service What browsers are blacklisted? BrowserVersionNoteChrome80 or lowerSamsung Browser13 or lowerFirefox95 or lowerYaBrowser20 or lowerSafari15.3 or lowerInternet explorerAll version Edge80 or lowerOpera67 and below How to protect forms? We are dedicating significant effort to safeguarding your data and your clients’ data. While some methods are fully covered by us, others require your attention. Below is a list of the protections we provide for forms. Before we begin let’s clarify that we have a separate set of rules for “User” which are authenticated and authorized personnel whom are permitted to access Cellosign resources. Typically these users are connected to Cellosign through your organization IDM. (Azure Ad, LDAP etc..)Forms that needs to be filled by your users will require their authentication. This page is about end-clients. Obviuous Reference Accessibility Privacy statement Introduction This privacy statement (“Statement”) applies to Republix Ltd. which develop and operate the Cellosign system (together “Company” “we,” or “us” and the “System”). The security and privacy of your information are very important to us. Whether you are using one of our services as a cust-omer, potential customer, or just visiting our website, we want you to trust us with managing and protecting the information that you provide us with. We have prepared this statement to explain more about who we are and how we collect and manage your information. This site is a general audience site which is neither designed nor intended to collect personal information from children and/or minors. In order to ensure compliance with the provisions of the law, children under the age of 13 should not provide use this site or the System. By using any of our products or services (including our website) and/or by agreeing to this Statement, e.g., in the context of registering for any of our services or by any other means, you understand and acknowledge that we will collect and use Personal Data as described in this Statement. It is important to note that this statement applies only to the data which is being collected and processed in our website by the company. Cellosign System is a product of the Company, which allows Company’s customers to easily create and manage forms for the collection of data. It should be emphasized, that the Company is not the owner of such data, is not allowed to use any of this data and has no control regarding the use of this data. Any inquiry or complaint regarding the data collected by any form in the system should be addressed to the relevant company/organization which is the owner of the data. Who we are and how can you contact us Republix Ltd. Kibutz Kefar Szold, pob180, 12230 Israel Phone +972 -525-794-833 Email Info@Cellosign.com While you are visiting our website, we might collect some information about your use in our website for our purposes, as set forth by this Privacy Statement. Therefore, and with regard to any such Personal Data collected, we are deemed as the Controller for GDPR purposes. Questions, comments, requests and complaints regarding this Statement and the information we hold are welcome and should be addressed to us by using the contact details above. All requests will be dealt with promptly and efficiently. You have the right to make a complaint at any time to the relevant supervisory authority for data protection issues. however, we will appreciate the chance to deal with your concerns before you approach the authorities, so please feel free to contact us in the first instance. Information we may collect from you “Personal Data”, or personal information, means any information about an individual from which that person can be identified. We collect Personal Data from you voluntarily when you provide such Personal Data to us, or via our services and websites with which you voluntarily interact. We may also obtain such Personal Data about you as may be provided to us in the course of our legitimate business activities. You do not have to provide us with your information, but in some cases, if you do not, it may mean that you are unable to use our services. For example, we may be unable to complete a requested “contact form” inquiry, unless you’ll provide us with your contact details. When you use our website or services and choose voluntarily to provide us with your information, we might collect and process the following information: Identity Data – including full name, username or any similar identifier, title, date of birth and gender and any other information provided by you upon your sole discretion. Contact Data – including email address and telephone numbers. Usage Data – includes information about how you use our website and services. Technical Data – includes internet protocol (IP) address, the device you are using, browser type and version, screen resolution, time zone setting and location, browser plug-in types and versions, operating system and platform and other technology on the devices you use to access this website. Marketing and Communications Data – includes your preferences in receiving marketing from us and our third parties and your communication preferences. We also collect, use and share Aggregated Data such as statistical or demographic data for any purpose. Aggregated Data may be derived from your Personal Data but is not reveal your identity. How is your Personal Data Collected We use different methods to collect data from and about you, including through: Direct interactions – You may give us your Identity, Contact and Financial Data by filling in forms (e.g. “Contact Us” or “Newsletter Subscription”, etc.) or by corresponding with us by phone, email or otherwise. Automated technologies or interactions – As you interact with our website or any other system operated by us, we may automatically collect Personal Data (please refer to the description below, under “Cookies Usage”). Third parties or publicly available sources – We may receive Personal Data about you from various third parties and public sources, e.g.: advertising and social networks, analytics providers, search information providers. Cookies Usage Like many other websites, our website may use Cookies or Other Technologies (such as “pixel tags”, “web beacons”, links in emails, JavaScript, device IDs assigned by Google or Apple, or similar technologies, collectively “Other Technologies”). Cookies are a small text file that is placed onto an Internet user’s web browser or device and is used to remember as well as obtain information about that party. Cookies and Other Technologies allow us and third parties to obtain information about your visits to our website, including to analyze your visiting patterns, and to deliver online and mobile advertisements, messages, and content for us and others that are specific to your interests. In addition, Cookies may be used on the site in order to improve your experience. We may use various types of Cookies: Essential Cookies – which are necessary for the site to work properly; Functional Cookies – designated to save your settings on the site – your language preference or other view preferences; Session Cookies – used to support the functionality of the website – such Cookies are stored only temporarily during a browsing session and are deleted from your device when you close the browser. Targeting Cookies – these cookies are used to collect information from you to help us to improve our products and services as well as serve you with targeted advertisements that we believe will be relevant to you. Social networks Cookies – Social Plug-In Cookies (e.g. Facebook) enabling sharing of information with your social networks accounts to be smooth and seamless. Analytics Cookies – give us aggregated information which enables us to improve the way our website works, e.g. Google analytics. Please note that the data collected by use of Cookies may be linked to and combined with any other data, including Personal Data. Managing cookies and opting out: aside from the Essential Cookies described above, you can always choose to configure your browser to reject all cookies or notify you when a cookie is set, but sometimes in that case, certain services, features, and functionality in our website may not be available to you. You can always delete your browser history in order to delete any cookies from your computer. The Legal Basis for the usage of your Personal Data We will only process and use your Personal Data when the law allows us to, i.e. when we have a Lawful Basis for such usage. Such lawful and legal basis can be any of the following: Processing actions which are related to your reservations and/or requests, to carry out our obligations arising from any contracts entered between you and us. For example, contacting you per “Contact” form filled by you; our use of your information is necessary to meet responsibilities we have to our regulators, tax officials, law enforcement, or otherwise meet our legal responsibilities; our use of your information is in our legitimate interest as a commercial organization. For example, to operate and improve our services and to keep people informed about our products and services (including for profiling and targeted advertising). In these cases, we will look after your information at all times in a way that is proportionate and respects your privacy rights, making sure our legitimate interest is not overridden by your interests or fundamental rights and freedoms; You have provided us with your consent for the process of your Personal Data, upon your sole discretion and free will to use our website for making online purchases. In general, and as detailed above, we do not rely on consent as a legal basis for processing your Personal Data. Yet, in any case in which you have provided your consent to our processing of your information, you can withdraw this consent at any time by contacting us through the contact details provided above. The purposes of the processing We might use your data in order to: enable you to use our website and services in the most effective way, including the personalization of your experience by presenting content tailored to your interests; to meet or comply with any applicable rules, laws, regulations, codes of practice or guidelines issued by any legal or regulatory body; assess or evaluate the effectiveness of our system and services, as well as any technical and organizational measures designated for the protection of your Personal Data; protect our rights and legitimate interests, as well as defend against any lawsuit, legal claim or complaint; to conduct any other activities that are required to provide our services. Transfer and disclosure of Personal Data We are not in the business of selling your Personal Data. However, we may disclose your Personal Data to third parties in a variety of circumstances in the ordinary course of operating our business, such as: Disclosure of Personal Data to third-party service providers, providing us with services supporting our website and ordinary course of business, e.g. system, storage and computing services; Use of third-party services supporting our marketing efforts, in accordance with applicable law; When we have a legal obligation to do so, or when where are allowed to do so under our legitimate interests. In any such transfer we will take steps to make sure such transfer is carefully managed to protect your privacy rights: transfers within our group and affiliates, will be subject to an agreement / policies and procedures made to ensure that your data receives an adequate and consistent level of protection as required by applicable law; transfers to any subcontractor or processor will be subject to contractual terms ensuring the security and protection of any Personal Data under any such sub-processor, in accordance with applicable law provisions; any transfer of data which originates in the European Union (“EU”) to a country outside of the European Economic Area (EEA), shall be made in compliance with the provisions of chapter 5 of the GDPR. Such transfer can be made to countries which are recognized as providing an adequate level of legal protection or where we can be satisfied that alternative arrangements are in place to protect your privacy rights, e.g. the EU-US Privacy Shield; any requests for information we receive from law enforcement or regulators will be carefully validated before the disclosure of any Personal Data. Links to other sites Our website may include links to third-party websites, plug-ins and applications. Clicking on those links or enabling those connections may allow third parties to collect or share data about you. We do not control these third-party websites and are not responsible for their privacy statements. When you leave our website, we encourage you to read the privacy notice of every website you visit. How we secure your information We are committed to protecting the security of your Personal Data. We use a variety of security technologies and procedures to help protect your Personal Data from unauthorized access and use. However, the collection, transmission and storage of information can never be guaranteed to be completely secure. Yet, we take steps to ensure that appropriate security safeguards are in place to protect your information, and we will continue to revise our policies and implement additional security features. Retaining your information in our systems We will only retain your Personal Data for as long as necessary to fulfil the purposes we collected it for, including for the purposes of satisfying any legal, accounting, or reporting requirements. We have defined data retention priods for any data item in our systems, ensuring minimization of retention periods. In some circumstances we may anonymize your Personal Data (so that it can no longer be associated with you) for research or statistical purposes in which case we may save and use this information indefinitely without further notice to you. Data Subjects’ rights under EU data protection laws – GDPR Under EU law, EU residents and individuals, have certain rights to apply to us to provide information or make amendments to how we process data relating them: right to access your Personal Data – you can ask us to confirm whether or not we have and use your Personal Data, and if so, you can ask for a copy of your data; right to correct your Personal Data – you can ask us to correct any of your Personal Data which is incorrect, after verifying the accuracy of the data first; right to erase your Personal Data – you can ask us to erase your Personal Data if you think we no longer need to use it for the purpose we collected it from you. you can also ask for such erasure in any case in which the process of your data was based on your consent, or where we have used it unlawfully or where we are subjsect to a legal obligation to erase your Personal Data. any request for such erasure will be subject to our obligations under the law (e.g. our obligation to keep some records for tax or customs purposes); right to restrict our use in your Personal Data – you can ask us to restrict our use of your Personal Data in certain circumstances; right to object to how we use your Personal Data – you can object to any use of your Personal Data which we have justified by our legitimate interest if you believe your fundamental rights and freedoms to data protection outweigh our legitimate interest in using the information; you can always require us to refrain from using your data for direct marketing purposes; you can ask us to transfer your information to another organization and/or provide you with a copy of your Personal Data. We may not always be able to do what you have asked, for example, if it would impact the duty of confidentiality we owe to others, or if we are otherwise legally entitled to deal with the request in a different way. However, we encourage you to contact us with any such request, and we will be happy to assist you. Special Notification for California Residents Individual customers who reside in California and have provided their personal information to us may request information about our disclosures of certain categories of personal information to third parties for their direct marketing purposes. Such requests must be submitted to us through the contact information Specified above. Changes to this Privacy Statement We reserve the right to change this statement from time to time at our sole discretion. If we make any changes, we will post those changes here so that you can see what information we gather, how we might use that information and in what circumstances we may disclose it. By continuing to use our site or our services or otherwise provide data after we post any such changes, you accept and agree to this statement as modified. Effective as for August 2019 Terms and conditions
Newsletter Newsletter publications. Read the latest news. Articles Cellosign tools of Notifications & Reminders In today’s fast-paced world, it’s easy to forget important tasks. This is where Cellosign tools of notifications and reminders come in handy. Messages that are sent to the user to remind them of an upcoming task, are a great way to keep users informed and engaged, and can help to increase customer satisfaction and loyalty. Notifications and reminders can be used in a variety of situations, They can be sent via email, text message, or through the app for a specific or multiple customers. The key is to send them at the right time, and in the right way, to maximize their effectiveness. One of the primary benefits of Cellosign notifications and reminders tools is that they help to reduce the number of missed deadlines. By sending a timely reminder, you can ensure that your customers pay their bills on time or complete other important tasks. This can help to increase customer satisfaction, as customers are more likely to be happy with a service that is reliable and efficient. Automate notifications throughout Template, Workflow or BPM Another benefit of notifications and reminders is that they can be used to encourage customers to take action. For example, if you’re trying to get customers to complete a business process, such as filling out a An accession document or Purchase of services, you can send a reminder that includes a call to action. This can help to motivate customers to complete the task, and can increase your response rates. When sending a reminder to encourage customers to complete a business process, it’s important to be clear and concise. Your message should include a clear call to action, such as “Please fill out the attached form by the end of the week”. You should also provide any necessary instructions or links to make it as easy as possible for the customer to complete the task. In addition, it’s also important to be friendly and engaging in your reminder message. Use a conversational tone, and try to connect with your customer on a personal level. For example, you might start your message by saying “Hi David, we just wanted to remind you to fill out our survey”. This can help to create a positive impression, and can encourage the customer to take action. Send reminder to a specific customer In summary, Cellsign notifications and reminders tools can help you achieve an effective way to keep customers engaged and informed. They can be used in a variety of situations, and can help to increase customer satisfaction and loyalty. When sending a reminder to encourage customers to complete a business process, be clear, concise, and friendly, and include a clear call to action. By following these guidelines, you can increase your response rates and ensure that your customers stay engaged with your business.
Cellosign tools of Notifications & Reminders In today’s fast-paced world, it’s easy to forget important tasks. This is where Cellosign tools of notifications and reminders come in handy. Messages that are sent to the user to remind them of an upcoming task, are a great way to keep users informed and engaged, and can help to increase customer satisfaction and loyalty. Notifications and reminders can be used in a variety of situations, They can be sent via email, text message, or through the app for a specific or multiple customers. The key is to send them at the right time, and in the right way, to maximize their effectiveness. One of the primary benefits of Cellosign notifications and reminders tools is that they help to reduce the number of missed deadlines. By sending a timely reminder, you can ensure that your customers pay their bills on time or complete other important tasks. This can help to increase customer satisfaction, as customers are more likely to be happy with a service that is reliable and efficient. Automate notifications throughout Template, Workflow or BPM Another benefit of notifications and reminders is that they can be used to encourage customers to take action. For example, if you’re trying to get customers to complete a business process, such as filling out a An accession document or Purchase of services, you can send a reminder that includes a call to action. This can help to motivate customers to complete the task, and can increase your response rates. When sending a reminder to encourage customers to complete a business process, it’s important to be clear and concise. Your message should include a clear call to action, such as “Please fill out the attached form by the end of the week”. You should also provide any necessary instructions or links to make it as easy as possible for the customer to complete the task. In addition, it’s also important to be friendly and engaging in your reminder message. Use a conversational tone, and try to connect with your customer on a personal level. For example, you might start your message by saying “Hi David, we just wanted to remind you to fill out our survey”. This can help to create a positive impression, and can encourage the customer to take action. Send reminder to a specific customer In summary, Cellsign notifications and reminders tools can help you achieve an effective way to keep customers engaged and informed. They can be used in a variety of situations, and can help to increase customer satisfaction and loyalty. When sending a reminder to encourage customers to complete a business process, be clear, concise, and friendly, and include a clear call to action. By following these guidelines, you can increase your response rates and ensure that your customers stay engaged with your business.
Archive When a business processes is completed there are couple of options to send process products to your application. One way to do that is by using Archive webhook. Archive is a standard Post request that includes all the process data. Among other bits of data, it includes: Data from the submitted form Attachments that were added to the process Signed and locked PDF document Information regards the client and more Why do I need this? Archive webhook can be very useful when you need a resilient method to accept session product. Other methods, such as storage or SMTP are typically a-synchronous and not as much resilient as an API because it provides a real time acknowledge. This method also includes a fail over and alert mechanism. To add an archive webhook: follow Webhook guide to add new webhook. See below a guide for archive body request and expected response. See below posting data elements Archive request and response This is a description for Body request posted from Cellosign to your API. ElementWhat it’s for?EventObject that includes Event type: WHP_ARCHIVE and time stampSession This object includes complete details on the session(s). Since business process may include number of sessions, all the sessions that has been taken place with this process are listed here. Each session includes the following elements: “id”: session token“author”: User who created the session“reference”: aggregator ID for business process.“transaction_number”: ID for transaction that can be located in cellosign UI application“recipient”: full disclosure on where invitation and OTP were posted as well as, also in case of a workflow this will indicate the recipient id in the process and it’s convention name“submission_details”: Client browser details, IP, User agent and Geo location details when collected and applicable“labels”: This is a key value object in reference to values injected to labels. See API documentation for details“created_at”: Time this session created“submitted_at”: Time this session submitted by client“template”: Template id“integrations”: List of integrations that were executed in this sessionsignaturesArray of each signatures. For each signature element1. Field ID2. When signature pad was signed3. Signer details: id and convention4. Key/value labels that are attached to signature pad, if anydataList of all form elements , each form element includes:1. element id2. value3. element type4. visible on final pdf true or false5. page and coordinates [top,left, width, height]: these values represents the absolute position of the element on the PDF fileattachmentsList of attachments being collected throughout the process. each element on the list includes:1. Form element id2. Filename3. mime type4. Base64 string of the filesigned_documentSigned and locked PDF document. includes: file name, mime type [application/pdf] and base64 string of the filegroup_dataArray data , for future use { "event": { "type": "WHP_ARCHIVE", "timestamp": "2022-12-21T22:29:17.603248" }, "reference": "f51c66ba-d33a-4c59-b63a-aa270383fb9e", "sessions": [ { "id": "wSYqmI4xsE", "author": "john@example.com", "reference": "f51c66ba-d33a-4c59-b63a-aa270383fb9e", "process_id": "f51c66ba-d33a-4c59-b63a-aa270383fb9e", "process_number": 100, "transaction_number": 30, "recipient": { "id": 1, "name": "client", "otp_destination": { "address": "client@example.com", "type": "email", "provider": null, "status": "sent" }, "invitations": [ { "address": "client@example.com", "type": "email", "provider": null, "status": "sent" } ] }, "submission_details": { "ip": "127.0.0.1", "user_agent": "Best browser ever", "device": "mobile", "latitude": 33.196944, "longitude": 35.543705, "accuracy": 1000 }, "labels": { "CUSTOMER_TAG": "CUSTOMER_VALUE" }, "created_at": "2022-12-21T22:29:17.603287", "submitted_at": "2022-12-21T22:29:17.603290", "template": { "id": "9fa70d4ccea84262b1ed2308a07a3fb4" }, "integrations": [ { "id": "861c85ff-ba57-4679-8a63-c731d4e7b10b", "type": "EF_CLIENT_LOGGED_IN", "status": "success", "executed_at": "2022-12-21T22:29:17.603312", "payload": null, "error": null } ] } ], "signatures": [ { "id": "SIGNATURE1", "signed_at": "2022-12-21T22:29:17.603330", "signed_by": { "id": "1", "name": "client" }, "labels": { "SOME_TAG": "SOME_VALUE" } } ], "data": [ { "id": "SOMEFIELD1", "value": "SOMEVALUE1", "top": 65.91806722689076, "left": 8.194774346793352, "width": 28.8781512605042, "height": 2.048693586698337, "page": 1, "type": "text", "visible": true, "meta": {} }, { "id": "SOMEFIELD2", "value": "SOMEVALUE2", "top": 65.91806722689076, "left": 8.194774346793352, "width": 28.8781512605042, "height": 2.048693586698337, "page": 3, "type": "text", "visible": true, "meta": {} }, { "id": "SOMEFIELD3", "value": "SOMEVALUE3", "top": 65.91806722689076, "left": 8.194774346793352, "width": 28.8781512605042, "height": 2.048693586698337, "page": 0, "type": "select", "visible": true, "meta": {} }, { "id": "SOMEFIELD4", "value": "4a45b2df-f7bd-48bf-a2b4-b8405eb51194", "top": 65.91806722689076, "left": 8.194774346793352, "width": 28.8781512605042, "height": 2.048693586698337, "page": 0, "type": "payment", "visible": true, "meta": {} }, { "id": "SOMEFIELD5", "value": "32.001186,34.9413393", "top": 65.91806722689076, "left": 8.194774346793352, "width": 28.8781512605042, "height": 2.048693586698337, "page": 0, "type": "location", "visible": true, "meta": { "geocoder": "Arlozorov St 160, Tel Aviv-Yafo, Israel" } } ], "attachments": [ { "id": "ATTACHMENT_FIELD_ID", "filename": "SOMEFILENAME1.png", "mimetype": "image/png", "content": "BASE64 file content" } ], "payments": [ { "status": "success", "type": "verify_credit_card", "transaction_id": "4a45b2df-f7bd-48bf-a2b4-b8405eb51194", "session_id": "wSYqmI4xsE", "provider_transaction_reference": "4f33600c-34bf-4cb1-af3a-52237b1ecc5a", "provider_transaction_result": { "currency": "ILS", "card_mask": "458045******4580", "internal_transaction_id": "69703676", "club_code": "", "credit_company": "Visa", "club_id": "", "card_id": "1080131215624580", "session_cd": "414ecb3e88ac0148eaec9c5efbad68a8a3fb60674b4e5f92ec0c0d9a709d5039", "card_expiration": "0724", "card_brand": "Visa", "card_aquirer": "Alphacard", "total": "2100", "card_no": "xxxxxxxxxxxx4580", "life_style": "1", "cguid": "69796709", "auth_number": "1579133" }, "amount": 2100 } ], "signed_document": { "filename": "SIGNEDDOCUMENT.pdf", "mimetype": "application/pdf", "content": "BASE64 file content" } } Archive response A response from the API should include: status: “0” for success or “-1” for an error . In case of an error, please provide enough details in “errordesc” key. In case of success you may response with reference or/and a url to any object/file. This can be convenient for tracking or debugging in case an issue is raised { "status": "0", "document": { "reference": "1bbc36dd-6e6b-4ab2-bb97-4ee46627bcab", "public_link": "https://mystorage.example.com/1bbc36dd-6e6b-4ab2-bb97-4ee46627bcab" }, "errordesc": "" } { "status": "-1", "document": null, "errordesc": "Something goes wrong" } Posting data elements By default Archive webhook include that entire data layer from the form. Each field has an entry in “data” array that the represent the key, value, type, position and metadata when applicable. Sometimes “Data” is not required or it may include potentially vulnerable content, mostly “paragraph” type of fields that include html tags. To override the defaults: Uncheck “Post data element” to exclude “data” altogether Uncheck “Post paragraph fields” to exclude Paragraph fields only
Form submitted This webhook can post a request to your API when a session (transaction) is submitted by end-client. This API is different from archive. While archive is posting the entire session data and documents, form submitted is a notification when submit is clicked and verified in Cellosign application. Why do I need this? Use this API if you need to track lapse time for client completion, submitted to archive or creating new session in a flow Form submitted request and response Following are definitions for Body request posted from Cellosign to your API ElementWhat it’s for?EventObject that includes Event type: WHEF_CLIENT_FORM_SUBMITTED and time stampSessionThis object includes details on the session the webhook was fired from. It includes the following elements:1. “id”: session token2. “reference”: aggregator ID for business process.3. “transaction_number”: ID for transaction that can be located in cellosign UI application4. “recipient”: in case of a workflow this will indicate the recipient id in the process and it’s convention name5. “labels”: This is a key value object in reference to values injected to labels. See API documentation for detailsrecipientThe id of the recipient and conventionlabelsAny key/value that is associated with the sessionclientObject that includes basic information regards the browser that webhook was fired form Example post request Your API can expect this API example for getting information from your API. { "event": { "type": "WHEF_CLIENT_FORM_SUBMITTED", "timestamp": "2025-01-26T09:35:39.829692" }, "session": { "id": "mWPLQ0nDqw", "reference": "9bfb3574-6ffb-4e43-be47-c6001a39ad79", "process_id": "9bfb3574-6ffb-4e43-be47-c6001a39ad79", "process_number": 39, "transaction_number": 10, "recipient": { "id": 1, "name": "client" }, "labels": { "CUSTOMER_TAG": "CUSTOMER_VALUE" } }, "client": { "ip": "127.0.0.1", "user_agent": "Best browser ever", "device": "mobile" } } Expected response A successful response from the API should include array of objects, were each object includes “id” and “value” key/value pairs as in this example. Values will be injected into their corresponding id in a session. { "status": "0", "errordesc": "" }
Logged in and Form loaded The post request is identical in both “Logged in” and “Form loaded”. Logged in is triggered when client logs in to a form in any mean, such as click on URL in SMS or email Form loaded is triggered when a form is fully loaded into client browser and is operational. Form loaded request and response Following are definitions for Body request posted from Cellosign to your API. ElementWhat it’s for?EventObject that includes Event type: WHEF_CLIENT_FORM_LOADED or WHEF_CLIENT_LOGGED_IN and time stampSessionThis object includes details on the session the webhook was fired from. It includes the following elements:1. “id”: session token2. “reference”: aggregator ID for business process.3. “transaction_number”: ID for transaction that can be located in cellosign UI application4. “recipient”: in case of a workflow this will indicate the recipient id in the process and it’s convention name5. “labels”: This is a key value object in reference to values injected to labels. See API documentation for detailsrecipientThe id of the recipient and conventionlabelsAny key/value that is associated with the sessionclientObject that includes basic information regards the browser that webhook was fired form Example post request Your API can expect this API example for getting information from your API. { "event": { "type": "WHEF_CLIENT_FORM_LOADED", "timestamp": "2025-01-26T10:54:28.291796" }, "session": { "id": "bkIUKTHxws", "reference": "cbbdd32e-8c97-4ec8-a20f-3b6d4d7be2fd", "process_id": "cbbdd32e-8c97-4ec8-a20f-3b6d4d7be2fd", "process_number": 2, "transaction_number": 7, "recipient": { "id": 1, "name": "client" }, "labels": { "CUSTOMER_TAG": "CUSTOMER_VALUE" } }, "client": { "ip": "127.0.0.1", "user_agent": "Best browser ever", "device": "mobile" } } Expected response A successful response from the API should include array of objects, were each object includes “id” and “value” key/value pairs as in this example. Values will be injected into their corresponding id in a session. { "status": "0", "errordesc": "" }
Session expired This webhook can post a request to your API when a session (transaction) status turned expired. It is not deleted yet but it is no longer accessible and cannot be recovered by extending the session. Why do I need this? This API is similar to Session deleted, however it occurs before deleted mostly in minutes when it comes to a standalone transaction (which is not part of a workflow) or days when it is part of a workflow. Session expired request and response Following are definitions for Body request posted from Cellosign to your API ElementWhat it’s for?EventObject that includes Event type: WHEF_SESSION_EXPIRED and time stampSessionThis object includes details on the session the webhook was fired from. It includes the following elements:1. “id”: session token2. “reference”: aggregator ID for business process.3. “transaction_number”: ID for transaction that can be located in cellosign UI application4. “recipient”: in case of a workflow this will indicate the recipient id in the process and it’s convention name5. “labels”: This is a key value object in reference to values injected to labels. See API documentation for detailsrecipientThe id of the recipient and conventionlabelsAny key/value that is associated with the session Example post request { "event": { "type": "WHEF_SESSION_EXPIRED", "timestamp": "2025-01-26T09:20:03.439650" }, "session": { "id": "xM72By4JkM", "reference": "2d12cdb3-d666-4dbd-8827-d7c165ed9d17", "process_id": "2d12cdb3-d666-4dbd-8827-d7c165ed9d17", "process_number": 28, "transaction_number": 17, "recipient": { "id": 1, "name": "client" }, "labels": { "CUSTOMER_TAG": "CUSTOMER_VALUE" } } } Expected response A successful response from the API should include array of objects, were each object includes “id” and “value” key/value pairs as in this example. Values will be injected into their corresponding id in a session. { "data": [ { "id": "OrderId", "value": "1234-45" }, { "id": "OrderStatus", "value": "Open" } ] }
Session deleted This webhook can post a request to your API when a session (transaction) is deleted from Cellosign database and no longer accessible. Why do I need this? A transaction in Cellosign has a Time To Live attached to it. It may be long or short. Nevertheless, If you require a notification regards a deleted session for any reason so you can fire a new session or inquire why it was deleted this is the API to consume. Session deleted request and response Following are definitions for Body request posted from Cellosign to your API ElementWhat it’s for?EventObject that includes Event type: WHEF_SESSION_DELETED and time stampSessionThis object includes details on the session the webhook was fired from. It includes the following elements:1. “id”: session token2. “reference”: aggregator ID for business process.3. “transaction_number”: ID for transaction that can be located in cellosign UI application4. “recipient”: in case of a workflow this will indicate the recipient id in the process and it’s convention name5. “labels”: This is a key value object in reference to values injected to labels. See API documentation for detailsrecipientThe id of the recipient and conventionlabelsAny key/value that is associated with the session Example post request { "event": { "type": "WHEF_SESSION_DELETED", "timestamp": "2025-01-26T09:08:37.899782" }, "session": { "id": "vFsQL3P1kr", "reference": "916ca879-0579-4f5b-9dfe-bce341aca065", "process_id": "916ca879-0579-4f5b-9dfe-bce341aca065", "process_number": 76, "transaction_number": 62, "recipient": { "id": 1, "name": "client" }, "labels": { "CUSTOMER_TAG": "CUSTOMER_VALUE" } } } Expected response A successful response from the API should include array of objects, were each object includes “id” and “value” key/value pairs as in this example. Values will be injected into their corresponding id in a session. { "status": "0", "errordesc": "" }
Post notification when a new session created in workflow This webhook can post a request to your API when a new session (transaction) is created in Cellosign database.. Why do I need this? It is best used if you need to track, programmatically the advancement of a business process (workflow or BPM). Let’s assume that you have a recruitment process started in Cellosign and you want each stage (or station) to report when a form to the next station has been posted to recipient. session created request and response Following are definitions for Body request posted from Cellosign to your API ElementWhat it’s for?EventObject that includes Event type: WHEF_SESSION_CREATED and time stampSessionThis object includes details on the session the webhook was fired from. It includes the following elements:1. “id”: session token2. “reference”: aggregator ID for business process.3. “transaction_number”: ID for transaction that can be located in cellosign UI application4. “recipient”: in case of a workflow this will indicate the recipient id in the process and it’s convention name5. “labels”: This is a key value object in reference to values injected to labels. See API documentation for detailsrecipientThe id of the recipient and conventionlabelsAny key/value that is associated with the session Example post request { "event": { "type": "WHEF_SESSION_CREATED", "timestamp": "2025-01-26T08:49:33.626046" }, "session": { "id": "5Wkt78ciJc", "reference": "7932390e-ee95-4888-ba64-9c7e6f2f5908", "process_id": "7932390e-ee95-4888-ba64-9c7e6f2f5908", "process_number": 51, "transaction_number": 53, "recipient": { "id": 1, "name": "client" }, "labels": { "CUSTOMER_TAG": "CUSTOMER_VALUE" } } } Expected response A successful response from the API must include status: “0”, Otherwise “-1”. { "status": "0", "errordesc": "" }
Field change As a form is being edited by a client you are able to connect data from the form to get or validate data on remote source, such as your CRM. With field change webhook you can easily map and post fields and values from within a live form were to get an answer from your endpoint. Why do I need this? This webhook can be very useful when not all data can be exposed in a form but rather need to be fetched or validated as part of business process, such as verify client ID and fetch personal details: To add field change webhook: Follow Webhook guide to add new webhook Find below details for field change body request and expected response Map fields and define when and how the data connector will act on live form. See below Setting up field change connector Field change data request and response Following are definitions for Body request posted from Cellosign to your API ElementWhat it’s for?EventObject that includes Event type: WHEF_FORM_FIELD_CHANGED and time stampSessionThis object includes details on the session the webhook was fired from. It includes the following elements:1. “id”: session token2. “reference”: aggregator ID for business process.3. “transaction_number”: ID for transaction that can be located in cellosign UI application4. “recipient”: in case of a workflow this will indicate the recipient id in the process and it’s convention name5. “labels”: This is a key value object in reference to values injected to labels. See API documentation for detailsclientObject that includes basic information regards the browser that webhook was fired formchangeObject that includes the field id, type and value that was triggering the request.fieldsArray of objects, were each includes the id,type and value of fields that we need to post to the API. Example post request Your API can expect this API example for getting information from your API. { "event": { "type": "WHEF_FORM_FIELD_CHANGED", "timestamp": "2023-06-30T13:35:51.579895" }, "session": { "id": "UDi8E55p1O", "reference": "19dae31f-377c-44a4-be51-bf3e695dea9d", "process_id": "19dae31f-377c-44a4-be51-bf3e695dea9d", "process_number": 19, "transaction_number": 26, "recipient": { "id": 1, "name": "client" }, "labels": { "CUSTOMER_TAG": "CUSTOMER_VALUE" } }, "client": { "ip": "127.0.0.1", "user_agent": "Best browser ever", "device": "mobile" }, "change": { "id": "myfield", "type": "text", "value": "new value here" }, "fields": [ { "id": "AccountID", "type": "number", "value": "999123456" }, { "id": "FullName", "type": "text", "value": "Ron Jerome" } ] } Expected response A successful response from the API should include array of objects, were each object includes “id” and “value” key/value pairs as in this example. Values will be injected into their corresponding id in a session. { "data": [ { "id": "OrderId", "value": "1234-45" }, { "id": "OrderStatus", "value": "Open" } ] } Setting up field change connector Follow these steps to apply the webhook into the template: Login to your template Select “Integrations” on the top right and then click on “Connectors” Field change connector can be applied to “LIVE” only. Click “Add Live Connector” On source, select “Webhook” On Type: select the your webhook [by alias] Turn it’s status to “Active” Define how the connector is trigerred, there are two options: On button click: Select a button from the form that will fire the webhook On change: Select a field from the form that on value change will fire the webhook Add mapping: Select the fields that will be posted to your API. For each field you have the option to modify it’s convention (alias), this can become handy if your API/DB has diferrent names for these fields. On the response the alias will be preserved to map it back into the form Save the connector and the template
Salesforce Cellosign integration with your Salesforce instance provides two-way communication channel where Cellosign can perform Create, Read, Update and Delete operations on your Salesforce objects. In addition with Cellosign app for Salesforce installed on your instance, you will also be able to customize Salesforce Webflows to initiate business process in Cellosign. Resilience We understand that the typical organization has more than one data source to interact with in a business process, for example business process can be initiated from Salesforce, additional data should be fetched from another source by API and so on. Having said that, our approach to application connector is to grant you with the possibility to integrate with any number of data sources and APIs. Before we start Salesforce integration is part of Cellosign PRO bundle and requires activation. Please contact your CS contact for activation. In the activation process, you will be receiving in mail a unique URL to install Cellosign application for Salesforce. About this guide Salesforce and Cellosign requires two configurations: Configure your Salesforce instance in Cellosign. This is a mandatory step Install and configure Cellosign Salesforce package in your Salesforce instance. This is an optional step Configure your Salesforce instance in Cellosign At the end of this configuration you will be able to create templates in Cellosign that are connected with your Salesforce instance to Get data from objects, update Salesforce objects and upload files to Content version. To do that we need to create Connected app and then couple it on Cellosign application STEP 1: Create a Auth2 connected app Login to your Salesforce instance Click setup on at the top right corner drop down and search for “App manager” Click on “New connected app” Insert name, and email Check Enable OAuth settings Insert Callback url. In case integration is made on Cellosign production enter “https://app.cellosign.com/callback/salesforce-callback”, else if it’s integrated with pre-production insert “https://preprod.cellosign.com/callback/salesforce-callback” aelect Selected OAuth Scopes: Manage user data via APIs (api), Manage user data via Web browsers (web), Full access (full), Perform requests at any time (refresh_token, offline_access), Access unique user identifiers (openid) Check “Require Secret for Web Server Flow” and “Require Secret for Refresh Token Flow“ Click Save Generate “Initial Access Token“ Click on “Manage consumer details”, Verify your account and keep “Consumer Key” and “Consumer Secret” STEP 2: Couple Connected app with Cellosign In Cellosign application dashboard, click Integrations on the left toolbar, click “Add” on Salesforce pane and next to start the process Alias and address Enter an application alias. This alias will be used for implementing business processes, if there’s more than one integration give that meaningful name to avoid confusion. Enter your Salesforce address Consumer key and secret Copy your Consumer key and secret from your connected app and insert on the following pane Verify callback and login Follow on screen instructions for validating Cellosign callback URL on your connected app and click login In case you don’t see “Approve Salesforce login” pane, follow on screen instructions, most common reasons are: You will need to allow popups on your browser Consumer or Secret keys are incorrect Verifying installation After a successful setup you will be able to see a valid connection on Cellosign integration pane for Salesforce Troubleshoot In case of errors in completing this stage Make sure settings for Connected app are correct. Check token policy. In Salesforce search for “Manage connected apps”, locate your app. make sure “Refresh Token Policy” is set to “Refresh token is valid until revoked” Install and configure Cellosign Salesforce package in your Salesforce instance At the end of this configuration you will be able to create flows in Salesforce and connect it with Cellosign templates to: Create new interactive transactions Create Signed document (SEAL) Revoke transaction To install this package, first we need to create a “Service user” in Cellosign. Add user and retain Access token. Install Package by adding the url below to your salesforce url. https://yourinstance.salesforce.com/packaging/installPackage.apexp?p0=04t8d000000hYmq Select required profile and check “Acknowledge” for installing 3rd party package and click “Install” 4. Approve installation process. Check “grant access” and click “Continue” 5. Wait for the installation to complete [might take couple of minutes] and click done 6. Next. we need to configure the application. On setup left pane search’ lookup “custom settings” and click on “custom settings” page 7. Click on “Cellosign instance” and then click on “manage” on top pane and new on the next screen 8. Next we need to configure credentials point to Cellosign instance on the following screen LabelRequiredValueAPI TokenYesInsert here your user Token [Or service user token]. This token will be used to authenticate the request in CellosignAuthorization TypeYesInsert here “Bearer Token”Instance URLYesInsert your Cellosign base instance url. For example, for shared pre-production insert “https://preprod.cellosign.com” [Note: without “/” at the end of the url]TimeoutYesEnter “30,000” for 30 seconds timeout 9. Click “Save” when done. Next. Salesforce connection tab Synchronization pane Click on Gear icon and click on “Synchronization” pane. Use this function if you require to initiate new requests from Salesforce to Cellosign, first we need to enable synchronization. Otherwise, click the next tab. By checking Synchronization, template data [“Blueprints”] will be pushed from Cellosign to your Salesforce instance. This will enable to configure Salesforce actions [“flows”] and connect them with Cellosign templates. Use “Filter tags” option to sync only Cellosign templates that includes specific tags. If left blank, all templates within your project will be synced. Note: Sync occurs when saving a template. Connection test pane This pane serves two debug functions: Make sure objects are pulled and refreshed. Refresh occurs automatically every 24 hours, however if you have applied changes in your Salesforce schema (such as adding tables and columns) click on “Pull instance schema” for fetching Salesforce objects so they can become visible to business process consumers, such as template connector. Dump requests that were made from Salesforce to Cellosign. To find the request ID click Transactions board, lookup your transaction, expand the result. The request ID is displayed at “Request Parameters” pane. Copy and paste the “Request ID” into “Connection test” pane and click “Execute request”. As a result a JSON file will be dumped to your browser with the full body request Build Salesforce connected business process What we want to do here is build a template that can be initiated from Salesforce to Cellosign that inject Salesforce AccountID. Cellosign connector will: Get the request Fetch Account name and website address from Salesforce Post the invitation to the client Get updated data back [On client submit] and update Salesforce with: Updated data and signed document Build template Create new template, name it “Update account” Drag and drop 3 Text fields and name it “Account ID”, “Account name” and “Website” Also add signature field Click on Template integrations and “Connector” and click “Add Preset Connector”. Follow this guide to set it up. Eventually your PRESET connector should look as in the image below. Make sure to save the template and go to your Salesforce instance to connect it [next step]. Next we will build connector to update Account name and website on submit. Add new connector on “Submit” Next we will build connector to upload signed PDF and associate with it with account on submit. Add new connector on “Submit”. Save the connectors and the template. Connect Template to Salesforce In your Salesforce instance search for “blueprints” in top left search pane Click on template that was created “Update Account” Note: In case you don’t have “Description” or “Create Date” columns, simply click gear icon on the top row. Click “select fields to display” and add those to view. Click the Blue print name link. This view display the blueprint ID, Name and related fields. Note that on “Related fields” there are two fields created by default. “Invitation recipient email or phone number”. Will be used to post the request to clients email or phone Fill form field <AccountNumber> from table <Account> column. Will be used for mapping field into action Creating flow (trigger) in Salesforce At the end of this stage we will have a flow in Salesforce that is getting Account ID and posting request to Cellosign including: Blue print, Account is and client email. Flow should look as in the image below Click on Gear icon at the top right corner and then “Setup” On quick find (top left) search “flows” and enter “flows” view Click “New flow” at top right corner select “Screen flow” and click “Create” First we need to define flow variable that we can consume within the flow. On the left pane of flow view, click the left most icon “Toggle toolbox” Click “New resource” button” On the opened pane select “Variable” Insert “recordId” on “API Name” Select “Text” for “Date type” Check “Available for Input” at the bottom and click save Next, we need to define single parameter and collection of parameters flow variables that can consume blueprints data. Use “cellosign__ProcessParameter apex-defined” type for both. First we will create collections of parameters On flow toolbox: Add new resource Select “Variable” Insert “varProcessParameters” on “API name” Select “Apex defined” on Data type Check “Allow multiple values” Select “cellosign__ProcessParameters” on “Apex class” Click “Done” Carry out the same process for single parameter. Add new resource Select “Variable” Insert “varProcessParameter” on “API name” [Note: var name is singular] Select “Apex defined” on Data type Select “cellosign__ProcessParameters” on “Apex class” Click “Done” Next. on flow diagram Click on “Add element” and Add “Get records”. Insert “Get SF Account data” to label Select “Account” on “Object” field On field, select “Id” to match Account ID On “Operator” pick “equals” On “Value” pick the variable “recordId” we just created Click “Done” At this stage we need to connect the collection of parameters to Cellosign blueprints. On flow diagram Add “Assignment” On “Label” insert “Build Parameters” Now we need to add key/value pairs for the invitation and Account ID First, we assign Key/Value pair to single parameter flow variable, and then add that variable to our parameters collection variable. You can assign fixed values to parameter, or you can assign values from specific record field (see 3rd parameter assignment – we assign account name). To add key/value pairs: On “Variable” add “varProcessParameter.Key” from the dropdown Set Operator as “Equal Set Field blueprint ID for invitation. [This should be copied from blueprints parameters page] On “Variable” add “varProcessParameter.Value” from the dropdown Set Operator as “Equal” Set Field from Account > phone number On “Variable” add “varProcessParameters” from the dropdown Set Operator as “Equal” Set Field “varProcessParameter” [Note: there’s no “s” at the end, for single] Carry out the same procedure to add “Account ID”. Eventually, “Build parameters” pane should look like this: Save the pane. Next, add element “Action”. Blueprint ID – ID of blueprint you want to initiate a process for Cellosign API Service developer name. Type one of these: start_process, seal_process – start_process Parameters – your collection variable of process parameters – Run Immediate – (True/False) – will define to run action synchronously (True) or asynchronously (False). Click “Save” At this stage you may add any conditions, logs, on screen display before flow ends. Save the flow and enter Connect to action button Now we want to add a button to trigger a form submission to client. to do so follow these steps: On Salesforce app, search and select “Accounts” page Click gear icon on top right and select “Edit Object” On left pane, select “Buttons, links and actions” Click “New action” On “Action type” select “flow Select the flow we crated previously Update label “My update” and save Next we need to display this button on account page, for whenever is clicked, form will be submitted. On “Account Object manager”, click “Page layouts” and then “Account layout” Locate the Action created “My update” on top pane and drag it to “Salesforce Mobile and Lightning Experience Actions” And click save On account page you will find new button “My update”. Make sure you have mobile phone number on Account details and click “My update” to submit a form Now you should be receiving SMS with a link to form. If all configured correctly, you should see Account name and Website on the form. When form is submitted the data will be updated and PDF result is uploaded to Account related items. Methods Start This API initiates a new session process. This method is described above in details SEAL Similar to Start API (above) this API generate a new session. The differences are: Use key word “seal_process” for activation Response: since SEAL does not include interactive form, it does not include URLs as interactive session does. Instead, it includes the following response: { "id": "djE6czp0ZXN0ZW5nOm1lcHlMR3R4cmI=", "blueprint_id": "djE6dDp0ZXN0ZW5nOjQ3NzAwZTUxMjkzODQ2ZWJiZjQ4NmU3ZGU4ZmEzYTUy", "document": { "id": "mepyLGtxrb", "hash": "942adb09cda9d9602e4784513b14cff2" } } idEncoded unique id. Can be use later for delete APIblueprint_idTemplate blueprint used for the processDocument idClear text for unique idDocument hashPF Document hash. Hash can be used to verify the content when callback occurs Delete This API revoke a session. Follow these steps to configure a delete session: In flow menu, add an APEX action, Search for “Delete Cellosign Process” action type Add “delete_process” to first input value Add process id to revoke. Process id is received on response to “start_process” Add logic as needed and save On success, process will return HTTP 201 status code, Otherwise will return 4xx or 5xx response Limitations and known issues Currently Cellosign package for Salesforce include session level API. That is workflow, BPM process types cannot be created via this package Field level blueprints includes only fields that are mapped for inquiry through the connector Create new session currently doe’s not include specific address for OTP. However the address included with the blueprint can be used for both the invitation and the OTP. This feature will be included in future versions Data types specifications Salesforce datatypeHandling in CellosignPick listPicklist values are fetched using toLabel() api and not the API value Date and date timeDate and datetime objects in Salesforce are stored in ISO format. Using the connector you have the option to format the value to your requirementTimeNumbersCurrencyBooleanText and long texts Process Logs Cellosign installed package includes full log for APEX action that includes: Request URL, Body, response and time stamp for initiate and response. To view logs, type “Create Process Logs” is Salesforce quick search. Additional data Following are object classes with Cellosign application that can be consumed for implementation. Class ProcessRequest LabelNametyperequireBlueprint IdblueprintIdStringTrueParametersparamsList of ProcessParameterTrueRun ImmediaterunImmediateBooleanTrueCellosign Api service developer nameCelloSignMdtNameStringtrue Class ProcessParameter LabelNametyperequireKeyKeyStringTrueValueValueStringTrue Class ProcessResponse LabelNametypeResultsresItemsList of ProcessResponseItem Class ProcessResponseItem: LabelDescriptiontypeisSuccessProcess initiation statusBooleanerrorMessageerror message if failedStringprocessIdUnique process ID in cellosignStringformIdThis is reference to Token generated in CellosignStringclientUrlUrl that was submitted to clientString
BDI This feature needs to be activated. Please inquire details with our support. BDI integration refers to “Coface bdi“. This integration include out-the-box data exchange with coface based on data inserted into a form. The flow is: User insert a data, i.e. loan amount, id etc.. Data is posted securely to coface Result is returned to form so further implementation can be carried out such as hide or show parts of the form based on success or failure What needs to be done prior to the following steps? Make sure you have an API account with BDI for personal check. make sure the following data handy: Username, password, Terminal ID, Credit provider code Make sure you have received clearance to use BDI from our support team How to set up BDI Once BDI is available for your disposal please carry out the following configuration Setup web-hook Login to cellosign app and click to add new web hook from web hook pane Provide a name for your integration Select type: “Get data from remote source” (Field change API) Turn off switch “Use implicit” Insert URL provided. Add the following header and corresponding values “X-BDI-TermID”: Value is the terminal ID provided from BDI “X-BDI-CreditProviderCode”: Value is your credit provider code you received from BDI In authentication section, Select “Basic” and enter the username and password you received from BDI Note: Parameters are encrypted and are not displayed in cellosign interface Template configuration Select the template that requires integration with BDI and follow these steps Open integrations tab Click “Add live connector” Select Webhook for source Select the webhook you created in previous stage (by name) Select the trigger: Field change or click. We advise to use click. Add the following fields to the mapper. make sure that the configuration includes the field name or alias exactly as in alias column (Note capital and small letters) AliasWhat it doesNotes and data validationFirstNameClient first nameOutgoing, MandatoryMake sure to set “Hebrew characters” only in field configurationLastNameClient last nameOutgoing, MandatoryMake sure to set “Hebrew characters” only in field configurationIDClient ID numberOutgoing, MandatoryMake sure to select Cellosign ID field resultThis is the options for returning values– “1” success (related to cwa_code)– “2” error. This represents a legitimate error. Details can be retrieved from the following parameters– “9999” Unexpected error. Interface not available or any technical error, Typically this is not related to client data.Incoming Mandatory.bdi_error_codeRetrieve value from “ErrCode” in “BDI_Error” objectIncoming, Optionalbdi_error_descRetrieve value from “ErrDescription” in “BDI_Error” objectIncoming, Optionalccr_error_codeRetrieve value from “Code” in “CCR_Error” objectIncoming, Optionalccr_error_descRetrieve value from “Description” in “CCR_Error” objectIncoming, Optionalccr_error_sevRetrieve value from “Severity” in “CCR_Error” objectIncoming, Optional Limitations interface support Israeli ID, Passport is not supported Interface is limited to personal check. Company
Integrating connector and template After completing a setup for application or database connector we need to integrate the connector into Cellosign Template. How does it work? On template connector level Cellosign includes 4 firing options that represents a life span of a transaction in Cellosign: PRESET: Fires when transaction is created LIVE: Fires as user is engaging with the form SUBMIT: Fires when user submits the form POST SUBMIT: T Fires after form is submitted PRESET Preset is initiated at time a session is created, given enough information injected into session, this setting can get data from your data source prior to engaging the end user. Preset includes only lookup (Read) operation. To set Preset Click on “Add Preset Connector” Select source and Instance Select Object (Table) Define the query for lookup. Values for query can be retrieved from: a “label” injected into process or a form field or a fixed value Define what happens case there are no results, one result or more then one result to match the query Define which column to fetch from your object and to which form field value is incorporated into Click save Best practice is to use automated scenarios such as PRESET whenever possible. Given sufficient and unique data, Cellosign will be able to get data from your data source. LIVE Live connector is similar to PRESET with the difference that it requires the end user interaction with the form. A practical scenario is that at the stage of processing the form we are missing some data, most common in self service scenarios. Note that although we have taken the necessary steps to secure your data source, the implementation should consider measure for protecting the data by requesting information known only for the end user. for example requesting only Account ID is not recommended. To setup LIVE connector, follow instructions on PRESET and apply activation on field change or button. “Change” trigger occurs when a value of field is changed by end user, such as typing account name “Click” is triggered on a button click. If you have a button mapped on your form, select it as trigger SUBMIT This is where Create, Update, Delete and File uploading operations occur. To setup SUBMIT operation: Click on “Add Submit Connector” Select source and Instance Select Object (Table) Select the operation: Create/Update/Delete/Upload files* Define the query for matching the record. (Not relevant for Create). Values for query can be retrieved from: a “label” injected into process or a form field or a fixed value Define what happens case there are no results, one result or more then one result to match the query Define which table columns to update (Not relevant for Delete and file upload) Click save Query conditions Each connector Lookup/Update/Delete requires a condition to match with the remote data source for which it will act upon [that is equivalent to SQL WHERE clause]. Condition for matching includes: Data source to match i.e Account ID Equation, i.e. Equal, true/false in case of boolean or contain/starts with in case of strings. What data it will the compare with. i.e constant, values already applied to form Apply order to Where clause in case we have multiple results Fields mapping This is the part when import of data is being made from remote data source into form. This functionality is relevant only for LOOKUPS [equivalent to SQL SELECT clause]. Fields mapping into form fields can be made: As is, directly from database column Converted using an editor Data conversions Conversion functionality is provided to Numbers and date-time data types. To convert date time select the relevant date time column, select date format option and pick the required format from the list. To convert number data type, select a number column: Apply Ceil to round up to integer Apply Floor to round down to integer Select currency format to apply a number with thousands separator, with or without decimal point Concatenation Use CONCAT feature to consolidate values from different table column to one string, simple example: first and last name. Concatenation can also include fixed values to get result such as: “Name: FirstName Last name, ID: ClientID.” Repeater Use this feature when LOOKUP is configured to expect multiple results such: as All Account contacts. In this case we may use repeater to consolidate a string for as many contacts as the connector pulls from the database. See the example above, it includes a CONCAT and REPEATER on contacts first and last name. Changes in integrations Occasionally you will be required to move integrations from one environment to another or modify integration end points. Connectors in Cellosign holding the identifiers of an integration and when moving around this needs to be updates. When changing the integration it becomes invalid in the template. You will be required to update the integration in the connector. Simply click on the connector’s edit button. Select the source, instance and click fix. In case of application connector as Salesforce make sure that the dataset is available as moving from one app to another you might not have the exact schema.
Inbound Cellosign inbound APIs specifications are documented in API documentation (OpenApi). This document includes reference and Postman samples to get a quick jump-start. This folder includes samples for: Business cases Dictionary management using APIs On each page download collection and import it to your local postman. How to use Postman collection? The collection includes list of scenarios, To run these scenarios you will be required to setup couple of variables. After importing the collection, click on the variables section and edit the following items: project: enter the id of your project. To locate project id login to Cellosign application, your project id appears on the top right, next to your name token: enter your user token. To locate token, login to Cellosign application, click on the top right corner on your name and click “Profile”. scroll to the bottom, click “Show token” and copy the content. Articles Dictionary Business cases Dictionary This document lists the methods to manage dictionaries in Cellosign application. Dictionaries can be managed manually or with API and associated with a list of values (select element) within a from. This document include methods and code samples to upload, delete, replace or add new content to dictionary through Cellosign Rest API. What is a dictionary? A dictionary is a table where each row includes: Text that is presented to user, for example: Tel-aviv. Text must be unique throughout the table. A value that represents the underlying code. Might be the same as text or a code and must be unique Group. This is optional field that can be used for aggregation, for example if my dictionary is streets than group will be used to point to which city it associated with Collection Cellosign-API-v3-dictionatries.postman_collectionDownload Methods Get List of dictionaries Get list of dictionaries and their corresponding metadata. For each record the “id” is the key to reference to act on specific dictionary. Example response { "meta": { "links": { "next": null, "previous": null }, "total": 2, "many": true, "paginated": true }, "data": [ { "id": "09afed16-3eb3-0259-8f73-4787114e9055", "count": 5, "modified_by": "examples@cellosign.com", "created_at": "08/06/23 18:11", "modified_at": "12/06/23 09:09", "name": "Cities" }, { "id": "c68a16ae-b85c-5636-8722-abd5a96c7954", "count": 200, "modified_by": "examples@cellosign.com", "created_at": "08/06/23 18:14", "modified_at": "08/06/23 18:29", "name": "Streets" } ] } Get Dictionary metadata Example response { "data": { "id": "c68a16ae-b85c-5636-8722-abd5a96c7954", "count": 200, "modified_by": "examples@cellosign.com", "created_at": "08/06/23 18:14", "modified_at": "08/06/23 18:29", "name": "Streets" }, "meta": {} } Create new dictionary Upload new dictionary to Cellosign. Method returns dictionary metadata in response Overwrite dictionary This method replaces a dictionary content. All records will be removed and content in request body will be uploaded. Method returns dictionary metadata in response Append to Dictionary Request body will be appended as new records to dictionary. Method returns dictionary metadata in response Notes and Gotchas For security reasons some characters are disallowed. Disallowed for Text column: ‘<‘, ‘>’, ‘;’ Disallowed for value and group columns:'<‘, ‘>’, ‘#’, ‘$’, ‘%’, ‘^’, ‘&’, ‘*’, ‘|’, ‘;’, ‘:’, ‘{‘, ‘}’, ‘[‘, ‘]’, ‘=’, ‘+’, ‘-‘ Note: 100K records is the maximum allowed to upload into a dictionary. Business cases Use cases Ad hoc session with PDF parser Collection Inbound API collection.postman_collectionDownload Ad hoc session with PDF parser This is mostly a legacy use case where you might have PDF or word documents generated and you require that the client will receive the document and sign on one or two places and maybe accept some consent (using a checkbox). At the end of the process you require that the signed document will be delivered to your application through an API request. What’s included in the sample? The sample includes base64 from PDF file. The PDF includes arbitrary texts that are used by Cellosign parser, see below in red, “consent” and “signature1”. Request markup that instructs the parser how to use these texts { "template": { "analyze_document": { "analyze": true, "tags": { "signature1": { "type": "pad", "width": 7, "height": 5, "show": true }, "consent":{ "type": "checkbox", "width": 2, "height": 2, "show": true } } }, "from_document": "JVBERi0xLjUNJe..." } } The markup above instruct Cellosign parser to search for the text “signature1” and transform it to a signature pad in that exact position where it’s found. It also instruct the parser to search for the string “consent” and place a checkbox right in that position. It’s recommended that when using in production the texts on the PDF file will be in transparent font. Ad hod archive integration "integrations": [ { "type": "archive", "payload": { "url": "http://point.to.api.com/endpoint" } } ] This markup instruct Cellosign to archive the sign PDF back to an API. See more detail in archive documentation Alternatives You may consider changing the scenarios to updated user experience using HTML templates, where personal data can be injected, other data can be collected from the client and signed and accessible PDF is generated at the end of the process, With so many more options available.
Dictionary This document lists the methods to manage dictionaries in Cellosign application. Dictionaries can be managed manually or with API and associated with a list of values (select element) within a from. This document include methods and code samples to upload, delete, replace or add new content to dictionary through Cellosign Rest API. What is a dictionary? A dictionary is a table where each row includes: Text that is presented to user, for example: Tel-aviv. Text must be unique throughout the table. A value that represents the underlying code. Might be the same as text or a code and must be unique Group. This is optional field that can be used for aggregation, for example if my dictionary is streets than group will be used to point to which city it associated with Collection Cellosign-API-v3-dictionatries.postman_collectionDownload Methods Get List of dictionaries Get list of dictionaries and their corresponding metadata. For each record the “id” is the key to reference to act on specific dictionary. Example response { "meta": { "links": { "next": null, "previous": null }, "total": 2, "many": true, "paginated": true }, "data": [ { "id": "09afed16-3eb3-0259-8f73-4787114e9055", "count": 5, "modified_by": "examples@cellosign.com", "created_at": "08/06/23 18:11", "modified_at": "12/06/23 09:09", "name": "Cities" }, { "id": "c68a16ae-b85c-5636-8722-abd5a96c7954", "count": 200, "modified_by": "examples@cellosign.com", "created_at": "08/06/23 18:14", "modified_at": "08/06/23 18:29", "name": "Streets" } ] } Get Dictionary metadata Example response { "data": { "id": "c68a16ae-b85c-5636-8722-abd5a96c7954", "count": 200, "modified_by": "examples@cellosign.com", "created_at": "08/06/23 18:14", "modified_at": "08/06/23 18:29", "name": "Streets" }, "meta": {} } Create new dictionary Upload new dictionary to Cellosign. Method returns dictionary metadata in response Overwrite dictionary This method replaces a dictionary content. All records will be removed and content in request body will be uploaded. Method returns dictionary metadata in response Append to Dictionary Request body will be appended as new records to dictionary. Method returns dictionary metadata in response Notes and Gotchas For security reasons some characters are disallowed. Disallowed for Text column: ‘<‘, ‘>’, ‘;’ Disallowed for value and group columns:'<‘, ‘>’, ‘#’, ‘$’, ‘%’, ‘^’, ‘&’, ‘*’, ‘|’, ‘;’, ‘:’, ‘{‘, ‘}’, ‘[‘, ‘]’, ‘=’, ‘+’, ‘-‘ Note: 100K records is the maximum allowed to upload into a dictionary.
Business cases Use cases Ad hoc session with PDF parser Collection Inbound API collection.postman_collectionDownload Ad hoc session with PDF parser This is mostly a legacy use case where you might have PDF or word documents generated and you require that the client will receive the document and sign on one or two places and maybe accept some consent (using a checkbox). At the end of the process you require that the signed document will be delivered to your application through an API request. What’s included in the sample? The sample includes base64 from PDF file. The PDF includes arbitrary texts that are used by Cellosign parser, see below in red, “consent” and “signature1”. Request markup that instructs the parser how to use these texts { "template": { "analyze_document": { "analyze": true, "tags": { "signature1": { "type": "pad", "width": 7, "height": 5, "show": true }, "consent":{ "type": "checkbox", "width": 2, "height": 2, "show": true } } }, "from_document": "JVBERi0xLjUNJe..." } } The markup above instruct Cellosign parser to search for the text “signature1” and transform it to a signature pad in that exact position where it’s found. It also instruct the parser to search for the string “consent” and place a checkbox right in that position. It’s recommended that when using in production the texts on the PDF file will be in transparent font. Ad hod archive integration "integrations": [ { "type": "archive", "payload": { "url": "http://point.to.api.com/endpoint" } } ] This markup instruct Cellosign to archive the sign PDF back to an API. See more detail in archive documentation Alternatives You may consider changing the scenarios to updated user experience using HTML templates, where personal data can be injected, other data can be collected from the client and signed and accessible PDF is generated at the end of the process, With so many more options available.
Outbound: Webhooks Webhook is an API call made from cellosign to to your application, this our method to keep your application on track in regards to business process. Webhooks are very flexible tool and if used correctly it can provide your organization a complete visibility on the whereabouts of your business process. Webhook types The table below lists types of webhooks, there are are different types of web hooks that serves different purposes. TypePurposePost business process result (Archive)request at the end of a business process. This web hook can be executed to deliver a business process products that includes at least signed document, form data, attachments etc.Get data from remote sourceGet data from 3rd party application based on changes carried out in form, while user editing it.Post callback after storage operationPost data to API after a storage call been executedPost notification when form is submittedPost data to API after a client submits a formPost notification when client logged in to formPost data when client logs in to a form, activated with click on SMS or EmailPost notification when form loaded on client browserPost data when client form is loaded and operationalPost notification when session is expiredPost data when transaction is expiredPost notification when session is deletedPost data when transaction is deletedPost notification when a new session created in workflowPost data when transaction is created. This is useful on business process that generates multiple transactionsSend SMSConfigure outbound SMS of your own. Can be used when your cellosign does not have a plugin for your provider. Note that the data structure id fixed. Setting up Webhook To configure a webhook, we basically need an Access to the remote end point and configure how it works. The table below details the configuration options for webhooks. Follow these steps to add Webhook: At the dashboard click integrations locate Webhooks integration pane click “Add” FieldWhat it’s for?AliasA readable name for the web hook. In some cases webhooks can be configured per business process, so provide meaningful nameTypeSelect webhook typeImplicit/ExplicitImplicit means that whenever a business process is completed, this webhook will fire off. Explicit means, don’t fire unless instructed. See below options for setting up explicit.urlInsert an API end point addressTimeoutSet timeout in seconds on the remote endpoint. If you know that your endpoint process takes time, increase the defaultverify sslIn case your address is deployed with https protocol it’s recommended that SSL handshake will be carried out successfully. Otherwise you can turn this off.HeadersIn case your endpoint required custom headers, click add and enter key/value pairsAuthenticationIt is recommended to use a mechanism for authenticating requests from Cellosign to your endpoint. For that we have couple of options:1. Basic authentication. Add user name and password. Cellosign will convert it to base64 according to Basic auth standard2. Custom authentication. Insert key/value pair for authentication3. Authenticate with Secret. This is a bearer token mechanism. See Secret documentation for detailsContent type, AcceptBy default Cellosign webhooks generates and accept JSON content. You may select these settings to be converted to XML. Note: This is a simple conversion from JSON to XML request body and vice versa, This is not WSDL/Soap operation.Request body exampleThis section displays how a standard body request data structure looks like, based on the webhook types. Each webhook type displays different body request example.Response successThis is an example of how the response from your endpoint should respond success.Response errorThis is an example of how the response from your endpoint should look like in case of an error.Save/DeleteSave the configuration or delete webhookTestClick this button will fire the sample above based on the configuration and will return the result to webhook pane. Explicitly/Implicitly Webhook implementation A webhook can be setup to fire off Implicitly that means every business processes will fire this integration. For example a webhook for Archive will be posted to your Endpoint when every business process within your project is completed. This is the recommended approach if indeed all your business process should end up in in this manner. However if there are different use cases, such as: separate endpoints or some business process does not need API calls, it is recommended to couple webhook with a business process Explicitly. To explicitly couple a webhook with business process we purpose two options: Manually connect it to specific template(s), which means, templates configuration will include explicit coupling with a webhook. See details for coupling webhook to template in webhook specific page Ad hoc integration for a business process: When the webhook is set to explicit the webhook pane display the integration code that can be added to create session request. Simply add the code to your request. All ad hoc integration can be add within the integrations Array. Note that the UUID represents specific webhook Articles Archive Form submitted Logged in and Form loaded Session expired Session deleted Post notification when a new session created in workflow Field change Archive When a business processes is completed there are couple of options to send process products to your application. One way to do that is by using Archive webhook. Archive is a standard Post request that includes all the process data. Among other bits of data, it includes: Data from the submitted form Attachments that were added to the process Signed and locked PDF document Information regards the client and more Why do I need this? Archive webhook can be very useful when you need a resilient method to accept session product. Other methods, such as storage or SMTP are typically a-synchronous and not as much resilient as an API because it provides a real time acknowledge. This method also includes a fail over and alert mechanism. To add an archive webhook: follow Webhook guide to add new webhook. See below a guide for archive body request and expected response. See below posting data elements Archive request and response This is a description for Body request posted from Cellosign to your API. ElementWhat it’s for?EventObject that includes Event type: WHP_ARCHIVE and time stampSession This object includes complete details on the session(s). Since business process may include number of sessions, all the sessions that has been taken place with this process are listed here. Each session includes the following elements: “id”: session token“author”: User who created the session“reference”: aggregator ID for business process.“transaction_number”: ID for transaction that can be located in cellosign UI application“recipient”: full disclosure on where invitation and OTP were posted as well as, also in case of a workflow this will indicate the recipient id in the process and it’s convention name“submission_details”: Client browser details, IP, User agent and Geo location details when collected and applicable“labels”: This is a key value object in reference to values injected to labels. See API documentation for details“created_at”: Time this session created“submitted_at”: Time this session submitted by client“template”: Template id“integrations”: List of integrations that were executed in this sessionsignaturesArray of each signatures. For each signature element1. Field ID2. When signature pad was signed3. Signer details: id and convention4. Key/value labels that are attached to signature pad, if anydataList of all form elements , each form element includes:1. element id2. value3. element type4. visible on final pdf true or false5. page and coordinates [top,left, width, height]: these values represents the absolute position of the element on the PDF fileattachmentsList of attachments being collected throughout the process. each element on the list includes:1. Form element id2. Filename3. mime type4. Base64 string of the filesigned_documentSigned and locked PDF document. includes: file name, mime type [application/pdf] and base64 string of the filegroup_dataArray data , for future use { "event": { "type": "WHP_ARCHIVE", "timestamp": "2022-12-21T22:29:17.603248" }, "reference": "f51c66ba-d33a-4c59-b63a-aa270383fb9e", "sessions": [ { "id": "wSYqmI4xsE", "author": "john@example.com", "reference": "f51c66ba-d33a-4c59-b63a-aa270383fb9e", "process_id": "f51c66ba-d33a-4c59-b63a-aa270383fb9e", "process_number": 100, "transaction_number": 30, "recipient": { "id": 1, "name": "client", "otp_destination": { "address": "client@example.com", "type": "email", "provider": null, "status": "sent" }, "invitations": [ { "address": "client@example.com", "type": "email", "provider": null, "status": "sent" } ] }, "submission_details": { "ip": "127.0.0.1", "user_agent": "Best browser ever", "device": "mobile", "latitude": 33.196944, "longitude": 35.543705, "accuracy": 1000 }, "labels": { "CUSTOMER_TAG": "CUSTOMER_VALUE" }, "created_at": "2022-12-21T22:29:17.603287", "submitted_at": "2022-12-21T22:29:17.603290", "template": { "id": "9fa70d4ccea84262b1ed2308a07a3fb4" }, "integrations": [ { "id": "861c85ff-ba57-4679-8a63-c731d4e7b10b", "type": "EF_CLIENT_LOGGED_IN", "status": "success", "executed_at": "2022-12-21T22:29:17.603312", "payload": null, "error": null } ] } ], "signatures": [ { "id": "SIGNATURE1", "signed_at": "2022-12-21T22:29:17.603330", "signed_by": { "id": "1", "name": "client" }, "labels": { "SOME_TAG": "SOME_VALUE" } } ], "data": [ { "id": "SOMEFIELD1", "value": "SOMEVALUE1", "top": 65.91806722689076, "left": 8.194774346793352, "width": 28.8781512605042, "height": 2.048693586698337, "page": 1, "type": "text", "visible": true, "meta": {} }, { "id": "SOMEFIELD2", "value": "SOMEVALUE2", "top": 65.91806722689076, "left": 8.194774346793352, "width": 28.8781512605042, "height": 2.048693586698337, "page": 3, "type": "text", "visible": true, "meta": {} }, { "id": "SOMEFIELD3", "value": "SOMEVALUE3", "top": 65.91806722689076, "left": 8.194774346793352, "width": 28.8781512605042, "height": 2.048693586698337, "page": 0, "type": "select", "visible": true, "meta": {} }, { "id": "SOMEFIELD4", "value": "4a45b2df-f7bd-48bf-a2b4-b8405eb51194", "top": 65.91806722689076, "left": 8.194774346793352, "width": 28.8781512605042, "height": 2.048693586698337, "page": 0, "type": "payment", "visible": true, "meta": {} }, { "id": "SOMEFIELD5", "value": "32.001186,34.9413393", "top": 65.91806722689076, "left": 8.194774346793352, "width": 28.8781512605042, "height": 2.048693586698337, "page": 0, "type": "location", "visible": true, "meta": { "geocoder": "Arlozorov St 160, Tel Aviv-Yafo, Israel" } } ], "attachments": [ { "id": "ATTACHMENT_FIELD_ID", "filename": "SOMEFILENAME1.png", "mimetype": "image/png", "content": "BASE64 file content" } ], "payments": [ { "status": "success", "type": "verify_credit_card", "transaction_id": "4a45b2df-f7bd-48bf-a2b4-b8405eb51194", "session_id": "wSYqmI4xsE", "provider_transaction_reference": "4f33600c-34bf-4cb1-af3a-52237b1ecc5a", "provider_transaction_result": { "currency": "ILS", "card_mask": "458045******4580", "internal_transaction_id": "69703676", "club_code": "", "credit_company": "Visa", "club_id": "", "card_id": "1080131215624580", "session_cd": "414ecb3e88ac0148eaec9c5efbad68a8a3fb60674b4e5f92ec0c0d9a709d5039", "card_expiration": "0724", "card_brand": "Visa", "card_aquirer": "Alphacard", "total": "2100", "card_no": "xxxxxxxxxxxx4580", "life_style": "1", "cguid": "69796709", "auth_number": "1579133" }, "amount": 2100 } ], "signed_document": { "filename": "SIGNEDDOCUMENT.pdf", "mimetype": "application/pdf", "content": "BASE64 file content" } } Archive response A response from the API should include: status: “0” for success or “-1” for an error . In case of an error, please provide enough details in “errordesc” key. In case of success you may response with reference or/and a url to any object/file. This can be convenient for tracking or debugging in case an issue is raised { "status": "0", "document": { "reference": "1bbc36dd-6e6b-4ab2-bb97-4ee46627bcab", "public_link": "https://mystorage.example.com/1bbc36dd-6e6b-4ab2-bb97-4ee46627bcab" }, "errordesc": "" } { "status": "-1", "document": null, "errordesc": "Something goes wrong" } Posting data elements By default Archive webhook include that entire data layer from the form. Each field has an entry in “data” array that the represent the key, value, type, position and metadata when applicable. Sometimes “Data” is not required or it may include potentially vulnerable content, mostly “paragraph” type of fields that include html tags. To override the defaults: Uncheck “Post data element” to exclude “data” altogether Uncheck “Post paragraph fields” to exclude Paragraph fields only Form submitted This webhook can post a request to your API when a session (transaction) is submitted by end-client. This API is different from archive. While archive is posting the entire session data and documents, form submitted is a notification when submit is clicked and verified in Cellosign application. Why do I need this? Use this API if you need to track lapse time for client completion, submitted to archive or creating new session in a flow Form submitted request and response Following are definitions for Body request posted from Cellosign to your API ElementWhat it’s for?EventObject that includes Event type: WHEF_CLIENT_FORM_SUBMITTED and time stampSessionThis object includes details on the session the webhook was fired from. It includes the following elements:1. “id”: session token2. “reference”: aggregator ID for business process.3. “transaction_number”: ID for transaction that can be located in cellosign UI application4. “recipient”: in case of a workflow this will indicate the recipient id in the process and it’s convention name5. “labels”: This is a key value object in reference to values injected to labels. See API documentation for detailsrecipientThe id of the recipient and conventionlabelsAny key/value that is associated with the sessionclientObject that includes basic information regards the browser that webhook was fired form Example post request Your API can expect this API example for getting information from your API. { "event": { "type": "WHEF_CLIENT_FORM_SUBMITTED", "timestamp": "2025-01-26T09:35:39.829692" }, "session": { "id": "mWPLQ0nDqw", "reference": "9bfb3574-6ffb-4e43-be47-c6001a39ad79", "process_id": "9bfb3574-6ffb-4e43-be47-c6001a39ad79", "process_number": 39, "transaction_number": 10, "recipient": { "id": 1, "name": "client" }, "labels": { "CUSTOMER_TAG": "CUSTOMER_VALUE" } }, "client": { "ip": "127.0.0.1", "user_agent": "Best browser ever", "device": "mobile" } } Expected response A successful response from the API should include array of objects, were each object includes “id” and “value” key/value pairs as in this example. Values will be injected into their corresponding id in a session. { "status": "0", "errordesc": "" } Logged in and Form loaded The post request is identical in both “Logged in” and “Form loaded”. Logged in is triggered when client logs in to a form in any mean, such as click on URL in SMS or email Form loaded is triggered when a form is fully loaded into client browser and is operational. Form loaded request and response Following are definitions for Body request posted from Cellosign to your API. ElementWhat it’s for?EventObject that includes Event type: WHEF_CLIENT_FORM_LOADED or WHEF_CLIENT_LOGGED_IN and time stampSessionThis object includes details on the session the webhook was fired from. It includes the following elements:1. “id”: session token2. “reference”: aggregator ID for business process.3. “transaction_number”: ID for transaction that can be located in cellosign UI application4. “recipient”: in case of a workflow this will indicate the recipient id in the process and it’s convention name5. “labels”: This is a key value object in reference to values injected to labels. See API documentation for detailsrecipientThe id of the recipient and conventionlabelsAny key/value that is associated with the sessionclientObject that includes basic information regards the browser that webhook was fired form Example post request Your API can expect this API example for getting information from your API. { "event": { "type": "WHEF_CLIENT_FORM_LOADED", "timestamp": "2025-01-26T10:54:28.291796" }, "session": { "id": "bkIUKTHxws", "reference": "cbbdd32e-8c97-4ec8-a20f-3b6d4d7be2fd", "process_id": "cbbdd32e-8c97-4ec8-a20f-3b6d4d7be2fd", "process_number": 2, "transaction_number": 7, "recipient": { "id": 1, "name": "client" }, "labels": { "CUSTOMER_TAG": "CUSTOMER_VALUE" } }, "client": { "ip": "127.0.0.1", "user_agent": "Best browser ever", "device": "mobile" } } Expected response A successful response from the API should include array of objects, were each object includes “id” and “value” key/value pairs as in this example. Values will be injected into their corresponding id in a session. { "status": "0", "errordesc": "" } Session expired This webhook can post a request to your API when a session (transaction) status turned expired. It is not deleted yet but it is no longer accessible and cannot be recovered by extending the session. Why do I need this? This API is similar to Session deleted, however it occurs before deleted mostly in minutes when it comes to a standalone transaction (which is not part of a workflow) or days when it is part of a workflow. Session expired request and response Following are definitions for Body request posted from Cellosign to your API ElementWhat it’s for?EventObject that includes Event type: WHEF_SESSION_EXPIRED and time stampSessionThis object includes details on the session the webhook was fired from. It includes the following elements:1. “id”: session token2. “reference”: aggregator ID for business process.3. “transaction_number”: ID for transaction that can be located in cellosign UI application4. “recipient”: in case of a workflow this will indicate the recipient id in the process and it’s convention name5. “labels”: This is a key value object in reference to values injected to labels. See API documentation for detailsrecipientThe id of the recipient and conventionlabelsAny key/value that is associated with the session Example post request { "event": { "type": "WHEF_SESSION_EXPIRED", "timestamp": "2025-01-26T09:20:03.439650" }, "session": { "id": "xM72By4JkM", "reference": "2d12cdb3-d666-4dbd-8827-d7c165ed9d17", "process_id": "2d12cdb3-d666-4dbd-8827-d7c165ed9d17", "process_number": 28, "transaction_number": 17, "recipient": { "id": 1, "name": "client" }, "labels": { "CUSTOMER_TAG": "CUSTOMER_VALUE" } } } Expected response A successful response from the API should include array of objects, were each object includes “id” and “value” key/value pairs as in this example. Values will be injected into their corresponding id in a session. { "data": [ { "id": "OrderId", "value": "1234-45" }, { "id": "OrderStatus", "value": "Open" } ] } Session deleted This webhook can post a request to your API when a session (transaction) is deleted from Cellosign database and no longer accessible. Why do I need this? A transaction in Cellosign has a Time To Live attached to it. It may be long or short. Nevertheless, If you require a notification regards a deleted session for any reason so you can fire a new session or inquire why it was deleted this is the API to consume. Session deleted request and response Following are definitions for Body request posted from Cellosign to your API ElementWhat it’s for?EventObject that includes Event type: WHEF_SESSION_DELETED and time stampSessionThis object includes details on the session the webhook was fired from. It includes the following elements:1. “id”: session token2. “reference”: aggregator ID for business process.3. “transaction_number”: ID for transaction that can be located in cellosign UI application4. “recipient”: in case of a workflow this will indicate the recipient id in the process and it’s convention name5. “labels”: This is a key value object in reference to values injected to labels. See API documentation for detailsrecipientThe id of the recipient and conventionlabelsAny key/value that is associated with the session Example post request { "event": { "type": "WHEF_SESSION_DELETED", "timestamp": "2025-01-26T09:08:37.899782" }, "session": { "id": "vFsQL3P1kr", "reference": "916ca879-0579-4f5b-9dfe-bce341aca065", "process_id": "916ca879-0579-4f5b-9dfe-bce341aca065", "process_number": 76, "transaction_number": 62, "recipient": { "id": 1, "name": "client" }, "labels": { "CUSTOMER_TAG": "CUSTOMER_VALUE" } } } Expected response A successful response from the API should include array of objects, were each object includes “id” and “value” key/value pairs as in this example. Values will be injected into their corresponding id in a session. { "status": "0", "errordesc": "" } Post notification when a new session created in workflow This webhook can post a request to your API when a new session (transaction) is created in Cellosign database.. Why do I need this? It is best used if you need to track, programmatically the advancement of a business process (workflow or BPM). Let’s assume that you have a recruitment process started in Cellosign and you want each stage (or station) to report when a form to the next station has been posted to recipient. session created request and response Following are definitions for Body request posted from Cellosign to your API ElementWhat it’s for?EventObject that includes Event type: WHEF_SESSION_CREATED and time stampSessionThis object includes details on the session the webhook was fired from. It includes the following elements:1. “id”: session token2. “reference”: aggregator ID for business process.3. “transaction_number”: ID for transaction that can be located in cellosign UI application4. “recipient”: in case of a workflow this will indicate the recipient id in the process and it’s convention name5. “labels”: This is a key value object in reference to values injected to labels. See API documentation for detailsrecipientThe id of the recipient and conventionlabelsAny key/value that is associated with the session Example post request { "event": { "type": "WHEF_SESSION_CREATED", "timestamp": "2025-01-26T08:49:33.626046" }, "session": { "id": "5Wkt78ciJc", "reference": "7932390e-ee95-4888-ba64-9c7e6f2f5908", "process_id": "7932390e-ee95-4888-ba64-9c7e6f2f5908", "process_number": 51, "transaction_number": 53, "recipient": { "id": 1, "name": "client" }, "labels": { "CUSTOMER_TAG": "CUSTOMER_VALUE" } } } Expected response A successful response from the API must include status: “0”, Otherwise “-1”. { "status": "0", "errordesc": "" } Field change As a form is being edited by a client you are able to connect data from the form to get or validate data on remote source, such as your CRM. With field change webhook you can easily map and post fields and values from within a live form were to get an answer from your endpoint. Why do I need this? This webhook can be very useful when not all data can be exposed in a form but rather need to be fetched or validated as part of business process, such as verify client ID and fetch personal details: To add field change webhook: Follow Webhook guide to add new webhook Find below details for field change body request and expected response Map fields and define when and how the data connector will act on live form. See below Setting up field change connector Field change data request and response Following are definitions for Body request posted from Cellosign to your API ElementWhat it’s for?EventObject that includes Event type: WHEF_FORM_FIELD_CHANGED and time stampSessionThis object includes details on the session the webhook was fired from. It includes the following elements:1. “id”: session token2. “reference”: aggregator ID for business process.3. “transaction_number”: ID for transaction that can be located in cellosign UI application4. “recipient”: in case of a workflow this will indicate the recipient id in the process and it’s convention name5. “labels”: This is a key value object in reference to values injected to labels. See API documentation for detailsclientObject that includes basic information regards the browser that webhook was fired formchangeObject that includes the field id, type and value that was triggering the request.fieldsArray of objects, were each includes the id,type and value of fields that we need to post to the API. Example post request Your API can expect this API example for getting information from your API. { "event": { "type": "WHEF_FORM_FIELD_CHANGED", "timestamp": "2023-06-30T13:35:51.579895" }, "session": { "id": "UDi8E55p1O", "reference": "19dae31f-377c-44a4-be51-bf3e695dea9d", "process_id": "19dae31f-377c-44a4-be51-bf3e695dea9d", "process_number": 19, "transaction_number": 26, "recipient": { "id": 1, "name": "client" }, "labels": { "CUSTOMER_TAG": "CUSTOMER_VALUE" } }, "client": { "ip": "127.0.0.1", "user_agent": "Best browser ever", "device": "mobile" }, "change": { "id": "myfield", "type": "text", "value": "new value here" }, "fields": [ { "id": "AccountID", "type": "number", "value": "999123456" }, { "id": "FullName", "type": "text", "value": "Ron Jerome" } ] } Expected response A successful response from the API should include array of objects, were each object includes “id” and “value” key/value pairs as in this example. Values will be injected into their corresponding id in a session. { "data": [ { "id": "OrderId", "value": "1234-45" }, { "id": "OrderStatus", "value": "Open" } ] } Setting up field change connector Follow these steps to apply the webhook into the template: Login to your template Select “Integrations” on the top right and then click on “Connectors” Field change connector can be applied to “LIVE” only. Click “Add Live Connector” On source, select “Webhook” On Type: select the your webhook [by alias] Turn it’s status to “Active” Define how the connector is trigerred, there are two options: On button click: Select a button from the form that will fire the webhook On change: Select a field from the form that on value change will fire the webhook Add mapping: Select the fields that will be posted to your API. For each field you have the option to modify it’s convention (alias), this can become handy if your API/DB has diferrent names for these fields. On the response the alias will be preserved to map it back into the form Save the connector and the template
Data mapping and conversions Purpose This document include data mapping and conversions made when fetched from remote data source into Cellosign forms. It includes all types of data sources: Applications, such as Salesforce and Databases, such as MSSQL. Conversion is being made regardless of the primitive features of data source. For instance in Salesforce Date time is formatted as ISO-8601 string, MSSQL has it’s proprietary format. Regardless of the source, Cellosign will made available mapping and conversions for you disposal as listed in this document. Limitations Conversions are only made when mapping is being made using “Formula” editor. In any other case the primitive will be fetched and displayed as is. Make sure to map data to the correct form field type in case that field is being made available for your client. For example if a date field is fetched and converted into a form field and client can edit it, it will be better be mapped to date field so the format can be consistently retained. Mapping and conversions PrimitiveConversion and format optionNotes and examplesNumberCeil. Rounds a number UP to the nearest integer,Ceil(1.1) = 2Ceil(-7.004) = -7Floor. Rounds a number DOWN to the nearest integerFloor(1.1) = 1Floor(-7.004) = -8Currency format float. Thousands separator with 2 decimal digits123456.7 converted to: 123,456.70Currency format integer. Thousands separator with no decimal digits123456.7 converted to: 123,456DateEU date format. dd/mm/yyyy28/02/2022US date format. mm/dd/yyyy 02/28/2022EU/US short month name. dd MMM yyyy 02 FEB 2022EU date time format. dd/mm/yyyy hh:mm28/02/2022 23:35US date time format. mm/dd/yyyy hh:mm02/28/2022 11:35PMEU short month name date time format dd MMM yyyy hh:mm02 FEB 2022 23:35US short month name date time format dd MMM yyyy hh:mm02 FEB 2022 11:35AM