# Getting started

Justransform Enterprise Integration Suite is a cloud based “Smart” integration platform (iPaaS) enabling enterprises to drastically reduce their integration timeline with any combination of cloud and on-premise applications without software or coding. The platform unique ‘Instant Integration” approach offers a targeted set of technologies and process enabling its users to have a highly accelerated integration solution development without any compromise in the quality or security.

### What is integration and iPaaS?

Integration is the combining of software or hardware components or both into an overall system. There are two types of systems integration:

* B2B Integration — Integrating data or systems across two or more organizations.
* Application Integration — Integrating data or systems within a single organization.

An Integration Platform as a Service (iPaaS) is a suite of cloud services enabling development, deployment, and visibility of integration flows connecting any combination of on-premise and cloud-based processes, services, applications, and data within individual or across multiple organizations.

### What makes Justransform iPaaS different?

Justransform is a complete Enterprise cloud-based integration platform that supports application integration for any business process; anytime, anywhere including:

* SaaS (software-as-a-service)
* On-premise
* Cloud
* EDI, EAI, WebEDI, IoT, RAW
* API

Justransform supports a wide range of integration scenarios, which supports both scheduled and real-time integration. The platform scales to meet high-volume demands, with complete visibility in all processes.&#x20;


# Development/UAT

Justransform provides a complete Enterprise Integration Platform Development/UAT edition which can be used for beta testing, and ensuring your integrations are tested in the "real world" before deploying into your business.

You can access the Development/UAT by visiting <https://uatapps.justransform.com>

{% hint style="info" %}
For Login Details: Submit a request to <uatsupport@justransform.com>
{% endhint %}

Upon successful login you should land into your Justransform Dashboard. You're ready to start integrating.


# Navigation

The navigation in Justransform lets you access all features of the platform.

* Dashboard
* Transactions
* Archive Transactions
* Resources
* Global Variables
* Lookup Tables
* Development
  * Connections
  * Business Processes
  * Mapper
  * Map Chains
  * Scripts
  * FF Operations
  * Hex Editor
* Test Manager
* EDI
  * EDI Specification
  * EDI Operations
* B2B Office Suite
  * Sheets
  * Sheets Dashboard
  * Workflow Editor
  * Documents
  * Forms
  * CSV Validation
  * PDF Extractor
  * Editor
  * Diagrams
  * PDF
* Administration
  * User Management
  * Configuration
* Ticketing
* Programs
  * Program Dashboard
  * Program Configuration

The main navigation is on the left hand side of the user interface once successfully logging in.

<figure><img src="/files/rgLt4VvbzmrjZCSDBD1f" alt=""><figcaption></figcaption></figure>

On the top right icons provide preferences and support for the platform.

<figure><img src="/files/nUjl7QZ62YY3rq43ahJh" alt=""><figcaption></figcaption></figure>

* Help
* New Ticket
* Toggle Theme (Dark/Light)
* Notifications & Alerts
* Sign Out

{% hint style="info" %}
**Note:** Some users may not see a certain Navigation Item. If you are a user created by an Admin, you may not have access to this feature of the platform.
{% endhint %}


# EDI & B2B solutions

A Business-to-business (B2B) solution integrates data between two or more different companies. These groups or trading partners use electronically communicated information that was traditionally communicated on paper, such as purchase orders and invoices. EDI can be defined as the transfer of structured data, by agreed message standards, from one computer system to another without human intervention. EDI standards include Peppol, IATA, EDIGAS,HL7, ASC X12, ODETTE, ResettaNet, Tradacoms, and UN/EDIFACT.

Industry derivates are created to serve unique data requirements for a specific industry. For example, ANSI ASC X12 standard is the predominate industry standard in North America and the UN/EDIFACT standard is the predominate standard across Europe. HIPAA is an example of an industry standard in the Health Care industry in the United States. There are common transaction types (e.g. Purchase Order, Invoice, Advanced Shipping Notice) that are supported by the standards, and each industry has there representative standard version for the common transaction types.

B2B commerce, however, may need the additional flexibility offered by XML and API standards to provide more flexibility on passing information.

Justransform provides a Complete EDI and Partner Integration Solution for businesses of all sizes that provides a single platform in the cloud to design, map, connect, onboard, test, and run your EDI integration via self service (tenant and trading partner), via Systems Integrator, or via Justransform Professional/Managed Service. This provides the ultimate flexibility of choice for your business.


# Trading Partners

Justransform handles B2B requirements through Trading Partners, a way to conduct direct EDI business trasactions by designating a host partner and remote partner who connect through a common communication protocol.&#x20;

For example, Justransform is a Peppol accredited and approved Peppol Service Provider. Justransform customers are able to communicate with suppliers and customers via the eDelivery Network, convert documents to Peppol’s format, and exchange standardised business documents with trading partners.


# The Platform

Justransform's Enterprise Integration Solution provides the a complete Enterprise Integration Platform enabling customers to develop, deliver and maintain any enterprise integration solution. Along with the maintenance and management view we have also moved the complete development environment (IDE) to the cloud. Only tool require to cater all stages of the solution is a browser thus enabling a business user to maintain and extend the solution with minimum or no dependency on the IT team.

Upon successful login, all tools related to the different phases of the integration life cycle (Development, Management and Maintenance) are accessible via the side panel.

<figure><img src="/files/bKyIwgKu87qFgfmkRQZr" alt=""><figcaption></figcaption></figure>

The first step in any Integration project is to have a clear picture/definition of the requirements and agreement on the “Criteria for Success” from all involved parties. In this phase all you are looking for is a document which defines.

* The scope of the integration requirements and strategy.
* The parties involved - Determine the systems, and applications which need to be integrated. This could be a combination of People, Process and Technology.
* The data that needs to be exchanged.
* What’s expected at the end of this project. Criteria for Success

> **Example:**
>
> B2B Onboarding of my top 25% of North America Suppliers over my Procure to Pay program.\
> Parties Involved: List of 25% of the Suppliers, all connected applications and modules\
> Success: Fully connection Order to Cash module enabling Procurement to Place, Change or Cancel Orders with 99% of accuracy and visibility of any exception in case of error.


# Defining Integrations

After defining your "Criteria for Success". You can begin setting up your Justransform integrations. Justransform utilizes a Development Panel to organize and control data process. Integration services allow extraction, manipulation, validation, and forwarding of structured data types. By structuring the data into recognisable data, this allows you to integrate applications directly from the web without coding. Justransform provides a built-in visual interface ("visual designer") so you can create and direct process flows.

In the **Development** Panel this allows you to build processes and configure components that become the steps within your process.

<figure><img src="/files/9hxH5rauVn5nB7yXhmwO" alt=""><figcaption></figcaption></figure>

**Connections:** Connections are a key component and play an important role in facilitating data integration and exchange between systems and applications. Connections allow Justransform to securely access and exchange data with connected systems and applications; securely and in various formats.

**Business Processes:** Business Processes are defined workflows that include a variety of actions such as data transformations, data validations, and communication with external systems and applications. By creating a Business Process in Justransform, these steps will be executed automatically by Justransform upon new data being provided by a Connection.

{% hint style="info" %}
For example, a business process might involve creating a new customer record in a CRM system, automatically sending an email to a customer to confirm the account creation, and then updating the customer's status in a seperate billing system.
{% endhint %}

**Mapper:** Mapping is the process of defining how data from one system or application should be transformed and mapped to another system or application. This involves specifying the relationship between fields in the source and target systems or applications.&#x20;

{% hint style="info" %}
For example, if you are integrating a Trading Partner with an accounting system, you may need to map e-Orders from your Trading Partner to the invoicing in the accounting system. The Trading Partner may use PEPPOL and the accounting system may use REST.
{% endhint %}

**Map Chains:** Map Chains are a series of mappings that are linked together to form a complex data integration process. Map Chains are used to automate the transfer of data between multiple systems and applications, and to transform and manipulate the data in a specific order. By using Map Chains, this reduces the time and effort required to perform manual data mapping and manipulation, and improves accuracy and consistency of the data integration operations.

**Scripts:** Scripts are a way of defining custom logic and data transformations that can be executed as part of the integration process. Scripts can be used to automate complex or custom tasks that can not be performed using Mappings, standard data transformation capabilities and Map Chains.

{% hint style="info" %}
For example, you might use a script to perform custom data validation, such as checking that a Shipment tracking number is in the correct format or using logic to define which Shipment provider the tracking number uses.
{% endhint %}

**FF Operations:** Known as File-to-File operations, involves transfering data between two or more files. Using Justransform organizations can schedule regular data transfers between files, or trigger data transfers based on specific events or conditions. FF Operations typically involve:

1. Data extraction: Data is extracted from the source file and transformed into a format that can be used by Justransform.
2. Mapping: The extracted data is mapped to the target file, using mapping definitions that specify how the data should be transformed and mapped to the target file.
3. Data transformation: The data is transformed according to the mapping definitions, and any additional data manipulation or transformation rules that have been specified.
4. Data loading: The transformed data is loaded into the target file, completing the FF operation.

**Hex Editor:** The Hex editor can be used to view and edit raw data in hexadecimal format of files that are being transferred as part of the data integration process. The Hex editor can be useful when troubleshooting data integration processes that involve the transfer of binary data.


# Testing & Validation

After defining your integrations, it is important to test and validate to ensure the integrations to ensure they are functioning as expected.&#x20;

The following steps are involved in testing and validating an integration solution:

1. Define test cases: Define a set of test cases that cover all of the different scenarios that the integration solution is expected to handle. This should include positive test cases (i.e., scenarios where the integration solution should succeed) and negative test cases (i.e., scenarios where the integration solution should fail gracefully).
2. Set up test data: Create test data that can be used to validate the integration solution. This should include sample data that represents the types of data that the integration solution will be processing in production.
3. Execute test cases: Use the test cases and test data to validate the integration solution. This involves setting up the test environment, executing the test cases, and verifying that the results match the expected results.
4. Validate results: Validate the results of the test cases to ensure that the integration solution is functioning as expected. This should include verifying that data is being transferred correctly, that data transformations are working correctly, and that error handling is working as expected.
5. Repeat as needed: Repeat the testing and validation process as needed until the integration solution is working as expected. This may involve fixing bugs, making changes to the integration solution, and retesting.
6. Monitor and maintain: Once the integration solution is up and running, it is important to monitor it to ensure that it continues to function as expected. This may involve regularly checking for errors, monitoring performance, and making changes as needed to keep the integration solution running smoothly.

Using **Test Manager** within Justransform, test cases can be created to check data is being transferred correctly between systems and applications. These can be executed repeatedly at regular intervals; validating results, repeated as needed, monitoring and maintaining the solution after it is launched.


# Deployment & Management

Once the integrations have been tested and validated, you can launch the enterprise integration solution. It is important to continuously monitor the solution to ensure that it is functioning smoothly and address any issues that may arise.

This can be performed through the **Transactions** dashboard or using a custom dashboard created in Justransform.

By following all the previous steps, you can launch an enterprise integration platform through Justransform that streamlines data exchange, reduces manual data entry, and improves efficiency.

<figure><img src="/files/03PnV1dukYVSgxM4HCPx" alt=""><figcaption></figcaption></figure>

### Maintenance & Management

Regular maintenance and upgrades of the enterprise integration solution are important to ensure its continued operation and to take advantage of new features and enhancements of the Justransform platform.


# Onboarding Trading Partners

Once completing your integration solution, extend it to your entire Trading Partner Network. Onboarding trading partners in Justransform involves setting up the necessary connectivity and data exchange processes to allow the partners to interact and exchange data. The following are the steps involved in onboarding trading partners in Justransform:

1. Identify partners: Identify the trading partners that need to be onboarded to Justransform. This should include information about the type of data that will be exchanged, the frequency of the exchange, and any security or compliance requirements.
2. Establish connectivity: Establish a secure and reliable connectivity method between Justransform and the trading partner. This may involve setting up a connection through a protocol such as AS2, AS4, SMTP, REST or SOAP.
3. Define data mapping: Define the data mapping between Justransform and the trading partner. This should include information about the data format, data structure, and any data transformations that need to be performed.
4. Test connectivity: Test the connectivity between Justransform and the trading partner to ensure that data can be exchanged correctly. This should include sending test data from Justransform to the trading partner and receiving test data from the trading partner to Justransform.
5. Monitor and maintain: Monitor the data exchange between Justransform and the trading partner to ensure that it continues to function as expected. This may involve regularly checking for errors, monitoring performance, and making changes as needed to keep the integration running smoothly.

With Justransform, onboarding Trading Partners is made simple, secure, and efficient.&#x20;


# Accessing the Dashboards

Justransform's dashboards provide snapshots of transaction processes.

### Transactions View

The dashboard transaction view is the default landing page for the logged in user. On the **Transactions Overview** page you can view a full summary of your integration transactions activities and highlight recent errors.

{% hint style="info" %}
A transaction within Justransform refers to a set of related operations that are executed. Transactions are used to manage and coordinate the flow of data between multiple systems and can provide error handling and recovery capabilities. All transactions are executed in a consistent, atomic, and isolated manner, which must either all succeed or all fail as a single unit.
{% endhint %}

The transaction view is divided into four sections:

* Overview of Transaction Statuses per connection
* Transaction Status - Today
* Transaction Status - Weekly
* Transaction Status - Monthly

<figure><img src="/files/ZbvBfr1D7n3jTCAWZRzs" alt=""><figcaption></figcaption></figure>

The Transactions Overview dashboard tracks all transactions into three results:

* Success - This is the standard response for successful transactions.
* In progress - For in progress transactions currently running.
* Failure - This generic error is returned when an unexpected condition was encountered.&#x20;

### Custom Dashboards

Custom Dashboards are a workspace that allow for custom metrics, calculations and charts. This enables support for dedicated and separate deployment setups for different phases. Powered by JTSheets.

<figure><img src="/files/J0kfVUhbgCSCDj382Nyh" alt=""><figcaption></figcaption></figure>

### My Dashboard

My Dashboard provides insight into Tasks, Favourites, and Tickets.

<figure><img src="/files/25BuOK37SaoLFVV1fr7B" alt=""><figcaption></figcaption></figure>


# User Management

User Management allows senior level users to share access to the Justransform Platform.&#x20;

* *Users* are defined by their email address that can be given direct access to certain features of your Justransform Platform.
* *Permissions* gives rights to the user to access or perform certain actions within the Justransform Platform. There are several predefined standard roles or you can define custom roles.
* *Data Visibility* gives a user access to different data visibility depths as well as defining their access type.

Clicking **Settings** > **User Management** tab allows you to:

* Create new users, assign roles to account users and suspend their access within the User Management tab
* Create roles, set permissions and data visibility within the Role Management tab
* Create and manage groups within the Group Management tab

### Create a new user

To create a new user, click the **User Management** tab within the User Management top menu.

1. Click the "**+ Add User**" button.
2. Enter the user information for the new user.
3. Select a role for the user.
4. Click **Save**

### Reset a user password

To reset a user, click the **User Management** tab within the User Management top menu.

1. Toggle the "✔" next to the user(s) you would like to reset the password for.
2. Click the "**Reset Passwords**" button
3. The user(s) will receive an email reset to their email address on file.

### Create a Role

To create a new role, click the **Role Management** tab within the User Management top menu.

1. Click the "**+**" icon and create a new name for the role

### Set Permissions for a Role

To set permissions for roles, click the **Role Management** tab within the User Management top menu.

1. Click "**Permissions**" within the Role Management sub-menu.&#x20;
2. Using the dropdown select the relevant permission you would like to provide access to within the Justransform Platform.
3. Find the Role you would like to add permissions to, and "✔" the required permissions.
4. Click Save after adding the permission.

<figure><img src="/files/0rgD4CEDa5He5G0BhJaZ" alt=""><figcaption></figcaption></figure>

### Set Data Visibility for a Role

To set data visibility for roles, click the **Role Management** tab within the User Management top menu.

1. Click "**Data Visibility**" within the Role Management sub-menu.
2. Using the dropdown select the relevant data visibility permission you would like to provide access to within the Justransform Platform.
3. Find the Role you would like to set the data visibility level to, and use the drop-down to set the level.
4. Click Save after adding the data visibility level.


# Configuration - Form Mapping

Form Mapping through Justransform provides the ability to graphically map source data from JT Sheet to the target form whenever new data is added or updated in the input data sheet.&#x20;

<figure><img src="/files/9Wwvn4pfqjxBnYR7k1G3" alt=""><figcaption></figcaption></figure>

### Create a Form Mapping Configuration

To create a new form mapping configuration, click the **Configuration** tab within the Administration side menu.

1. Click the "**+ Add new mapping**" button.
2. Select the JT Sheet spreadsheet which will be used in the Form Mapping Configuration.
3. Select the Mapped data type, Input data sheet, Output data sheet and View sheets.
4. Click **Save.**

Once the form mapping is established, the data from the source form is automatically transferred to the target form whenever new data is added or updated in the JT Sheet.


# Console

The Transaction Console page displays information about process executions and their status.

Accessed through **Transactions**, you can search by Transaction ID, Source Connection, Target Connection, and nine other data types. You also can specify a date and time range.

On the top of the Console there are controls for:

* Searching Transactions
* Refreshing the Transactions View
* Resetting the Filter
* Exporting Transactions in Excel Format

<figure><img src="/files/3QWX9g5oywlNroBpIvPr" alt=""><figcaption></figcaption></figure>


# Search Options and Filters

On the Console page, you can utilize search criteria, time frames and use filters to find data.

When you open the Transactions Console page, by default all transactions will show.

First you must decide what you want to search for:

* Transaction ID, Status, Source Connection, Target Connection, Inbound Business Process, Outbound Business Process, Data Type In, Data Type Out, Business Id.

To start a search use the Search Input or Advanced Search. You  can select a date and time range.

{% hint style="info" %}
Date & Time search by default uses Universal Time Zone.&#x20;
{% endhint %}

<figure><img src="/files/KzTdWQi5ZGANjrZbEBAL" alt=""><figcaption></figcaption></figure>


# Results Table

The center of the Transactions Console contains a table with your Transactions. This is what the table looks like when you search for transactions.

<figure><img src="/files/hQpazvdWzuzAsBC1Dh78" alt=""><figcaption></figcaption></figure>

Each row in the table represents a transaction and displays the following information

### Column

**Transaction ID**

This contains a unique transaction ID for the processing event. A transaction ID may be original ID or may also contain the following to prefixes

* “S” = Sub Transaction (eg. S 987654321) - Represents a Sub transaction and the ID represents the original transaction ID. In this example the transaction represents a replay from the original transaction 987654321. Sub transactions may get created from the Business Process configuration and may represent use cases such as unique transactions within a batch. The batch may represent the original transaction and the sub transaction the processing of the unique transaction within the batch.
* “R” = Replay Transaction (eg. R 123456789) - Represents a Replay transaction and the ID represents the original transaction ID. In this example the transaction represents a replay from the original transaction 123456789

**Replay Status**

This data contains whether the transaction is the original or if it is a manually replayed transaction

**Status**

Success - Transaction processed Successfully

Warning - Transaction occurred a “Warning” condition based on validation rule, but processing completed as configured

Failure - Transaction occurred a Hard Failure, and an alert if configured triggered for the event.

**Start Time**

Represents the Start Time of the transaction record represented in UTC time zone

**Source Connection**

Contains the name of the Source Connection used within the Business Process. This data represents the connection that originated the transaction. The data will be pulled from the name of the Connection configured via “Connections”

**Target Connection**

Contains the name of the Destination Connection used within the Business Process. This data represents the connection that the output data will be sent to. The data will be pulled from the name of the Connection configured via “Connections”

**End Time**

Represents the Start Time of the transaction record represented in UTC time zone

### Transaction Controls

Clicking the select function on a single Transaction or multiple, controls for the following will show:

* Replay
* Replay+
* Replay Script
* Cancel Transaction

<figure><img src="/files/SmnF0x67I6lRyKs3qHny" alt=""><figcaption></figcaption></figure>


# Resources

The Resources file manager displays all uploaded and saved resources within the platform, these resources can be connected and integrated to automate workflows, transfer data, and streamline business process.

Accessed through **Resources**, you can search by Resource, Resource ID, Creator, Type, Modification Date, Access Type.&#x20;

On the top of the Resources manager there are controls for:

* Creating Folders
* Uploading new Resources
* Copying File/Folders
* Pasting File/Folders
* Cut Resources
* Editing Resource
* Sending for Approval
* Deleting Resource

<figure><img src="/files/QTvO4pLpQJbHA38GkgJb" alt=""><figcaption></figcaption></figure>

On the top ride side of the Resources manager there are shortcuts for creating new resources in JT Sheet, JT Document, Specifications, Mapping Specifications, and Business Processes.

## Information Panel

Clicking a resource within the Resources file manager, provides a Knowledge Panel providing resource information, version info, and API access.

### Share & Permissions

Within the Information Panel, share resources with other users or groups.

1. Click "**+ Share**"
2. Select the user(s) to share the resource with (Enterprise User or Group).

{% hint style="info" %}
&#x20;The user or group will receive READ access
{% endhint %}

3. Click Select.

### Version Control

Within the Information panel, access previous versions of a resource. Selecting **"Version Info"** opens the Version Control panel. Previous versions of resources can be downloaded directly to your computer.

### API Access

Within the Information panel, access API credentials for the resource. These can be used with the Justransform API. Selecting **"API Access"** opens the API Token panel.


# Global Variables

Accessed through **Global Variables**. Global variables are shared, reusable values which can be used across different integrations within Justransform. These can be used to store configuration data, such as API keys, database connection strings, or other sensitive information.

### Create a Global Variable

Within the Global Variables panel, create new global variables to share across different integrations within Justransform.

1. Click "**+**" on the right side of the panel.
2. Set a Unique Name for the variable and the value.

{% hint style="info" %}
The value can be changed later.
{% endhint %}

3. Click **Add**.

### Change a Global Variable

Within the Global Variables panel, to change a global variable.

1. Select the Global Variable to change. Click the **Edit** icon.

<figure><img src="/files/OeDhkptmor080Nhdz9jD" alt=""><figcaption></figcaption></figure>

2. Adjust the Name and/or Value
3. Click the "**✔️**" check icon.

### Delete a Global Variable

Within the Global Variables panel, to delete a global variable.

1. Select the Global Variable to delete. Click the **Delete** icon.

<figure><img src="/files/qfkXVw0FIF9f6cHtAXF3" alt=""><figcaption></figcaption></figure>


# Lookup Tables

Accessed through **Lookup Tables**. Lookup Tables are tables which store a set of values that can be used to perform mapping and transformations within Justransform. The tables of values can be used to look up specific values based on one or more keys.

{% hint style="info" %}
For Example: A lookup table might be used to map country codes to country names, or to map product codes to product descriptions.
{% endhint %}

On the top of the Lookup Tables panel there are controls for:

* Creating New Lookup Tables
* Deleting a Lookup Table
* Refresh
* Uploading a Lookup Table
* Downloading a Lookup Table
* Updating a Lookup Table
* Duplicating a Lookup Table
* Truncating a Lookup Table

## Information Panel

Clicking a table within the Lookup Tables panel, provides a Knowledge Panel providing table information, sharing details, and API access.

### Adjust the Lookup Table Key/Value

Within the Information Panel, manage the lookup table values.

1. Select the Lookup Table Key/Value to change. Click the **Edit** icon.

<figure><img src="/files/OeDhkptmor080Nhdz9jD" alt=""><figcaption></figcaption></figure>

1. Adjust the Key Name and/or Value
2. Click the "**✔️**" check icon.

### Delete the Lookup Table Key/Value

Within the Information panel, to delete a Lookup Table Key/Value.

1. Select the Lookup Table Key/Value to delete. Click the **Delete** icon.

<figure><img src="/files/qfkXVw0FIF9f6cHtAXF3" alt=""><figcaption></figcaption></figure>

### Share & Permissions

Within the Information Panel, share the lookup table with other users or groups.

1. Click "**Share Details**"
2. Click "**+ Share**"
3. Select the user(s) to share the lookup table with (Enterprise User or Group).
4. Click Select.

### API Access

Within the Information panel, access API credentials for the lookup table. These can be used with the Justransform API. Selecting **"API Access"** opens the API Token panel.


# Connections

The Connections module allows you to connect new data sources and displays information about any data source connections that interact with solutions. Justransform provides a complete set of connections to cover your entire end to end bi-directional connectivity needs.

Justransform integrates any unique endpoint, including any combination of cloud, SaaS, and on-premise applications, to unify data, systems, applications, processes, and people.&#x20;

Accessed through clicking Development > "**Connections"** link on the left side panel of the application.

**Supported Data:**

1. AS2
2. AS4
3. JDBC
4. SMTP
5. SMTP Client
6. REST
7. REST Router
8. REST Redirect
9. JT Form
10. Oracle CMK
11. SOAP Server
12. SOAP
13. SOAP Client
14. Oracle CMK V2
15. OTM
16. JT ECM Endpoint
17. Null Connection
18. Scheduler

To create a connection, assess the purpose and requirements:

* Identify the type of Connection: For Example - REST, SOAP, SMTP, OTM, AS2, AS4
* Understand the data flows: one-way, two-way, or more.
* Explore the security requirements.


# Creating a Connector

Before creating a connector, it is important to understand the architecture and components required before creating a connection.

1. To create a new connection within Justransform, click "**+**" within the Connections Module.&#x20;

<figure><img src="/files/Jywktg4FafKgPD4AR2xm" alt=""><figcaption></figcaption></figure>

The primary components of any connector created include the following:

<figure><img src="/files/yfiD33biNrDLkf8Ivgvk" alt=""><figcaption></figcaption></figure>

**Connection Name:** Any common string uniquely identify your connection

**Emails to subscribe for failures**: List of email addresses to be notified in case of any exception occurred during the message transmission.

**Number of Outbound Concurrent Messages:** The system default is ‘0' which indicates the platform to use the platform default number of threads to be used. Unless you have specific license enabled, leave the value to '0'

**Retry on Failure(HH:MM:SS) and Interval**: The retry behaviour can be specified by specifying the the time and the interval of the retry. the default value of 00:00:00 will retry immediately

**Inbound Sync Response:** Use this ONLY for REST, SOAP, Oracle CMK and OTM based connection. you can specify a **Sync Response** message to be returned to the sender. The code to generate the response can manually entered or by loading [Scripts](https://justransform.atlassian.net/wiki/spaces/JTHELP/pages/2719884/Scripts) [Toolbar - Map Chain](https://justransform.atlassian.net/wiki/spaces/JTHELP/pages/18219434/Toolbar+-+Map+Chain) or a [Mapper](https://justransform.atlassian.net/wiki/spaces/JTHELP/pages/33057/Mapper)

2. Click **Save**.


# Updating a Connector

### Edit a Connection

1. To edit a connection, select a connection within the Connections Module.&#x20;
2. Adjust the Connection Module within the Editor Panel.
3. Click "**Save**".

### Schedule a Connection

Scheduling a Connection runs the connection on a scheduled basis. To enable a scheduled connection:

1. Within the **Connections** panel, select the Connection to schedule.
2. Click "**Start Scheduler**"

<figure><img src="/files/Jb83CPq1JgKFZRzBwzLp" alt=""><figcaption></figcaption></figure>

1. Click "**Confirm Start Scheduler**"

### Stop a Scheduled Connection

To stop a scheduled connection:

1. Within the **Connections** panel, select the Connection to stop the schedule.
2. Click "**Stop Scheduler**"

<figure><img src="/files/jSpMMRAzaXYxDhrsWEiu" alt=""><figcaption></figcaption></figure>


# Business Processes

Accessed through clicking Development > "**Business Processes"** link on the left side panel of the application.

Business Processes are defined workflows that include a variety of actions such as data transformations, data validations, and communication with external systems and applications. By creating a Business Process in Justransform, these steps will be executed automatically by Justransform upon new data being provided by a Connection.&#x20;


# Creating a Business Process

To create a new Business Process within Justransform, click "**+**" within the Business Processes Module.&#x20;

1. Drag & Drop components from the left into the Development Area

<figure><img src="/files/lXwuPCjVcYSnQXVs8cPZ" alt=""><figcaption></figcaption></figure>

2. Once the Business Process has been completed, click the "**Save**" button

<figure><img src="/files/ujty0r17ms0juR3wExpO" alt=""><figcaption></figcaption></figure>

3. Select a location to save the Business Process within your Resources.
4. Specify the Business Process name in the TextField. If the folder doesn’t exist, you can create a new Folder from the same window.

{% hint style="info" %}
Example: PurchaseOrderToXMLAndPDF
{% endhint %}

5. Click the "**Save**" button.


# Components of Business Process

**Justransform Business Process (BP)** is complete encapsulation of a all message processing and business rules that needs to get applied over a set of messages received by a connection. The Business Process Editor allows users to implement these rules by utilizing different components of the **BP.** Once you get familiar with the editor and the components you can virtually implement any simple to complex logic to for any message processing rules. The following components are available

Map/MapChain/JTScript (Custom Function)

JTUtils

EditSyncResponse

Conditional Fork

IF Condition

(CBR) Content Based Routing

EDI to XML Transformation

XML to EDI Transformation

Insert Business Process

Import Business Process

Set File Name

Set Business IDs

Set Source Target Data Type

HL7EDI to XML Transformation

997 Response Generation

CSV to XML Transformation

XML to CSV Transformation

IDOC to XML Transformation

PDF to XML Transformation


# Map/MapChain/JTScript (Custom Function)

Among all of the components within the Business Process, Map/MapChain/JTScript (Custom Function) - **CF** component is the most important component of, the process. It can contain logic for ANY to ANY Transformation, Validation, Split Merge and any other message processing requirement

To **CF** to a business process drag and drop it from the left panel. You will have the following window

![image-20200513-141623.png](blob:https://justransform.atlassian.net/d6dc9da0-5d58-4db2-8bdd-3296099c51d7#media-blob-url=true\&id=753931c8-94a2-4fdc-882f-acaea08c14bf\&collection=contentId-18219077\&contextId=18219077\&height=912\&width=1260\&alt=)![](/files/CmWYhGROccVthvJEkzGH)

At this junction, you have 3 options

1. You can inject a JTMap created by using Mapper
2. You can inject a JTMapChain created by using Map chain
3. You can write your custom script JT Scripts

Once you drag and drop the custom function you will be able to see all the pre-defined JT Utils, which is useful in importing the Lookup Tables, Global variables, Mappers, and many more.

<figure><img src="/files/lnYxbvU55WMo8yXmirmi" alt=""><figcaption></figcaption></figure>

You can find the list of all the pre-defined functions on the JT Utils page.

Also, it has pre-defined variables.&#x20;

For example:- Transaction Id

It also has the For-loop code in the Customfunction.

<figure><img src="/files/mnfyTXbdUwQTiEVFsAGP" alt=""><figcaption></figcaption></figure>


# Conditional Fork

Conditional Fork added content based processing by allowing to add one or more IF Condition inside a BP. Based on the diff content within a payload a totally different and mutually exclusive set of rules and routing logic can be applied.

Conditional Fork by itself doesn’t contain any logic but its a container for one or more IF Condition . In order to add an IF Condition you will need to have a Conditional Fork added.

To add Conditional Fork simply drag and drop the “Conditional Fork” module from the left to the editor area and click Save in the confirmation window

<figure><img src="/files/P2nJce7bXsYdm809cgZ8" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/N5r11HecMyObxxNxKkQ4" alt=""><figcaption></figcaption></figure>


# IF Condition

One of more **IF Condition** can be added within a conditional fork to enable content based processing and routing.&#x20;

To add an **IF Condition**

1. **Drag the IF Module from the BP components and drop it into the conditional fork.**
2. The below Screen will be displayed.

<figure><img src="/files/xgoQxG4w8tpljeb7EAp9" alt=""><figcaption></figcaption></figure>

3. Make the necessary changes
4. Save the IF condition.

<figure><img src="/files/1Gpu1RpwxzCoSmyRoVmX" alt=""><figcaption></figcaption></figure>


# (CBR) Content Based Routing

Content-based routing (CBR) is a technique for routing messages or requests to different destinations based on their content. CBR can be used to improve the performance, scalability, and flexibility of communication systems. For example, CBR can be used to route web traffic to different servers based on the content of the request or to route messages from different sources to different consumers based on their content.

1. Drag the CBR from the BP Components and drop it on the right side.
2. The below screen will be displayed

<figure><img src="/files/H6FREQJ99rKPPyPn8SDe" alt=""><figcaption></figcaption></figure>

3. Enter the CBR name you want.
4. Select the file format - XML / JSON.
5. Enter the XPath.
6. Click on Add Item&#x20;

* In **VALUE AT XPATH -** Enter the value of the field you want it to identify.
* In **TARGET CONNECTION -** Select the connection to which you want to send the file.

7. Click on Save


# EDI to XML Transformation

This module helps in converting the EDI file into the XML format.

1. Drag the EDI to XML transformation module from BP components and drop on the right side
2. The below screen will appear

<figure><img src="/files/SwddWuUwKeGgsbv7Ukm1" alt=""><figcaption></figcaption></figure>

3. **Acknowledge -** Click on it you will see three options **AUTOMATIC, ALWAYS, NEVER.**

Select the type you want.

4. **Connection ID -** Should be mention it as '0'.
5. Click on save.


# XML to EDI Transformation

* Drag the XML to EDI transformation module from BP components and drop it on the right side
* The below screen will appear

<figure><img src="/files/u3lcjjZAN6LpV1gad8Cb" alt=""><figcaption></figcaption></figure>

3. Select the EDI Type - EDIFACT, or X12
4. Click on save


# Insert Business Process

This helps in inserting the existing Business process in the Current Business Process.

* Drag the Insert Business process module from BP components and drop on the right side
* The below screen will appear

<figure><img src="/files/6xPWp8UxLVdoBbPn8gL9" alt=""><figcaption></figcaption></figure>

3. Select the BP you want to insert in the current BP.
4. Click on save


# Import Business Process

It is similar to inserting a business process.

* Drag the Import Business process module from BP components and drop on the right side
* The below screen will appear

<figure><img src="/files/Dz0i8HUry2aoPfAKM2KF" alt=""><figcaption></figcaption></figure>

* Select the BP you want to insert in the current BP.
* Click on save


# Set File Name

* Drag the Set file name module from BP components and drop it on the right side
* The below screen will appear

<figure><img src="/files/vI0GhFPVkHFc2kO7zDDz" alt=""><figcaption></figcaption></figure>

3. Enter the code and click on validate to check if the code contains any mistakes.
4. click on save


# Set Business IDs

It helps in setting the Business IDs for the transactions. You can set up five business IDs.

You can store the necessary information for the transactions such as - Scac code, Shipment ID, Invoice No, and so on. &#x20;

<figure><img src="/files/2Th4u3ra0SglKEwjxJId" alt=""><figcaption></figcaption></figure>

3. Enter the XPath from where the value should be extracted and populated in the Business IDs.
4. Click on save


# Set Source Target Data Type

This module helps us in setting the type of input file we are receiving and the type of file we are sending.&#x20;

1. Drag the Set source target data type module from BP components and drop on the right side
2. The below screen will appear

<figure><img src="/files/jccafOan07NFSgrwqGBy" alt=""><figcaption></figcaption></figure>

3. In Data Type In - Mention the type of file we are receiving from the sender.

Ex:- If we are receiving a tender offer from OTM. So, the data type In can be written as&#x20;

**OTM Tender Offer XML.**

And if the output we are sending as EDI 204 then the data type out can be&#x20;

**EDI 204.**

4. Click on save


# (STC) Set Target Connection

This module helps in sending the transformed files to the target connection

It can be customers/Carriers.

1. Drag the (STC) Set target connection module from BP components and drop on the right side
2. The below screen will appear

<figure><img src="/files/ezWVw4enC5FouWrS2pda" alt=""><figcaption></figcaption></figure>

Enter the connection to which the target file has to be sent.

3. If you are using STC then it is compulsory to create a connection first. to which the file has to be sent.
4. Click on save.


# HL7EDI to XML Transformation

HL7 is also one type of EDI like EDIFACT and X12.

1. Drag the HL7EDI module from BP components and drop on the right side
2. The below screen will appear

<figure><img src="/files/lGtbA3bv48elyCT559wY" alt=""><figcaption></figcaption></figure>

3. Click on save


# 997 Response Generation

The 997 is nothing but the acknowledgment message that we get on receiving/sending files.

1. Drag the 997 response module from BP components and drop on the right side
2. The below screen will appear

<figure><img src="/files/zXgNDoF7mZhe51DE37Kg" alt=""><figcaption></figcaption></figure>

3. Select the file
4. Enter zero '0' in the connection ID always.
5. Click on save


# CSV to XML Transformation

A CSV to XML Converter is a tool that transforms data from a Comma-Separated Values (CSV) format into an **Extensible Markup Language** (XML) format. It facilitates the conversion of tabular data into a structured and hierarchical XML representation for interoperability and data interchange.

1. Drag the CSV to XML Transformation from BP components and drop on the right side
2. The below screen will appear

<figure><img src="/files/oOmLWlVUUdn3rlSloCt4" alt=""><figcaption></figcaption></figure>

3. Select the JT sheets. (JT Sheets are similar to Excel which stores the CSV data in tabular format)
4. Click on save.


# XML to CSV Transformation

It is the opposite of CSV to XML transformation module.

1. Drag the XML to CSV Transformation from BP components and drop on the right side
2. The below screen will appear

<figure><img src="/files/ud4epFk0AsUxvgHT5bL9" alt=""><figcaption></figcaption></figure>

3. Select the JT sheets. (JT Sheets are similar to Excel which stores the CSV data in tabular format)
4. Click on save.


# IDOC to XML Transformation

IDOC to XML is a process of converting an IDoc (Intermediate Document) to an XML (Extensible Markup Language) file. An IDoc is a standard format for exchanging data between SAP systems and other applications. An XML file is a text-based format that uses tags and attributes to represent data structures.

1. Drag the CSV to XML Transformation from BP components and drop on the right side
2. The below screen will appear

<figure><img src="/files/z30VhTSkcASWjpiOShjd" alt=""><figcaption></figcaption></figure>

3. Select the file
4. click on save


# PDF to XML Transformation

PDF to XML means converting a PDF file to an XML file. PDF stands for Portable Document Format, which is a file format used to present documents in a manner independent of application software, hardware, and operating systems1. XML stands for Extensible Markup Language, which is a coding language similar to HTML that can be used to structure data2. Converting PDF to XML can be useful for extracting structured information from PDF files, such as text, fonts, graphics, and layout

1. Drag the PDF to XML Transformation from BP components and drop on the right side
2. The below screen will appear

<figure><img src="/files/vAgohnHJE8ff3dvODHx4" alt=""><figcaption></figcaption></figure>

3. Select the sheet.
4. Click on save


# Flat File to XML transformation

A flat file is a simple text file that contains data in a tabular or delimited format, such as CSV, TSV, or TXT. A flat file does not have any structure or schema, and each record is separated by a delimiter, such as a comma, tab, or space. A flat file can be easily read and written by humans and machines.

1. Drag the flat file to xml from BP components and drop on the right side
2. The below screen will appear

<figure><img src="/files/XhwnBWhDPiTqZEW1q3zw" alt=""><figcaption></figcaption></figure>

3. Select the file
4. click on save


# JT UTILS

You can find all the pre-defined JT Utils when you drag and drop customfunction.

And variables.

1. JTUtil.logSuccessEvent(String description, Long transactionId, String payload) - Method to be used for logging success event&#x20;
2. JTUtil.logFailureEvent(String description, Long transactionId, String payload) - Method to be used for logging failure event&#x20;
3. JTUtil.logWarningEvent(String description, Long transactionId, String payload) - Method to be used for logging warning event&#x20;
4. JTUtil.throwJTException(String message) - Method to throw exception&#x20;
5. InputStream streamInitial = JTUtil.getInitialPayload(Long transactionId, String payload) - Method to download the Initial Payload of the transaction
6. Long resourceIdUploaded = JTUtil.uploadFile(InputStream stream, String extension) - Method to upload the file
7. InputStream streamDownloaded = JTUtil.downloadFile(Long resourceId) - Method to download the file based on resourceId
8. String value = JTUtil.getID(Long transactionId, String idName) throws JTServerException;
9. bd1 - BusinessID1, bd2 - BusinessID2, bd3 - BusinessID3, bd4 - BusinessID4, bd5 - BusinessID5
10. dtin - DataTypeIn, dtout - DataTypeOut, infname - InboundFileName, outfname - OutboundFileName
11. java.sql.Connection connection = JTUtil.initializeSFDC(String username, String password, String token, String useSandbox) - method to get salesforce connection
12. transaction = JTUtil.setBusinessIds(Transaction transaction, String businessId1, String businessId2, String businessId3, String businessId4, String businessId5) - method to set business Ids
13. transaction = JTUtil.setDataTypesInOut(Transaction transaction, String dataTypeIn, String dataTypeOut) - method to set Source Target data types
14. JTUtil.setGlobalData(Transaction transaction, String variable, String value) - method to set global variable
15. String value = JTUtil.getGlobalData(Transaction transaction, String variable) - method to get the global variable
16. String value = JTUtil.getValue(Long transactionId, String tableName, String key) - method to get the value from look up table&#x20;
17. Response res = JTUtil.putValue(Long transactionId, String tableName, String key, String value) - method to put key with value from look up table
18. JTUtil.deleteValue(Long transactionId, String tableName, String key) - This will delete the value from lookup table.//String publishToNetsuite(Transaction transaction, String netsuiteURL, String payload, String soapAction) - method to call the external Netsuite API.
19. JTUtil.publishToConnection(Transaction transaction, Long targetConnectionId, String payload) - method to call STC handler through the custom function with payload as "String"
20. JTUtil.publishToConnection(Transaction transaction, Long targetConnectionId, FileInputStream payload) - method to call STC handler through the custom function with payload as "FileInputStream"
21. String responseData = JTUtil.ediValidator(String input, long transactionId) - method to validate EDI&#x20;
22. Map\<String, InputStream> unzippedInputFilesMap = JTUtil.unzipBatch(transaction) - method to unzip current transaction's batched (zipped) payload; returns file map that can be iterated over to process each file
23. JTUtil.putInternalSqsMsg(String standardQueueUrl, String messageBody) throws JTServerException - method to send data in the sqs queue(standardQueueUrl- represents the amazon sqs queue created by JT and messageBody- data that will be sent as queue message)
24. List internalSqsMsgs = JTUtil.getInternalSqsMsg(String standardQueueUrl, int maxNoOfMsgs) throws JTServerException - method to receive data from the sqs queue(standardQueueUrl- represents the amazon sqs queue created by JT and maxNoOfMsgs- max number of queue messages; maxNoOfMsgs value can be between 0 and 10)
25. String resourceS3Key = JTUtil.upload(String payload) - This method will upload the payload string to S3 and return AWS S3 key.&#x20;
26. String resourceS3Key = JTUtil.upload(InputStream payload) - This method will upload the payload InputStream to S3 and return AWS S3 key.&#x20;
27. InputStream file = JTUtil.downloadFile(String resourceS3Key) - This method will return InputStream of File Data from AWS S3.
28. String file = JTUtil.downloadFileAsString(String resourceS3Key) - This method will return the file data as String from AWS S3.
29. transaction = JTUtil.updateIdsInTransaction(Transaction transaction) - This will update the the BusinessIds, DataTypeIn, DataTypeOut, InboundFileName, OutboundFileName and DestConnection to the transaction and return the Transaction.
30. Integer random = JTUtil.getRandomNumber(Integer pSize) - This will return the randomNumber as Integer ,Digits size as pSize.&#x20;
31. String value = JTUtil.getLookupValue(Long transactionId, String tableName, String key) - This Will return lookup table value as string.&#x20;
32. String value = JTUtil.getLookupTableValue(String tableName, String key) - This will return Lookup table value.(get lookup table by key using user logged in (UI))
33. String value = JTUtil.getLookupTableValue(Long transactionId, String tableName, String key) - This will return the value as string.&#x20;
34. String value = JTUtil. getLookupTableValue(String tableName, String key, String column) - This will return Lookup table inner value as string ,get lookup table by key and column using user logged in (UI)
35. String value = JTUtil.getLookupTableValue(Long transactionId, String tableName, String key, String column) - This will return inner value of lookup Table inner value as String.&#x20;
36. String value = JTUtil. getLookupTable(Long transactionId, String tableName) - This will return the the lookupTable as String. //JTUtil.putLookupTableValueByToken(String token, String key, String col, String value) - This will store the value in inner value of LookupTable.
37. String value = JTUtil.getLookupTableValueByToken(String token, String key) - This will return the value as String from the Lookup table on basis of key.&#x20;
38. String value = JTUtil.getLookupTableValueByToken(String token, String key, String column) - This will return the inner value as String from the lookup table on basis of key and column.
39. JTUtil.deleteLookupTableValueByToken(String token, String key) - This will delete the lookup table value based on key.&#x20;
40. String keys = JTUtil.getAllKeysByToken(String token) - It will return all the values in lookup table as a List.&#x20;
41. JTUtil.setLookupTable(Long transactionId, String tableName, String content) - It will set value in lookup table.
42. JTUtil.publishToNetsuite(Transaction transaction, String netsuiteURL, String payload, String soapAction) - This will publish the payload to netsuite and return string.&#x20;
43. JTUtil.callNetsuiteApi(String netsuiteURL, String payload, String soapAction, long transactionId, JSONArray jsonEventArray) - It will call the NetSuiteAPi and return string.
44. JTUtil.publishToNetsuiteV2(Transaction transaction, String netsuiteURL, String payload, String soapAction, String nsconsumerKey, String nsconsumerSecret, String nstokenKey, String nstokenSecret, String nsrealm) - This will publish to the netSuiteV2 and return string.&#x20;
45. JTUtil.callNetsuiteApiV2(String netsuiteURL, String payload, String soapAction, long transactionId, JSONArray jsonEventArray, String nsconsumerKey, String nsconsumerSecret, String nstokenKey, String nstokenSecret, String nsrealm) - This will call the NetSuiteV2 api and return a string.
46. String path = JTUtill.convertPDFToXML(InputStream fis) - This will convert the pdf to xml and return return the path as String&#x20;
47. String path = JTUtil.convertPDFToExcel(InputStream fis) - This will convert the pdf to excel and return the path as String.
48. String path = JTUtil.convertExcelactiveSheetToCSV(InputStream fis, String delim, int countryCode) - This will convert excel active sheet to csv and return the path as string.
49. String path = JTUtil.convertExcelToCSV(InputStream fis, String delim, int countryCode) - This will convert excel sheet to csv and return the path as String.&#x20;
50. JTUtil.putEvent(JSONArray jsonEventArray, Rests rest, long transactionId) - This will create the handler event from rests status.&#x20;
51. String payload = JTUtil.getAllPayload(String emailId, String key, String value) - This will return all the events for that emailID User as List.
52. String edi = JTUtil.unescapeXMLChars(final String text) - This will unescaped XML Chars&#x20;
53. JTUtil.updateConnection(com.justransform.entity.Connection connection) - This will update the connection details.&#x20;
54. JTUtil.sendEmail(String recipients, String subject, String body) - This will send the email.&#x20;
55. List payload = JTUtil.getAllPayloadByKey(String emailId, String key, String value, String option) - This will return all the payload for the user as list.
56. List payload = JTUtil.getAllPayloadByKey(String emailId, String key, String value) - This will return all the payload for the user as list.&#x20;
57. String status = JTUtil.callRest(Transaction transaction, String input, String cusername, String cpassword, String cPostURL, String contentType ,String cAuthToken, String authMethod, Boolean isAccessTokenInUrl) - This send the rest api request and return string.
58. String status = JTUtil.callRestApi(Transaction transaction, String input, String cPostURL, String contentType, String cusername, String cpassword) - This send the rest api request and return string.&#x20;
59. Response response = JTUtil.sendGetRequest(Long transactionId, String url) - This send the get request and return the Response.&#x20;
60. Response response = JTUtil.sendPostRequest(Long transactionId, Object input, String url ) - This will send the post request and return the Response.&#x20;
61. Response response = JTUtil.sendDeleteRequest(Long transactionId, String url) - This will send the delete request and return the Response&#x20;
62. JTUtil.sendEmailWithAttachment(String recipients, String subject, String body, String attachmentFileName, InputStream attachmentData) - This will send email with attachments.
63. JTUtil.incrGlobalData(Transaction transaction, String variable) - This will increase the global variable.&#x20;
64. JTUtil.createConnection(com.justransform.entity.Connection connection, String email) - This will create the new connection&#x20;
65. JTUtil.shareConnection(Long connectionId, String userEmail) - This Will share the connection with different user.&#x20;
66. JTUtil.setResponseContentType(HashMap\<String, String> httpHeaders, String contentType) - This will set the content type for rest call.&#x20;
67. List payload = JTUtil.getAllPayloadFromTransactions(String emailId, Map\<String,String> filterMap) - This will return all the payload for that User as List.
68. String text = JTUtil.extractTextFromPDF(InputStream inputStream) - This method will extract text from the pdf and return it as string.&#x20;
69. String text = JTUtil.extractTextWithoutStrip(InputStream inputStream) - This method will extract text from the pdf without strip and return it as a string.
70. JTUtil.removeSftpFiles(Long transactionId, Long connectionId, String path, Duration duration, String regexFileNamePattern) - This method will remove sftp file from the given path.&#x20;
71. Boolean onboarded = JTUtil.onBoardTenant( String userName, String domain, String emailId, String lookUpToken, String userId) - This method will on board a new Tenant to Justransform and it will return Boolean.
72. String usernameAndPassword = JTUtil.createEnterprise( String firstName, String lastName, String userName, String domain, String emailId ) - This method will create the new enterprise and return string UserName and Password.
73. String usernameAndPassword = JTUtil.createEnterprise( String firstName, String lastName, String userName, String domain, String emailId, UserVo adminUser,String enterpriseName, boolean checkInvitedEnterprise) - This method will create the new enterprise and return string UserName and Password.
74. List keys = JTUtil.getLookupTableKeys(Long transactionId, String tableName, Map\<String, String> valueMap) - This method will return List , all the keys of Lookup table.
75. String result = JTUtil.getMapperResult(Long transactionId, long resourceId, String input) - This method will return mapper Result as String.&#x20;
76. Boolean isSent = JTUtil.sendFileToSftpOutbound(Long connectionId, Transaction transaction, File file) - This method will send the file to SftpOutbound and return Boolean.
77. String fileName = JTUtil.getFileName(ConnectionVo connectionVo, Transaction transaction) - This method will return file name from conection or transaction as a String&#x20;
78. Map\<String,Map\<String,String>> parsedSheet = JTUtil.parseJTSheet(Long resourceId, String sheet, String keyDelimiter, int... keyCols) - This method will parse the JTSheet and return the
79. InputStream file = JTUtil.validateCSV(InputStream file, Long resourceId) - This method will validate the CSV file return the InputStream<br>
80. Long resourceId = JTUtil.createValidationFrom(Long resourceId, InputStream file) - This will validate the file from the create Resource and return resource id as Long.
81. List\<Map\<String,String>> data = JTUtil.extractDataFromValidation(Long resourceId, InputStream file) - This will extract Data from file and validate&#x20;
82. Object json = JTUtil.parseJsonText(String text) - This method will parse the json string and return the Object&#x20;
83. Object json = JTUtil.parseJsonStream(InputStream inputStream) - This method will parse the inputStream and return the Object.
84. Object xml = JTUtil.parseXmlText(String text) - This method will parse the xml string and return the Object.&#x20;
85. Object xml = JTUtil.parseXmlStream(InputStream inputStream) - This method will parse the inputStream and return the Object&#x20;
86. JTUtil.addFavouriteLink(Long userId, String url, String title) - This method will add the favorite link to the dashboard of that user.&#x20;
87. JTUtil.addFavouriteLink(String email, String url, String title) - This method will add the favorite link to the dashboard of that email user.&#x20;
88. JTUtil.joinProgram(Long programId, Long userId) - This method will join program to the user&#x20;
89. JTUtil.joinProgram(Long programId, String userEmail) - This method will join program to the userEmail user.&#x20;
90. String updatedJsonStr = JTUtil.replaceJsonKeyWhiteSpace(String jsonStr, String replaceStr) - This method will replace jsonStr white space with replaceStr.

\-----JTLookUtil function --------

1. &#x20;String data = JTLookupUtil.getLookupTable(String token) - This Method will return String, lookup table data.&#x20;
2. JTLookupUtil.truncateLookupTable(String token) - this method will delete all the data in Lookup Table.&#x20;
3. String data = JTLookupUtil.getLookupTableValue(String token, String key) - this method will return String, lookup table on basis of key.&#x20;
4. String data = JTLookupUtil.getLookupTableValue(String token, String key, String expression) - This method will return String, lookup table inner value on basis of key and expression.&#x20;
5. JTLookupUtil.putLookupTableValue(String token, String key, Object value) - This method will store value in lookup table on basis of key.&#x20;
6. JTLookupUtil.putLookupTableValue(String token, String key, String expression, Object value) - This method will store inner value in lookup table on basis of key and expression&#x20;
7. JTLookupUtil.deleteLookupTableValue(String token, String key) - This method will delete value from the lookup table, on the basis of key.&#x20;
8. JTLookupUtil.deleteLookupTableValue(String token, String key, String expression) - This method will delete the inner value from the lookup table, on the basis of key and expression.
9. &#x20;String data = JTLookupUtil.getLookupTableByTokenAndDateFilter(String token, String column, Date startDateUTC, Date endDateUTC) - This method will filter lookupValue by startDate and endDate
10. &#x20;String keys = JTLookupUtil.getAllKeysByToken(String token) - This method will return list of all keys from a lookup table \*/

**PRE-DEFINED** **VARIABLES**

1. transaction variable is already defined and points to transaction object.
2. resourceId - variable is already defined and points to current payload's resourceId.
3. transactionId - variable is already defined that can be accessed as the transaction ID
4. tempFolder variable is already defined and points to temporary folder which can be used for storing temporary files.


# Updating a Business Process

To update a Business Process within Justransform, click "**Open**" within the Business Processes Module.&#x20;

<figure><img src="/files/WgeViHjKHxv0CtBnAtI0" alt=""><figcaption></figcaption></figure>

1. You will be presented with a FileOpen Window, where you can select the business process to open for editing/updating

<figure><img src="/files/dRgRILR8OJa4S0WB40GF" alt=""><figcaption></figcaption></figure>

2. Click "**Open**"

<figure><img src="/files/lXwuPCjVcYSnQXVs8cPZ" alt=""><figcaption></figcaption></figure>

3. Edit existing Business Process components or Drag & Drop components from the left into the Development Area
4. Once the Business Process has been completed, click the "**Save**" button
5. Enter a Comment and click "**Save**"

<figure><img src="/files/onL4YEjlnxHctEbBaTcu" alt=""><figcaption></figcaption></figure>


# Activating a Business Process

Business Processes can be activated within the Connections panel. Accessed through clicking Development > "**Connections"** link on the left side of the application.

1. You will see the details of the connection on the details tab. For example, in an SFTP connection, you will see the following

<figure><img src="/files/gwlUoZdeYqU8GcePh16M" alt=""><figcaption></figcaption></figure>

{% content-ref url="/pages/4UxXq4ZPX00Ld1fa8ih3" %}
[Creating a Connector](/development/connections/creating-a-connector)
{% endcontent-ref %}

{% content-ref url="/pages/HbVxPR1CE2Dvj5TfFTc7" %}
[Updating a Connector](/development/connections/updating-a-connector)
{% endcontent-ref %}

Business Processes can be used in four scenarios within a connection. The Business Process will be activated based on the stage of the connection transformation lifecycle.

**Business Process to be executed for incoming file**

Any Business Process activated here will get executed as soon as a message is received by the connection.

**Business Process to be executed for Outgoing file**

Any Business Process activated here will get executed when this connection is used as an **outbound** connection.

**Business Process to be executed for Synchronous Response**

Any Business Process activated here will get executed **asynchronously** when this connection receives a synchronous response.

**Business Process to be executed for Acknowledgement**

Any Business Process activated here will and will send back as an **asynchronous** acknowledgement back to the sender.


# Opening/View a Previous Version of Business Process


# View and Compare  version history of Business Process

1. Click on Resource Library on the left and expand the folder containing the Business Process

<figure><img src="/files/YvQWMe7MlOulXornYxJe" alt=""><figcaption></figcaption></figure>

2. Click on the Business Process to view the detail and the version history on the right details panel

<figure><img src="/files/PJfm8NkHcPYFcg7dke0M" alt=""><figcaption></figcaption></figure>

3. Click on the Version Info tab on the detailed panel
4. You will see all version history with comments.

<figure><img src="/files/8ocwfKbSVppNyfTaKQXX" alt=""><figcaption></figcaption></figure>

5. You can download any older version if needed by clicking on the download icon on the right.

**Compare two versions of Business Process**

* From the version history tab select the two versions you want to **compare** (Click on the check boxes against the versions)
* a **Compare** button will appear as below

<figure><img src="/files/cHsOjSyUeneB3vVrVuWQ" alt=""><figcaption></figcaption></figure>

* Click on **Compare**
* You can see the differences highlighted

<figure><img src="/files/0qIccanEGsIlxfIP8vwd" alt=""><figcaption></figcaption></figure>


# Open Previous Version of Business Process

Updating a Business Process (BP) is a fairly simple task and very similar to [Business Process Development](https://justransform.atlassian.net/wiki/spaces/JTHELP/pages/18186353)

* Open the BP by navigating to “Business Processes” and clicking the **Open** button

<figure><img src="/files/TqU4PeoIm6aYHStOBqeA" alt=""><figcaption></figcaption></figure>

* You will be presented with a FileOpen Window, where you can select the business process to open for editing/updating

<figure><img src="/files/Aw7SILg9D6L1TTIIYlLB" alt=""><figcaption></figcaption></figure>

* Right Mouse Button Click on the business process and click on “Use Other Version”

<figure><img src="/files/Jt0UW4hBa9eaCD45OH2F" alt=""><figcaption></figcaption></figure>

* Select the required version of the business process from the dropdown list

<figure><img src="/files/MT2ffuhxpLHZ9J79oXLa" alt=""><figcaption></figcaption></figure>

* The comment associated with the version will be displayed.

<figure><img src="/files/VdzTxIaa7myERRtdJbRr" alt=""><figcaption></figcaption></figure>

* If everything looks good, click on **Select**
* The version of the Business Process will open.

<figure><img src="/files/fha5ovavja1sp1Ymc8AD" alt=""><figcaption></figcaption></figure>

* You can edit, and save it as new version if needed.


# Mapper & Map Chains

Using Mapper and Map Chains is a joint process of defining data transformation between another system or application.

Initially, Mapper is used to define the initial data transformation process.

**Mapper:** Mapping is the process of defining how data from one system or application should be transformed and mapped to another system or application. This involves specifying the relationship between fields in the source and target systems or applications.&#x20;

{% hint style="info" %}
For example, if you are integrating a Trading Partner with an accounting system, you may need to map e-Orders from your Trading Partner to the invoicing in the accounting system. The Trading Partner may use PEPPOL and the accounting system may use REST.
{% endhint %}

Information on using Mapper can be found below:

{% content-ref url="/pages/BY5Uq1VlCW05XyXF8QeK" %}
[Mapper](/development/mapper-and-map-chains/mapper)
{% endcontent-ref %}

On completion of your Mapper creation. Map Chains can be used to create chains of multiple Mapper processes.

**Map Chains:** Map Chains are a series of mappings that are linked together to form a complex data integration process. Map Chains are used to automate the transfer of data between multiple systems and applications, and to transform and manipulate the data in a specific order. By using Map Chains, this reduces the time and effort required to perform manual data mapping and manipulation, and improves accuracy and consistency of the data integration operations.

Information on using Map Chains can be found below:

{% content-ref url="/pages/YJXWLWiIm08HfOn6HiaM" %}
[Map Chains](/development/mapper-and-map-chains/map-chains)
{% endcontent-ref %}


# Mapper

Accessed through clicking Development > "**Mapper"** link on the left side panel of the application.

Mapping is the process of defining how data from one system or application should be transformed and mapped to another system or application. This involves specifying the relationship between fields in the source and target systems or applications.&#x20;

<figure><img src="/files/erEfFVwrHUuydyJ6aHMg" alt=""><figcaption></figcaption></figure>

On the top of the Mapper panel there are controls for:

* Creating a new Mapper process
* Opening a Mapper process
* Saving a Mapper process

Along with Editor controls:

* Undo/Redo
* Applying a new source model from file
* Applying a new target model from file
* Test Map
* Edit Map variables from the Groovy Script
* Edit Map Lookup Tables from the Groovy Script
* Edit functions
* Edit classes
* Edit scripts
* Excel Import/Export
* JTMapper Preferences


# Creating a Map

To create a Map within Justransform, click "**+ New**" within the Mapper Module.&#x20;

1. Load the Source Payload/Input Payload in "Source Model" or Target Payload in "Target Model".

{% embed url="<https://drive.google.com/file/d/1gwLGw4WlGgHW1zhlfy4lRGPCpc4mBdvY/view?usp=share_link>" %}

### Understanding Source Model

{% embed url="<https://drive.google.com/file/d/1v9n6pGV8GU1e17QD0tbUQ-Qsqg79yLZ3/view?usp=sharing>" %}

### Understanding Target Model

{% embed url="<https://drive.google.com/file/d/1NuEFuzepnDvJztdOyriuwkdnY2tEtQ4G/view?usp=sharing>" %}

## Developing your Map

### Source-Target Mapping

{% embed url="<https://drive.google.com/file/d/1vbJ9Ql46saQ1c-wh2ov-hkBlL-DsXd5E/view?usp=share_link>" %}

### Code Node Editor: Loop, IF

Create loops, add IF conditions, create variables, create calculations, and many more features.

{% embed url="<https://drive.google.com/file/d/17q_nOLN4TM6tlUCuY8F4SUitMljspFue/view?usp=share_link>" %}

### Lookups and Programming Tools

In very complex requirements, Mapper may require more complex logic. These can use Global Variables, Lookups, Functions, Classes, Prolog and Epilog Scripts.

{% embed url="<https://drive.google.com/file/d/11aO9GdId6DfXKdc2LpQ90atrSG2uvZqL/view?usp=share_link>" %}

### Metadata - Import/Export

{% embed url="<https://drive.google.com/file/d/10obU9E9No-rhB2qaYfYQjt62EZcng30t/view?usp=share_link>" %}

## Running & Testing your Map

After completion of the map, running and testing the map is crucial before using it within a Business Process.

{% embed url="<https://drive.google.com/file/d/17oGuQ4JU4yf__bf4Bs_m72291HMyh7Ut/view?usp=share_link>" %}


# Updating a Map

To update a Map within Justransform, click "**Open**" within the Mapper Module.&#x20;

<figure><img src="/files/WgeViHjKHxv0CtBnAtI0" alt=""><figcaption></figcaption></figure>

1. Select the Map file to open.
2. Click "**Open**"

For Information on adjusting your Map file, follow our guide on creating a map.

{% content-ref url="/pages/mnpSHDhIDof2VIcKGyvF" %}
[Creating a Map](/development/mapper-and-map-chains/mapper/creating-a-map)
{% endcontent-ref %}


# Map Chains

Accessed through clicking Development > "**Map Chains"** link on the left side panel of the application.

Map Chains are a series of mappings that are linked together to form a complex data integration process. Map Chains are used to automate the transfer of data between multiple systems and applications, and to transform and manipulate the data in a specific order. By using Map Chains, this reduces the time and effort required to perform manual data mapping and manipulation, and improves accuracy and consistency of the data integration operations.

<figure><img src="/files/xXpTa6qTfkMNAk3TlAMi" alt=""><figcaption></figcaption></figure>

On the top of the Mapper panel there are controls for:

* Creating a new Map Chain
* Opening a Map Chain
* Save a Map Chain process
* Run the Map Chain process


# Creating a Map Chain

To create a Map Chain within Justransform, click "**+ New**" within the Map Chain Module.&#x20;

{% hint style="info" %}
Note: Ensure you have created Mapper Maps and Script Sections prior to creating a Map Chain.
{% endhint %}

1. Drag & Drop a link type from the left into the Development Area

<figure><img src="/files/bTp5v1UdyToKHfHf8RiT" alt=""><figcaption></figcaption></figure>

2. Select the Map created in Mapper or Script created in Scripts. Click **Open**.

<figure><img src="/files/Z58JW6WzE0xIptgIMnSa" alt=""><figcaption></figcaption></figure>

The Map Chain Development Area has 5 columns

**Pos.:** The position of the JTScript or JTMap in the chain.

**Actions:** The Action column.

**Status:** Provides information about the validity of the JTMap or JTScript.

**Name:** Name of the JTMap or JTScript file as stored in the Resources folder.

**Type:** Tells whether the link type is JTMap or JTScript.

**Content:** Displays the location of the JTMap or JTScript within the Resources folder.

3. Select and Drag the chain links into the correct order. Position 0 is run first.
4. Execute the Map Chain using the **Execute** button.

<figure><img src="/files/7PKLGA5KAcJisMT0y3lO" alt=""><figcaption></figcaption></figure>

3. Once completed, click the **Save** icon.

\ <br>


# Updating a Map Chain

To update a Map Chain within Justransform, click "**Open**" within the Map Chain Module and select the saved Map Chain from the Resources folders.

1. Using the Actions buttons within the Development Area, make changes to Map Chain. Use Drag & Drop to add additional link types from the left into the Development Area

<figure><img src="/files/bTp5v1UdyToKHfHf8RiT" alt=""><figcaption></figcaption></figure>

**Edit:** Opens the Resource dialogue to replace the current JTMap or JTScript with a different version.

**Delete:** Removes the Map Chain JTMap or JTScript item.

**View:** View a Popup Window of the JTMap or JTScript.

3. Execute the Map Chain using the **Execute** button.
4. Select and Drag the chain links into the correct order. Position 0 is run first.
5. Once completed, click the **Save** icon.

<figure><img src="/files/7PKLGA5KAcJisMT0y3lO" alt=""><figcaption></figcaption></figure>

\ <br>


# Running a Map Chain

To run a Map Chain within Justransform, click "**Open**" within the Map Chain Module and select the saved Map Chain from the Resources folders.

1. Click the **Run** icon which will display the following popup.

<figure><img src="/files/uyHqQNOSfGTwr4mEjp0R" alt=""><figcaption></figcaption></figure>

### Input Section

The Input Section allows you to provide the input data for the Map Chain or click **Select Test Source** to open the Resources dialogue to insert a preset input data configuration.

### Process Breakdown

The left side process breakdown shows each map chain link which helps you navigate through JTMap and JTScript code. Once selecting a map chain link, the right hand side panel has 4 sections:

1. **JTMap / JTScript Code :** Displays the code generated using JTMap / JTScript
2. **Test Input Data :** Displays the test input data either selected by the user or provided as an output by the previous JTMap/JTScript.
3. **Output :** The output generate by the code using the test input data.
4. **Debug :** If user has any debug comments, those will be displayed here.

### Results

The left side Results panel displays the final output of the Map Chain.

&#x20;


# Scripts

Accessed through clicking Development > "**Scripts"** link on the left side panel of the application.

Scripts are a way of defining custom logic and data transformations that can be executed as part of the integration process. Scripts can be used to automate complex or custom tasks that can not be performed using Mappings, standard data transformation capabilities and Map Chains.

<figure><img src="/files/6qs2YjkegSf8bFRTGPbP" alt=""><figcaption></figcaption></figure>

On the top of the Scripts panel there are controls for:

* Creating a new Script
* Opening a Script
* Saving a Script

Along with Editor controls:

* Edit Mapper variables from the Groovy Script
* Edit Mapper Lookup Tables from the Groovy Script
* Edit functions
* Edit classes
* Import Scripts & Mapper files
* Insert Utilities created by Justransform


# Creating a Script

To create a new Script within Justransform, click "**+**" within the Scripts Module.&#x20;

1. Using the Script Editor, start creating your script. You can insert Scripts or choose from Utilities using the top navigation.&#x20;

<figure><img src="/files/423aqR23GyiQMXPme1zq" alt=""><figcaption></figcaption></figure>

2. Set Import Statements using the **Import Statements** toggle.

<figure><img src="/files/u7VY7iyBm6uf4cI83fEG" alt=""><figcaption></figcaption></figure>

3. Once completing your script, run the JT Script Parser Output test using the **Test** icon.

<figure><img src="/files/1bZcYDiAiRhQWi14Henl" alt=""><figcaption></figcaption></figure>

4. Once completing your JT Script parser output test. Test run the output using the **Test** icon.

<figure><img src="/files/iza7JnUlXSlMKs4j0Liy" alt=""><figcaption></figcaption></figure>

2. When testing the script has been completed, click the "**Save**" button

<figure><img src="/files/ujty0r17ms0juR3wExpO" alt=""><figcaption></figcaption></figure>

3. Select a location to save the Script within your Resources.
4. Specify the Script name in the TextField.

{% hint style="info" %}
Example: JTConvertGen
{% endhint %}

5. Click the "**Save**" button.


# Updating a Script

To update a Script within Justransform, click "**Open**" within the Scripts Module.&#x20;

<figure><img src="/files/WgeViHjKHxv0CtBnAtI0" alt=""><figcaption></figcaption></figure>

1. Select the Script to open.
2. Click "**Open**"
3. Edit the Script in the Development Area
4. Once completing your script, run the JT Script Parser Output test using the **Test** icon.

<figure><img src="/files/1bZcYDiAiRhQWi14Henl" alt=""><figcaption></figcaption></figure>

4. Once completing your JT Script parser output test. Test run the output using the **Test** icon.

<figure><img src="/files/iza7JnUlXSlMKs4j0Liy" alt=""><figcaption></figcaption></figure>

5. When testing the script has been completed, click the "**Save**" button

<figure><img src="/files/ujty0r17ms0juR3wExpO" alt=""><figcaption></figcaption></figure>

6. Enter a Comment and click "**Save**"


# FF Operations

Accessed through clicking Development > "**FF Operations"** link on the left side panel of the application.

Known as File-to-File operations, involves transfering data between two or more files. Using Justransform organizations can schedule regular data transfers between files, or trigger data transfers based on specific events or conditions. FF Operations typically involve:

1. Data extraction: Data is extracted from the source file and transformed into a format that can be used by Justransform.
2. Mapping: The extracted data is mapped to the target file, using mapping definitions that specify how the data should be transformed and mapped to the target file.
3. Data transformation: The data is transformed according to the mapping definitions, and any additional data manipulation or transformation rules that have been specified.
4. Data loading: The transformed data is loaded into the target file, completing the FF operation.


# Hex Editor

Accessed through clicking Development > "**Hex Editor"** link on the left side panel of the application.

The Hex editor can be used to view and edit raw data in hexadecimal format of files that are being transferred as part of the data integration process. The Hex editor can be useful when troubleshooting data integration processes that involve the transfer of binary data.


# Test Manager

Accessed through clicking "**Test Manager"** on the left side panel of the application.

After defining your integrations, it is important to test and validate to ensure the integrations to ensure they are functioning as expected. Test Manager allows you to test connections between a source and target; using iterations and intervals.


# Creating a Test Case

To create a new Test Case within Justransform, click "**Create**" within the Test Manager Module.&#x20;

1. Define the Test Name, Source Connection, Target Connection, Iterations and Interval (Min).
2. Click "**Save**"
3. The Test will run within Test Manager for the Iteration and Interval provided. The results will be displayed within the Test Manager Console.

<figure><img src="/files/J9g1gUoccgoK5V9MltGL" alt=""><figcaption></figcaption></figure>

> Note: The Test can be stopped at anytime by clicking "**ⅹ**"


# Managing a Test Case

To manage Test Cases within Justransform, click "**Manage**" within the Test Manager Module.

### Perform an action on a Test Case

Select a Test Case and use the Actions for a Test Case (View, Delete, Share).

### Execute or Schedule a Test Case

1. Select a Test Case or use the multiple Test Case selector tool.

<figure><img src="/files/hhLINYe9Jhp3FhTuUvWn" alt=""><figcaption></figcaption></figure>

2. Use the dropdown to select Execute now or Schedule the test to run at a defined time.

<figure><img src="/files/SXIIB4jbc6EgU1BIRvuY" alt=""><figcaption></figcaption></figure>

3. Click the **Run** icon.

<figure><img src="/files/7PKLGA5KAcJisMT0y3lO" alt=""><figcaption></figcaption></figure>


# EDI

EDI (Electronic Data Interchange) is a standardized format for exchanging electronic business documents between organizations. EDI is a method for transmitting business transactions, such as invoices, purchase orders, and shipping notices, between organizations in an electronic format, rather than using paper-based documents.

Within Justransform EDI has never been easier to manage and use within your business integrations.

{% hint style="info" %}
Learn more about EDI from our EDI Essentials guide: <https://justransform.com/edi-essentials/what-is-edi/>
{% endhint %}


# EDI Specifications

Accessed through clicking EDI > "**EDI Specifications"** link on the left side panel of the application.

EDI specification provides a standardized way for different organizations to exchange electronic business documents, such as invoices, purchase orders, and shipping notices.

### Generate an EDI Report

1. Select the **JT Standards** source.
2. Select a Standard.
3. Select the Transaction Version.
4. Select the Transaction Set ID.
5. Submit the EDI Report.
6. Generate HTML, Save Specs or Generate an XML.

### Upload an EDI Specification

1. Select the **JTSpec** source.
2. Click "**Upload JTSpec**".
3. Generate HTML, Save Specs or Generate an XML.


# EDI Operations

Accessed through clicking EDI > "**EDI Operations"** link on the left side panel of the application.

EDI operation refers to the processing of EDI data, such as transforming, mapping, or validating EDI data. EDI operations are performed as part of an EDI integration flow, and they enable organizations to automate the exchange of business transactions between their systems and their trading partners.

Examples of EDI operations that can be performed within an iPaaS platform include:

* EDI Transformation: Transforming EDI data from one format to another, such as transforming an EDI X12 document into a CSV file.
* EDI Mapping: Mapping EDI data to another format, such as mapping EDI data to a database schema.
* EDI Validation: Validating EDI data against an EDI specification, such as checking an EDI X12 document for compliance with the ANSI X12 specification.

### Create an EDI Operation

1. Select an XML Source or select a file using the Resources folder.
2. View the EDI Operation in various formats including Text, XML, HEX, HTML.&#x20;
3. Click **Validate** to edit the file content and download the EDI operation

<figure><img src="/files/7Emt2yfCVoyLra07voa5" alt=""><figcaption></figcaption></figure>


# B2B Office Suite

Justransform provides a full B2B Office suite of applications that provide business-to-business (B2B) integration capabilities.&#x20;

### Sheets

Sheets is a powerful worksheet creator allowing for collaborative spreadsheet collaboration. Using Sheets create and configure web applications integrated into Business Processes, create real-time business views, process integrations, and work collaborations.

### Workflow Editor

Workflow Editor is a visual interface enabling you to create, edit, and manage workflows by defining steps and actions that are performed in a specific order. The Workflow Editor makes it easy to create and manage workflows for data integration, API integration, and EDI integration.

### Documents

Documents is a collaborative document creator which can use all standard document productivity features; along with the ability to include layouts, code, HTML, and checklists.

### Forms

Forms is an intuitive form builder to create logic based forms within minutes. These can be embedded within websites and provide data directly into Justransform.

### CSV Validation

Validate comma-separated value (CSV) files, create schema, data mapping and view data in various formats.

### **PDF Extractor & PDF**

Extract data from Portable Document Files (PDF) into a usuable format. This can be used within a workflow to extract specific data elements from the file, such as customer information or invoice details.

### Diagrams

Create and edit diagrams and flowcharts to visually represent your workflows and integrations.&#x20;


# Sheets

Accessed through clicking B2B Office Suite > "**Sheets"** link on the left side panel of the application.

Sheets is a powerful worksheet creator allowing for collaborative spreadsheet collaboration. Using Sheets create and configure web applications integrated into Business Processes, create real-time business views, process integrations, and work collaborations.

{% embed url="<https://bordwalk.com/justransform/JTSheet%20User%20Guide.pdf>" %}


# Workflow Editor

Accessed through clicking B2B Office Suite > "**Workflow Editor"** link on the left side panel of the application.

Workflow Editor is a visual interface enabling you to create, edit, and manage workflows by defining steps and actions that are performed in a specific order. The Workflow Editor makes it easy to create and manage workflows for data integration, API integration, and EDI integration.

### Create a Workflow

1. Drag & Drop "**Start**" into the Workflow Editor to begin your Workflow

<figure><img src="/files/M8A52RlqOVJJSkk7ZKrc" alt=""><figcaption></figcaption></figure>

2. Drag & Drop Tasks, Connections and Conditional Forks into the Workflow Editor.
3. Link the Workflow Tasks, Connections and Conditional Forks together using **O** by linking each workflow element from Start to the End.

<figure><img src="/files/yhvRdeKz4M8HZKekM7f1" alt=""><figcaption></figcaption></figure>

4. Run the Workflow using "**Start**".
5. Click "**Save**"

{% hint style="info" %}
Collaborate on Workflows with other Justransform platform users within your tenant by clicking "**Participants**"
{% endhint %}


# Documents

Accessed through clicking B2B Office Suite > "**Documents"** link on the left side panel of the application.

Documents is a collaborative document creator which can use all standard document productivity features; along with the ability to include layouts, code, HTML, and checklists.

### Documents Features

<figure><img src="/files/L5KMZAjMqH8R8ryIC0NS" alt=""><figcaption></figcaption></figure>

* Add Text
* Add Headings
* Add Lists
* Add Checklists
* Add Images
* Add Tables
* Add Code
* Add HTML
* Add a Delimiter
* Add a Spreadsheet from Sheets
* Add a Diagram
* Add Layout


# Forms

Accessed through clicking B2B Office Suite > "**Forms"** link on the left side panel of the application.

Forms is an intuitive form builder to create logic based forms within minutes. These can be embedded within websites and provide data directly into Justransform.

<figure><img src="/files/pkcHzNzVVJmPIjiPn2Iw" alt=""><figcaption></figcaption></figure>

### Create a Form

1. Click **Create**.
2. Select a form component from the left side panel and drag and drop the component in the form editor.
3. Set the component display settings, data validation, API, conditions, logic and layout.

<figure><img src="/files/Gu48RPnnE1kcLgQw6LSr" alt=""><figcaption></figcaption></figure>

4. Click **Save.**
5. Add additional elements.
6. Add a Submit Button form element.
7. Click **Save.**

### Create a Public Form URL

1. Once saving a Form. Click the **Settings** icon.

<figure><img src="/files/zTwc2RrTmPvI4AxlKJxE" alt=""><figcaption></figcaption></figure>

2. Click **Add**.
3. Set a Pre-Script to run prior to the form loading.
4. Set a Post-Script to run after completion of the form.
5. Click "✔️".
6. Copy the form URL and share.


# CSV Validation

Accessed through clicking B2B Office Suite > "**CSV Validation"** link on the left side panel of the application.

Validate comma-separated value (CSV) files, create schema, data mapping and view data in various formats.


# PDF Extractor & PDF

Accessed through clicking B2B Office Suite > "**PDF Extractor"** link on the left side panel of the application.

Extract data from Portable Document Files (PDF) into a usuable format. This can be used within a workflow to extract specific data elements from the file, such as customer information or invoice details.

### Extract Data from PDF

1. Upload a PDF File

<figure><img src="/files/NgrKYpkamWFDSXVc6Oxe" alt=""><figcaption></figcaption></figure>

2. Use the top bar to switch into JTSheet View.

The PDF will be shown in a worksheet format, allowing for Sheet Fields and Search Variables to be created.

<figure><img src="/files/B9OJy6Znc2ayOgaDBfko" alt=""><figcaption></figcaption></figure>

#### Create a Sheet Field

1. Click **Add**.
2. Set a Variable Name.
3. Select the Text Range.
4. Click **Ok**.

<figure><img src="/files/Bhs7ouepGnsW4mtf4rDt" alt=""><figcaption></figcaption></figure>

3. Click **Save**.


# Diagrams

Accessed through clicking B2B Office Suite > "**Diagrams"** link on the left side panel of the application.

Create and edit diagrams and flowcharts to visually represent your workflows and integrations.&#x20;

<figure><img src="/files/8vCIc8EnAGJpqORLAGds" alt=""><figcaption></figcaption></figure>


# Programs

\
Accessed through clicking "**Programs"** on the left side panel of the application.

Programs can easily manage and share JT Resources (Connections and Documents) among team members or other Trading Partners.

<figure><img src="blob:https://app.gitbook.com/bd512560-8bbb-46d2-b0a4-0551ab375ea3" alt=""><figcaption></figcaption></figure>

**Default Program:** A Default Program is created for every user.

**Add User:** A program can be shared between users of the same enterprise. To add a user

**Sharing Programs with Trading Partners:** A program can be connected to programs from different enterprises.

**Adding Documents/ Resources**: Users can add documents or resources to a program to share it among the users of the program.

**Adding Connections**: Similar to adding documents user can also share connections using program.


# Documentation

Interact securely with the Justransform Platform using our API. In order to access the API, you will need to contact your representative within the Justransform team for access.

The API Provides access to:

* Enterprises
* Programs
* Transactions
* Alarms
* Notifications
* Lookup Tables

More documentation on how to interact with the Justransform API can be found at  <https://developers.justransform.com>


# Creating a Support Request

To submit a new Support Request, click the "**Ticketing**" tab within the Justransform Platform.&#x20;

1. Click the "**+ New**" icon
2. Enter the Support Ticket details
3. Click **Save**

<figure><img src="/files/oqo9ceEsDOcSpMwzstBV" alt=""><figcaption></figcaption></figure>


# Managing Support Tickets

To manage your Support Requests, click the "**Ticketing**" tab within the Justransform Platform.&#x20;

Selecting a Ticket allows you to:

* Add Additional Comments, Attachments, Close the Ticket and Adjust the Status.


