Employee API
Overview
The Payment Evolution Employee API allows partners to add, get and update employees within their group of companies
| URL | /api/v1/company/{companyID}/employees |
| Methods supported | GET, POST |
| Description | Get all employees, or add new employee |
| URL | /api/v1/company/{companyID}/employees/{employeeID} |
| Methods supported | GET, PUT |
| Description | Get specific employee, or update existing employee |
Employee Elements
| Employee Elements | Expected input | Description | Mandatory |
| AddressLine1 | Alphanumeric | Address line 1 | Y |
| AddressLine2 | Alphanumeric | Address line 2 | N |
| City | Alphanumeric | City | Y |
| Alphanumeric | Email address | N | |
| EmployeeType | Permanent Temporary Contractor | P = Permanent (default) S = Subcontractor T = Temporary | N |
| FirstName | Alphanumeric | Employee first name | Y |
| LastName | Alphanumeric | Employee last name | Y |
| MiddleName | Alphanumeric | Employee middle name | N |
| PayrollDetails | See PayrollDetailType below | Employee’s payroll specifics | |
| Postal | Alphanumeric | Postal Code | Y |
| Province | Alphanumeric * | AB = Alberta BC = British Columbia MB = Manitoba NB = New Brunswick NL = Newfoundland and Labrador NS = Nova Scotia NU = Nunavut ON = Ontario PE = Prince Edward Island QC = Quebec SK = Saskatchewan YT = Yukon | Y |
| Phone | Numerical digit: length 9 | Contact Number | N |
Payrun Elements
| Payrun Elements | Expected input | Description | Mandatory |
| AccountCode | Numeric | Account for employee earnings | N |
| CppExempt | YES | NO | ||
| BirthDate | UTC time | Date of Birth, format dd/mm/yyyy Example 2015-01-31T00:00:00 | Y |
| EiExempt | YES | NO | ||
| EmploymentProvince | NL NS PE NB QC ON MB SK AB BC YT NT NU | Alberta BC: British Columbia, MB = Manitoba NB = New Brunswick NL = Newfoundland and Labrador NS = Nova Scotia NU = Nunavut ON = Ontario PE = Prince Edward Island QC = Quebec Saskatchewan YT = Yukon | |
| HireDate | UTC time | Example 2015-01-31T00:00:00 | |
| PayRate | Numerical digits(no other characters allowed.) For example, 1234.99 | Amount of pay | |
| PayRateUnit | Hourly Daily Weekly Monthly Yearly | H = hourly rate D = daily rate W = weekly rate M = monthly rate Y = yearly rate | |
| PayPeriodPerYear | 52 26 12 04 01 24 22 13 10 | 52 = 52 weekly 26 = 26 biweekly 12 = 12 monthly 04 = 4 quarterly 01 = 1 yearly 24 = 24 semi-monthly 22 = 22 pays per year 13 = 13 pays per year 10 = 10 pays per year | |
| SalaryType | Salaried Timesheet | Salaried Time Based | |
| StandardHours | Numerical digits – no other characters allowed. For example 1234.99 | Number of hours worked per week. Note: typical values are 35, 37.5, 40 | |
| TD1Federal | Numerical digits – no other characters allowed. For example 1234.99 | TD1 exemption amount (federal) | |
| TD1Provincial | Numerical digits – no other characters allowed. For example 1234.99 | TD1 exemption amount (province or territory) | |
| TaxExempt | YES | NO |
Employee Loan API
Authentication Header
The Payment Evolution REST API uses a standard HTTP authorization header to pass authorization information. The Authorization header has the following form:
Authorization: PE signature = <issued signature token>
The Issued signature token can be retrieved and regenerated through the payroll application. Within the Add-ons section, click the API tab (contact support if unavailable), and enable/generate a token.
Overview:
The Payment Evolution “Employee Loan API” issues employee loans and helps check loan status.
| Endpoint | /api/v1/loans/employee |
| Methods Supported | GET, POST |
| Description | Issue Employee Loan, check status on Loan |
Root element <EmployeeLoan>
| Mandatory Elements and their inputs | |
| <Amount> | Decimal amount (ex: 22.00), no currency, no symbol |
| <ProcessDate> | Date of transaction: format dd/MM/yyyy (eg: 12/14/2011) |
| <Tag> | Unique identifier / reference (14 characters) |
| <Token> | Token issued by PE for specific employee |
| Optional Elements | |
| <Status> | N = New (fixed ) P = Pending A = Approved C = Cleared R = Returned F = Finished |
| Return Elements | |
| The following are only returned on request | |
| <TransactionID> | PaymentEvolution generated unique identifier for Transaction |
Sample Code:
<?xml version="1.0" encoding="utf-8"?>
<EmployeeLoan>
<Amount>69.75</Amount>
<ProcessDate>15/12/2011</ProcessDate>
<Tag>0000123001</Tag>
<Token>45j1Sqw/8nTpL0ZJ8gCZOOut+rHZG4ia5zQekOpCXmo=</Token>
</EmployeeLoan>
Employee Deduction API
Overview:
The Payment Evolution “Employee Deduction API” allows you to retrieve latest details on specific deduction, add new deduction and update the advance deduction
| URL | /api/v1/customdeduction/{employeeToken}/{deductionID} |
| Methods Supported | GET |
| Description | Retrieve latest details on specific deduction |
| URL | /api/v1/customdeduction/{employeeToken} |
| Methods Supported | POST, PUT |
| Description | Allows you to create new custom deduction Allows you to update advance deduction |
Elements for Employee Deductions and Description
| EmployeeID | Employee ID / Token |
| Amount | [Numeric] Deduction Amount or Percentage (based on AmountUnit, (Mandatory) |
| AmountUnit | Specifies the unit of the Amount (Mandatory) A = Actual P = Percentage |
| DeductionID | ID of deduction (Mandatory on PUT) |
| EffectiveDate | [Date] The first day when the deduction should begin (optional) |
| EndDate | [Date] The date in which the deduction will expire (optional) |
| Frequency | How often the deduction should be applied O = One time R = Recurring until EndDate/Goal |
| Goal | [Numeric] Recurring deductions will continue deducting from each pay until reaching Goal. (Optional) |
| MinAmount | [Numeric] Minimum amount per transaction, when AmountUnit is percentage (Optional) |
| MaxAmount | [Numeric] Maximum amount per transaction, when AmountUnit is percentage (Optional) |
| Name | Name of Deduction |
| Status | Status of deduction rule, returned on GET A = Active E = Expired C = Completed P = Pending |
Sample POST
<EmployeeDeductions>
<Amount>77.89</Amount>
<AmountUnit>A</AmountUnit>
<EffectiveDate>2019-01-04T00:00:00</EffectiveDate>
<Frequency>R</Frequency>
<Goal>130.00</Goal>
<Name>Custom Deduction A</Name>
</EmployeeDeductions>
Sample Response
<EmployeeDeductions>
<Amount>77.89</Amount>
<AmountUnit>A</AmountUnit>
<Balance>0.00</Balance>
<DateCreated>2019-01-04T01:14:29</DateCreated>
<DateModified>2019-01-04T01:26:59</DateModified>
<DeductionID>000004A05</DeductionID>
<DeductionType>A</DeductionType>
<EffectiveDate>2019-01-04T00:00:00</EffectiveDate>
<EmployeeNumber>000004</EmployeeNumber>
<EndDate>2099-12-31T00:00:00</EndDate>
<Frequency>O</Frequency>
<Goal>130.00</Goal>
<MaxAmount>0.00</MaxAmount>
<MinAmount>0.00</MinAmount>
<Name>Custom Deduction 2</Name>
</EmployeeDeductions>
