LinkedinFacebookYoutubeGoogle

 

CPTL FAQ

General Information

What is CPTL?
Why is it called CPTL?
Who can benefit from using CPTL?
What does CPTL cost to license for use with my payroll application software?
Can I include CPTL in my payroll application software that I license to my customers?
What programming languages does CPTL work with?
What version of CPTL should I use?
Who developed CPTL?
Is CPTL approved by the Canada Revenue Agency (CRA)?
I think I found a bug! Who should I tell?

Using CPTL

How do I make calls to the CPTL functions or class methods from my application program?
What functions or class methods are available in the CPTL library?
What minimum information is required before I can calculate a payroll deduction?
The employee has a residence in one province but goes to work in another - which province do I use for the province of employment?
How do I know what the employee's Federal TD1 - Total Claim Amount is?
How do I know what the employee's Provincial/Territorial TD1P - Total Claim Amount is?
The employee is under the age of 18 (or over the age of 69) - will CPTL still calculate a CPP deduction?
The employee is a shareholder of the employer - will CPTL still calculate an EI deduction?
I need to calculate payroll deductions on vacation pay that is being paid out in a lump sum payment to an employee - how do I use CPTL to do this?

CPTL Email List

What information will I receive when I subscribe to the CPTL email list?
How do I subscribe to the email list?
How do I un-subscribe from the email list?
Will my email address be given to anyone else?

 


General Information

This section provides answers to the most general questions about CPTL - what it is and what it does:

What is CPTL?

CPTL is a library of Canadian payroll tax calculations available for licensing to payroll application software developers. It can be used to calculate payroll tax deductions required by Canada Revenue Agency (CRA) on all types of employment income, including regular salary & wages, pension income, bonuses, retroactive pay increases and commission income. CRA payroll tax deductions include Canada Pension Plan (CPP) contributions, Employment Insurance (IE) premiums, and Federal and Provincial/Territorial Income Tax withholdings (excluding Québec).
Back to top

Why is it called CPTL?

The name CPTL is an acronym for Canadian Payroll Tax Library.  According to Wikipedia, "In computer science, a library is a collection of implementations of behavior, written in terms of a language, that has a well-defined interface by which the behavior is invoked. This means that as long as a higher level program uses a library to make system calls, it does not need to be re-written to implement those system calls over and over again."  In simpler terms, CPTL is a library of computer programs that can be used by another computer program to calculate payroll withholding deductions for Canadian employees and employers.
Back to top

Who can benefit from using CPTL?

CPTL is designed specifically for use by payroll software application developers with Canadian payroll accounting functions to calculate required CRA payroll withholding deductions for employee paycheques.
Back to top


What does CPTL cost to license for use with my payroll application software?

CPTL is licensed to approved payroll software application developers for an annual license fee.  Please contact us for more information.
Back to top

Can I include CPTL in my payroll application software that I license to my customers?

Yes.  Cost-effective unlimited end-user license terms allow you to re-distribute CPTL with your application to all your end-users.
Back to top

What programming languages does CPTL work with?

CPTL is available as a Windows .NET DLL (32 bit and 64 bit), which enables it to be used directly with your Microsoft Visual C++, Visual C#, Visual Basic and ASP.NET web application programs.  CPTL is also available as a Java .jar package.  
Back to top

What version of CPTL should I use?

The current version of CPTL is v2015A.1. This version of CPTL is based on Canada Revenue Agency publication T4127 (E) Rev. 15 - Payroll Deductions Formulas for Computer Programs 100th Edition Effective for payrolls beginning January 1, 2015. CRA usually publishes updates for payroll deduction formulas twice a year, effective January 1 and July 1, and CPTL is updated accordingly. New versions of CPTL are usually made available for download by authorized licensees within seven days of CRA's publication of an updated T4127.
Back to top

Who developed CPTL?

CPTL was first developed in 2005 by Kevin Kortje, a Canadian Chartered Accountant with over 30 years of experience in software development, Canadian taxation and accounting systems. 
Back to top

Is CPTL approved by the Canada Revenue Agency (CRA)?

CPTL is based entirely on CRA's published guidelines for payroll deductions in it's publication T4127 - Payroll Deductions Formulas for Computer Programs. It is not CRA's policy to approve or certify independant software provider's implementations of their guidelines. We have tested CPTL extensively and are confident of it's compliance with CRA's requirements.
Back to top

I think I found a bug! Who should I tell?

First, you should make sure that you can reproduce the bug - i.e. that the bug 'event' will occur consistently each time you make a call to the CPTL library with the exact same set of input parameters. If you can reproduce the bug event consistently, you should then document in detail the CPTL method and the exact set of input parameters that will consistently reproduce the 'bug'. Next, you should check the CPTL support forum to see if the bug is already known and a suggested workaround is available. If the bug you think you have discovered is not already discussed in our support forums, you can then report the bug to us - by submitting a support request on our MET Customer Support site, or sending an email to This email address is being protected from spambots. You need JavaScript enabled to view it.. Make sure that you include all details of the CPTL method and the input data parameter values that produce the 'bug' being reported. Also, please include information about the operating system and application programming language being used to access the CPTL library. Finally, please make sure to include a full description of any error message that appeared on your screen - i.e. the 'exact' text of the error message that appeared. If you have indeed found a bug in CPTL, we will make every effort to fix it as soon as possible.
Back to top

 


Using CPTL

This section provides answers to questions about using webTOD:

How do I make calls to the CPTL functions or class methods from my application program?

{content to be added} 
Back to top

What functions or class methods are available in the CPTL library?

{content to be added}
Back to top

What minimum information is required before I can calculate a payroll deduction?

For each type of payroll deduction calculation (Regular Salary/Pension/Bonus/Retroactive Pay/Commission), there are different required information fields that must be completed by the user before a payroll deduction calculation can be done. For all types of income except Commissions, the user must specify a Pay Period definition - i.e. weekly, bi-weekly, semi-monthly, etc. For ALL calculations, the user must also specify the employee's 'Province of Employment', Federal TD1 - Total Claim Amount and Provincial/Territorial TD1P - Total Claim Amount. For Commission income, the user must specify additional information from the commissioned employee's federal TD1X form. Any required information for a payroll deduction calculation will be documented in the CPTL documentation included with the CPTL API/SDK package. The user must ensure that valid information is provided in these required fields before sending requests to the CPTL library method(s).
Back to top

The employee has a residence in one province but goes to work in another - which province do I use for the 'Province of Employment'?

The employee's 'Province of Employment' is the province where the employee is required to show up for work, regardless of the employee's province of residence. Payroll deductions are always based on the province of employment, even though the employee's income tax return for the year will calculate the final income tax liability based on their province of residence as at December 31.
Back to top

How do I know what the employee's Federal TD1 - Total Claim Amount is?

All employees are required to file a Federal TD1 form with their employer. The Total Claim Amount will be the amount shown on this form, as claimed by the employee. If the employer does not have a Federal TD1 form on file for the employee, then the default Basic Claim Amount (Claim Code 1) should be used for payroll deduction calculations.
Back to top

How do I know what the employee's Provincial/Territorial TD1P - Total Claim Amount is?

All employees are required to file a Provincial/Territorial TD1(P) form with their employer. The Total Claim Amount will be the amount shown on this form, as claimed by the employee. If the employer does not have a Provincial/Territorial TD1(P) form on file for the employee, then the default Basic Claim Amount (Claim Code 1) should be used for payroll deduction calculations.
Back to top

The employee is under the age of 18 (or over the age of 69) - will CPTL still calculate a CPP deduction?

Employees under the age of 18 or over the age of 69 are exempt from CPP contributions. CPP exemptions also exist for certain other types of employees (see CRA website for details). To exempt an employee from CPP, set the appropriate value in the EmployeeData.isCPPexempt input parameter data field, or alternatively, provide the employee's birthdate information in the EmployeeData.birthDate parameter data field and CPTL will automatically determine if the employee qualifies for the CPP age exemption.
Back to top

The employee is a shareholder of the employer - will CPTL still calculate an EI deduction?

Employees who are also shareholders or owners of an employer are not eligible for EI coverage, and as such should not have EI premiums deducted from payroll amounts. EI exemptions also exist for certain other types of employees and/or employment situations (see CRA website for details). To exempt an employee from EI, set the appropriate value in the EmployeeData.isEIexempt input parameter data field.
Back to top

I need to calculate payroll deductions on vacation pay that is being paid out to an employee - how do I use CPTL to do this?

If the vacation pay being paid covers only one (1) pay period for which the vacation time-off is being taken:

  • Select the 'Regular Salary' calculator.
  • Enter the vacation pay amount for the pay period in which the vacation time-off is taken in the EmployeeData.vacationPayAmount input parameter data field.
  • Enter the amount of any Gross Salary/Wages paid for time actually worked during the pay period.

If the vacation pay being paid covers more than one (1) pay period for which the vacation time-off is being taken:

  • Select the 'Regular Salary' calculator.
  • Split the vacation pay into amounts pertaining to each pay period for which the vacation time-off is taken.
  • Perform a separate calculation for each pay period over which the vacation pay is being paid, as described in the previous example.

If the vacation pay is being paid as one lump-sum amount in lieu of vacation time not taken:

  • Select the 'Bonus' calculator.
  • Enter the employee's regular salary/wages for one pay period in the 'Gross Salary/Wages' field (leave the 'Paid vacation' amount as 0.00).
  • Enter the lump-sum amount of vacation pay in the 'Current bonus payable' field.
  • Check the box 'Show Bonus only on Pay Advice'.
Back to top

 


CPTL mailing list

Users of CPTL can subscribe to the CPTL mailing list to keep up-to-date on all CPTL developments, including new versions, bug fixes, and important CRA announcements affecting payroll calculations. To subscribe to the mailing list, click here.

What information will I receive when I subscribe to the CPTL mailing list?

CPTL mailing list subscribers will receive emails informing them of each update to the CPTL product, including new year and mid-year updates corresponding to CRA's updated payroll deduction tables and calculation rules. Subscribers will also receive occasional emails with relevant news about Canadian payroll deductions, including new legislation and CRA administrative policies. On occasion, we may also send out tips on using CPTL and provide answers to frequently asked questions which don't already appear on this page.
Back to top

How do I subscribe to the mailing list?

You can subscribe to the CPTL mailing list simply by entering your email address on the CPTL mailing list subscription page, and clicking on the 'Subscribe' button. A confirmation email will be sent to the email address that you enter, and you must confirm that you wish to have your email address added to the CPTL mailing list by clicking on the link provided in the confirmation email. If you do not click on the confirmation email link within 24 hours of receiving it, you will NOT be added to the mailing list.
Back to top

How do I un-subscribe from the mailing list?

You can un-subscribe from the CPTL mailing list at any time, simply by clicking on the un-subscribe link at the bottom of any emails you receive from the list.
Back to top

Will my email address be given to anyone else?

Absolutely not. If you subscribe to the CPTL mailing list, your email address will NOT be given to any 3rd party. As a subscriber to the CPTL mailing list, you will only receive emails related to the Canadian Payroll Tax Library (CPTL) product. We adhere to Canadian privacy law and NEVER give out your email address to 3rd parties. For the complete text of our Privacy Policy, click here.
Back to top