Onboarding process example

IN PROGRESS

General Description


This example shows the user how to use the ProcessMaker I/O API for a common business process present in most organizations.

Onboarding Process Example

This diagram describe the onboarding process for a new customer.

The process diagram defined below will conduct a tracking of all onboarding requests for the integration project.

Process Scheme



Participants

Process name

Description

Main process

The company for the onboarding process

Supervisor

A user who has permission to stop the onboarding process if something is wrong

Requester

A user who requests the onboarding process into the company

Activities

Activity name

Activity type

Activity description

Forms

Manual requestEmpty start event

Requester asks about new access and fills out the manual request form.

Manual Request
API requestMessage start event

Onboarding process can be started from 3rd part API.


Record customerUser task

In this form the user needs to define the workflow requirement.

Record Form (Google Form)

Validate Workspace

User taskThis task is for the validators, they need to define 2 main aspects:
  1. Requested workspace ID is not taken
  2. A valid license file should be uploaded
Validate Workspace form

Create Production Workspace

Create Sandbox Workspace

Create Development Workspace

Service taskThese tasks can be performed, depending on the initial request, to create the workspace with requested information.


Generate SummaryScript taskThis activity is executed by ProcessMaker I/O engine, and is a script to generate a PDF with the information about the workspaces and credentials.
Verify Onboarding DataUser taskThis activity is created to validate that the same user has approved all information generated by the other activities.Verify Onboarding Data


Messages

Message Title

Item

Type

Content

Notification to requester

"Verify Onboarding Data" User Task /Notify Requester Message event

email message

Hello {{Requester name}},

You request was approved and implemented.

A workspaces for {{ClientName}} was created

Please find the summary document with Credential report in the attachment

Best regards!

Notification to supervisors

"Validate workspace" User task /Notify Supervisor Message event

email message

Hello {{Supervisor name}},


We just wanted to inform you, that {{Requester name}} request for creating workspaces for {{ClientName}} wasn't validated during dedicated time 

Best regards!





Documents

Document name

Item

Type

Template

Credential report

Generate Summary

pdf

Credential report


Getting Started with Use Case

How to Launch an Instance* of ProcessMaker I/O

*ProcessMaker I/O is designed to be installed in the cloud, so in this document an instance refers to an installation of ProcessMaker in a virtual machine or a container.

If you don't have a ProcessMaker I/O instance yet, please:

  1. Go to the Instance page.
  2. Click Create an Instance and follow the instructions provided.


If you already have a ProcessMaker I/O instance, please:

  1. Launch an instance of ProcessMaker I/O on the Instance page.
  2. Copy/remember the instance URL link, these will be required later
  3. Click on Form examples link
  4. Switch to Onboarding on the top
  5. Download Onboarding BPMN file  on your computer
  6. Click on Import tab on the top left and upload BPMN file from your PC. 

Users 

For this specific example you will need three users:

“Test” - This user already exists in your instance by default and its access token has been pre-filled in all the forms.

“Alice” and “Bob” - These users should be created manually by issuing a set of API calls (Refer to PHP-SDK documentation about creating a user and obtaining access tokens). After creating the users, their access tokens should be entered into the form. Afterwards these keys will be stored in the browser cookie.

During process execution you can monitor your Process Instances and its status using “Process List” page.

Forms

Manual Request

This is a jQuery form which will trigger the “Manual Request” event for the Process. Fill in the form and press the “Create new client” button, this will send a JSON API request to the appropriate PM.IO API endpoint. To ensure your Process Instance was created, you can check the “Process List” feature.

To see the details of the request/response - you can use the “Show Request” and “Show Response” buttons in Logging section. This will reveal the full details about communications with the API endpoint.


Google Form

This is a Google Form implementation which has the same functionality as the “Manual Request” jQuery form. Please note - this form is just a sample and will require a manual adjustment on your Google Forms account. To use the form you need to copy the form to your Google Forms account, change API endpoint URL and authorization token in Google Script (attached to the form), then set-up the form triggers. 


Record Customer

This is a jQuery implementation to support the user task named “Record Customer”. It will find the delegated user task data for a specified user (refer to the selected user on the top-right) and pre-fill form inputs.

Please note the MVP example delegates the “Record Customer” user task to the user named “Test”, so be sure the proper user is selected.

When you fill in the form, press the “Create workspace” button to form the JSON API request and send it to the API endpoint, passing the data and moving the user task into a COMPLETED state. The process instance will be processed by the PM.IO engine, according to the BPMN scheme.

To see the details of the request/response - you can use the “Show Request” and “Show Response” buttons in Logging section. This will reveal the full details about communications with the API endpoint.


Validate Workspace

This is a jQuery implementation to support the user task named “Validate Workspace”. It will find the delegated user task data for a specified user (refer to the selected user on top-right) and pre-fill form inputs.

Please note the MVP example uses round-robin delegation mechanics for the “Validate Workspace” user task, so your form will be delegated and will be accessible to either Alice or Bob, depending on your case.

To see the details of the request/response - you can use the “Show Request” and “Show Response” buttons in Logging section. This will reveal the full details about communications with the API endpoint.


Verify Onboarding Data

This is a jQuery implementation to support the user task named “Record Customer”. It will find the delegated user task data for a specified user (refer to the selected user on top-right) and pre-fill form inputs.

Please note the MVP example delegates the “Record Customer” user task to the user named “Test”, so be sure the proper user is selected on top-right of the page.

To see the details of the request/response - you can use the “Show Request” and “Show Response” buttons in Logging section. This will reveal the full details about communications with the API endpoint.