Keep your systems in sync, reduce data entry mistakes, and streamline your operations in the field and the office with Core HR and Acumatica. Integrations between both systems make it easy to manage employee data with features like:
- Full round-trip synchronization between systems (Importing/Exporting employee and company information)
- Push Core HR employee data to Acumatica to complete payroll
- Keep Benefit Deductions, Direct Deposit, Taxes, and more in sync
Table of Contents
Compatibility
Arcoro supports the last two years of Acumatica versions. As new versions are officially released, support for older versions will be retired on a rolling schedule.
Integration Demonstration
To provide a better understanding of the integration, you can watch our demonstration video below.
Connecting to Acumatica
Creating a New Connection Application
Go to: Connected Applications Screen (More Items > Integration > Show All > Connected Applications)
Click and add a new record (Plus icon)
- Type the Client Name, for example: "ArcoroCoreHR"
- Select the Resource Owner Password Credentials on the Flow dropdown. This will be used for the API, allowing it to authenticate using the credentials.
- Select Add Shared Secret, this section will create the Client Secret
It is not possible to get the "client secret" again after it is saved, for test purposes, you can add the "client secret" to the description. Click on the OK button
- Select the Save button and the Client ID key will be generated.
Note: If the Client ID is changed, the client name needs to be updated, this validation makes sure that the user does not forget to change the Client Name when the Client ID is changed.
Acumatica User Roles
The minimum roles requirement:
Create API Login and Associate OData4 User Role
Go to the Users Page and:
- Add an API login
For example: Arcoro API - Attach OData4 User Role
Under Allowed Roles select OData4 User - Review screenshots for other items to set
Save
This user needs the ability to create/update organizational employees as well as their employee payroll settings. i.se. benefits, compensation, direct deposit, taxes, etc.
Connecting to Multi-Tenant Acumatica Account
If the account is a multi-tenant environment.
A connector is required for each tenant that you wish to sync
For example:
Arcoro account has 3 tenants, if all 3 were wishing to sync data, 3 connectors would be needed
Arcoro Integrations Module Connectors Page
- Name: The name of the connector
- Acumatica URL: The URL that contains the instance name, for instance: http://localhost:9001/Acumatica2022
- Client ID: Generated by Acumatica on the Connected Applications screen
- Client Secret: Generated by the user on Acumatica at the Add Shared Secret section
- Username: Credentials that are used for logging on Acumatica
- Password: Credentials that are used for logging on Acumatica
- Tenant: If client has multiple tenants supply the tenant for this connector
- Companies: Enter "Default" for now
- API Minimum Version: Must be 22.200.001 or greater
- Default Payroll Cash Account: May be 10200 as a default from Acumatica?
Troubleshooting
Common Problems
Timeouts
Sometimes Acumatica API throws a timeout error, Arcoro's Integration Module already has the retries for that, the standard retry is 5 times with an exponential retry and back off strategy.
If this continues to happen the customer will need to try again later, this is something that it is not on our control.
Data Mapping Fields
We offer data mapping tables for:
Some Core HR fields must be created/modified with the assistance of an Arcoro Integration Services Consultant such as "User Defined Field #s".
Things to Note
- The data sync from Core HR to Acumatica will sync data to both the Employee record in Acumatica and the Employee Payroll Settings record within Acumatica.
Employee
Things to Note
- Only active employees and those terminated from January 1 of the previous year to the current date will be pulled over during the sync.
- When a previously terminated employee is rehired, the integration will now use the hire date (not the termination date) as the rehire start date, and it will correctly update the employee's status to active in Acumatica.
Required fields are marked in RED.
| Property | Core HR Field | Acumatica Field | Acumatica EndPoint | Notes/Rules |
|---|---|---|---|---|
| First Name | First Name | First Name | employee | |
| Middle Name | Middle Name | Middle Name | employee | |
| Last Name | Last Name | Last Name | employee | |
| Address 1 | Home Address 1 | Address Line1 | employee | |
| Address 2 | Home Address 2 | Address Line2 | employee | |
| Address City | Home City | City | employee | |
| Address State | Home State | State | employee | |
| Address PostalCode | Home Zip Code | Postal Code | employee | |
| Country | Country | Country | employee | |
| Social Security Number | Employee SSN | SSN | employee | |
| Marital Status | Marital Status | Undefined | employee | |
| Date Of Birth | Date of Birth | DateOfBirth | employee | |
| MainPhoneNumber | Home Phone | Home Phone | employee | |
| EmployeeIdentifier | Employee ID | Employee ID | employee | |
| EmailAddress | Work Email | employee | ||
| EmployeeStatus | Employee Status | If Terminated - Set to Terminated - Else ignore | employee | |
| EmployeeType | Employee Type | Employee Type | payrollSettings | |
| BenefitStatus | Benefit Status | <Undefined> | employee | |
| PayFrequency | Pay Schedule | Pay Group | payrollSettings | |
| PayrollPayGroup | Payroll Pay Group | Class ID | payrollSettings | |
| HireDate | Hire Date | If start reason is Rehire then the start date | employee | |
| OriginalHireDate | Original Hire Date | Taking the oldest start date as the Hire Date | employee | |
| TerminationDate | Termination Date | If Terminate is checked, take the most recent end date | employee | |
| TerminationReason | Termination Reason* | Termination Reason | employee | *If Employee is Terminated |
| Title | Title | Title | employee | |
| WorkPhone | Work Phone | Business 1, 2 or 3 (Priority order is 1 if no 1 then 2, if no 2 then 3 if no 3 - empty) | employee | |
| CellPhoneNumber | Mobile Phone | Cell Phone | employee | |
| WorkFax | Work Fax | Work Fax | employee | |
| Department | Department | Department | employee | |
| Location | Facility 1 Name | Branch | employee | |
| Ethnicity | EEOC Ethnicity | Ethnicity (Payroll Tax Settings) | payrollSettings | |
| EEOCOccupation | EEOC Occupation | Position (Employment History) | employee | |
| EEOCWorkersComp | EEOC Workers Comp | DefaultWCCCode | payrollSettings | |
| OvertimeExempt | Overtime Exempt | Exempt From Overtime Rules | payrollSettings | |
| UDFL7 | User Defined Field 7 | Organizational Employee Class | ||
| UDFL8 | User Defined Field 8 | Work Location | ||
| UDFL9 | User Defined Field 9 | Rehire Eligible | employee | |
| UDFL13 | User Defined Field 13 | DefaultUnion | payrollSettings | |
| UDFL15 | User Defined Field 15 | Labor Item | employee |
Federal Taxes
Required fields are marked in RED.
| Property | Core HR Field | Acumatica Field | Acumatica EndPoint | Notes/Rules |
|---|---|---|---|---|
| FedTaxYear | Year | If Federal Tax Use 2020 W4 = "True" Then 2020, else 2019 | payrollSettings | |
| FedTaxAllowances | Allowances | Federal Tax Allowances | payrollSettings | |
| FedTaxAdditionalWithholding | Additional Withholding | Federal Tax Additional Withholdings | payrollSettings | |
| FedTaxFilingStatus | Filing Status | Federal Filing | payrollSettings | |
| FedTaxExempt | Exempt | Federal Tax Is Exempt | payrollSettings | |
| FedTaxStartDate | Start Date | If Federal Tax Use 2020 W4 = "True" Then 01/01/2020, else 12/31/2019 | payrollSettings | |
| FedTaxDependentsAmount | Dependents | Federal Tax Dependents | payrollSettings | |
| FedTaxOtherIncome | Other Income | Federal Tax OtherIncome | payrollSettings | |
| FedTaxDeductions | Deductions | Federal Tax Deductions | payrollSettings | |
| FedTaxTwoJobs | Two Jobs | Federal Tax Two Jobs | payrollSettings |
State Taxes
Required fields are marked in RED.
| Property | Core HR Field | Acumatica Field | Acumatica EndPoint | Notes/Rules |
|---|---|---|---|---|
| StateTaxYear | Year | Use Hire Date, except AZ - default to 2023 | payrollSettings | Acumatica to Core HR only |
| StateTaxFilingStatus | Filing Status | Filing Status | payrollSettings | Acumatica to Core HR only |
| StateTaxFilingState | Income Filing State | Work Location State | payrollSettings | Acumatica to Core HR only |
| StateTaxAllowances | Allowances | Allowances | payrollSettings | Acumatica to Core HR only |
| StateTaxAdditionalWithholding | Additional Withholding | Additional Allowances | payrollSettings | Acumatica to Core HR only |
| StateTaxPercentDefined | Percent Selected | AZ only | payrollSettings | Acumatica to Core HR only |
| StateTaxExempt | Exempt | Exempt | payrollSettings | Acumatica to Core HR only |
| StateTaxStartDate | Start Date | Use Hire Date | payrollSettings | Acumatica to Core HR only |
Direct Deposit
Things to Note
- The integration has validation to prevent the use of the FEDWIRE payment method as a default payroll payment method in the connector to align with Acumatica’s deprecation of FEDWIRE. Users will see the error message “The Default Payroll Payment Method must be Check, Cash, or ACH” when attempting to save invalid configurations.
- Active employees may trigger validation errors if they do not have at least one active Direct Deposit marked as "Gets Remainder".
- Terminated employees will not trigger any validation errors for direct deposit requirements.
Required fields are marked in RED.
| Property | Core HR Field | Acumatica Field | Acumatica EndPoint | Notes/Rules |
|---|---|---|---|---|
| BankName | Bank Name | BankName (Payment) | payrollSettings | |
| AccountNum | Account Number | Account Number | payrollSettings | |
| RoutingNum | Routing Number | Bank Routing Number | payrollSettings | |
| AccountType | Deposit Account Type | Type | payrollSettings | |
| Amount | Deposit Amount | Amount | payrollSettings | |
| Percent | Deposit Percent | Percent | payrollSettings | |
| EDCode | ED Code | If it reads "Gets Remainder" checked - else unchecked | payrollSettings | |
| EffectiveDate | Start Date | Last Modified Date Time | payrollSettings | |
| ExpirationDate | Stop Date | End Date | payrollSettings | |
| Priority | Priority | Sequence | payrollSettings |
Compensation
Things to Note
- Compensation records are selectively written based on the wage type:
- Acumatica to Core HR - Only "Regular" wage type records are written.
- Core HR to Acumatica - "Regular" wage type records are written or managed.
- Non-"Regular" types will not trigger deactivation.
- Annualized salary is rounded using "Banker's Rounding" (to the nearest penny) instead of to the nearest dollar.
Required fields are marked in RED.
| Property | Core HR Field | Acumatica Field | Acumatica EndPoint | Notes/Rules |
|---|---|---|---|---|
| CompensationType | Compensation Type | If Unit of Pay states Hour then Hourly ELSE Salary (Yearly) | payrollSettings | |
| PerPayRate | Per Pay Rate | Pay Per Period (Calculation to Annual when Salaried) | payrollSettings | |
| PayRateTypeCode | Pay Rate Type Code | Earning Type | payrollSettings | |
| PayRateStartDate | Pay Rate Start Date | Start Date | payrollSettings | |
| PayRateEndDate | Pay Rate End Date | End Date | payrollSettings | |
| PayRateIsAutoPay | Pay Rate is Auto Pay | Active | payrollSettings |
Benefits and Fringe
Required fields are marked in RED, if any.
| Property | Core HR Field | Acumatica Field | Acumatica EndPoint | Notes/Rules |
|---|---|---|---|---|
| DeductionCode | Alt Code 1 | Deduction Code | payrollSettings | |
| DeductionCost | Per Pay Deduction Amount | "Deduction Amount / Deduction Percent If GRS - Percent" | payrollSettings | |
| EffectiveDate | Benefit Effective Date | Last Modified Date Time | payrollSettings | |
| ExpirationDate | Benefit Expiration Date | End Date | payrollSettings | |
| FringeCode | Alt Code 2 | Deduction Code | payrollSettings | |
| FringeAmount | Per Pay Deduction Amount | Contribution Amount / Contribution Percent | payrollSettings | |
| EffectiveDate | Benefit Effective Date | Last Modified Date Time | payrollSettings | |
| ExpirationDate | Benefit Expiration Date | End Date | payrollSettings |