In this article
If you use CharlieHR, Pento offers integration using CharlieHR's API, which helps to reduce time spent entering employee details for payroll.
If you're newly joining Pento, your onboarding manager will organise a call to go through setting up the integration with you.
If you've already joined Pento, you can use the steps below to set up the integration. If you're having issues setting up the integration, you can contact our Success team via firstname.lastname@example.org, who will set up a call to assist you.
Preparing your employees in CharlieHR
For each employee to be synced with Pento, go to the Pay section on their Employee page.
Set a unique value for the employee field Payroll ID
Save the changes and repeat this for each employee to be synced with Pento.
Please note - This field must always remain the same for each synced employee as it is used to identify an employee in reporting to HMRC.
Creating an API key in CharlieHR
- Go into CharlieHR
- Click on Company in the left sidebar
- Click on Settings from the dropdown that appears
- Click on the Integrations tab
Scroll down to the API Access section of the page
In the Your API Keys box, tick I am ready to save my keys
Click Generate Keys
- Make a note of the Client Secret string, and keep this page open so you can copy and paste the keys into Pento shortly.
Connecting to CharlieHR in Pento
To connect to CharlieHR, you will need to follow the steps below:
- Go into Pento
- Navigate to Settings from the left sidebar
- Under the Integrations heading, select Overview
- You will see an icon for CharlieHR; select Integrate
- Once you have selected Integrate, the following pop-up will appear:
- Copy and paste the Client ID and Client Secret from the open page in CharlieHR
- Click Integrate
Once you have integrated successfully, you should be directed to the Integration settings screen, where you will need to set up your settings and map the fields you require between CharlieHR and Pento.
You can toggle on Pause syncing if you need to update data directly in Pento and do not want it to be overwritten by the data in CharlieHR. You can unpause the sync at any point. However, if you do not update the data in CharlieHR, the values in Pento will be overwritten with the values from CharlieHR.
Termination and Holiday pay pension settings.
You can toggle on Include holiday pay in pension calculations if you wish for termination pay & termination holiday pay to be included in pension calculations by default. Do not toggle this option if it varies from employee to employee.
Excluding employees from being synced
To enable this, please refer to our below article
Please note – It is important to set up the filters for employees you would like to exclude before saving any initial settings. Otherwise, Pento will import all employees once you have connected.
You will also see mapping fields similar to the below screenshot. The fields on the left represent Pento, whilst the fields on the right represent the fields on CharlieHR. You can map any field from CharlieHR to Pento, including custom fields. Once mapped, the data will sync from CharlieHR to Pento.
Please note – You can select Do not map for the (optional) fields you do not wish to sync from CharlieHR. This should also be used if any of the fields present on Pento are not available in CharlieHR.
How to amend your Settings
You may need to amend your settings in Pento to enable or disable synced fields, amend the payslips and/or termination pay settings, and remove and/or add any employee filters. To do this, you will need to follow the steps below:
- Navigate to Settings from the left sidebar
- Under the Integrations heading, select CharlieHR
How the sync works in Pento
Understanding how the data is synced from CharlieHR to Pento is useful to ensure your Employee's details are accurate and up to date.
Syncing is executed when Pento is first connected to CharlieHR (described above); each time, the integration setting is updated in Pento every hour.
Pento will check for any changes to the mapped fields on employees.
How Employee data is synced
Employee data is synced using the Employee ID, i.e. If there is an employee with the same ID on Pento and CharlieHR, the employee data in Pento will be populated with the employee data from CharlieHR for the fields defined in the Mapping settings. Any fields defined as Do not map will not be synced.
CharlieHR has the ID as Payroll ID; this will be matched with the Employee ID in Pento.
Please note – CharlieHR is the source of truth for your employee data. Mapped fields will be overwritten with the value in CharlieHR each time the integrations sync. If the value of these fields in CharlieHR is null or empty, this will overwrite any values you add directly to Pento.
Any new employees should be added to CharlieHR using a unique and previously unused Employee ID. Once you have added them to CharlieHR, as long as the Employee ID is not present on any active or terminated record in Pento, a new employee record will be created for them.
You can refer to our help article How to Add a New Starter to Pento for further guidance.
Please note - Employees with a future employment date will not be added to Pento until their start date.
Syncing individual employees
If you are connected to CharlieHR, but an employee's data is not syncing, you can pull through the updates by syncing an individual employee. To do this, you will need to follow the steps below:
- Navigate to Employees from the left sidebar
- Search for the relevant employee
- To the right of the employee details, select the box with '...'
- Select Sync now
You will also see a timestamp with the last time and date an employee was synced. Once you have triggered Sync now, you will see a successful banner and an updated timestamp.
You can also sync individual employees if you have paused syncing in your CharlieHR settings in Pento.
Frequently Asked Questions
I updated my employee data in CharlieHR. Why hasn't it synced with Pento?
Syncing is executed every hour; if you have made changes after a sync has been completed, you may need to wait for it to update. If you cannot wait, you can try and force the sync through by syncing individual employees.
Alternatively, it could be that the information on CharlieHR was entered in an invalid format for Pento; see further guidance on accepted formatting here. If this still doesn't pull the changes through, you will need to contact support, who will be able to help.
Employees are showing as Pending in the Employees list.
Employees will only show as Ready once all the required information has been synced. Please refer to our help article on How to ready your employees for payroll and ensure the data is entered on CharlieHR.
Please note – You will need to check/add any missing data in CharlieHR as this is the source of truth in Pento.
I need to finalise my payroll, but some employee data is yet to sync. What should I do?
If you are unable to wait for a sync to execute and syncing individual employees has not worked, you can update Pento directly. However, once the sync has been completed, the information on Pento will be overwritten with the data from CharlieHR. It will update the fields in Pento to blank if it is invalid.
Alternatively, you can pause syncing in your integration settings, update Pento directly and unpause the sync once the payroll has been submitted. You will need to make sure any changes you made to Pento are updated in your HRIS if you require them to be synced going forward.
I updated Pento but not CharlieHR.
As CharlieHR is the source of truth for Pento, you will need to ensure any changes you make on Pento are the same in CharlieHR.
Once I have confirmed Payroll, does the information still sync from my HRIS?
No further changes can be made if a payroll is awaiting approval or confirmation. This means any changes affecting the payslip calculations are not synced, e.g. salaries. Once the payroll has been processed and paid, the sync will be ren-enabled and salaries backdated as appropriate. Data that does not affect the payslip values, e.g. bank details, will continue to be synced regardless of the payroll status.