Revenue Online Services
P35 – Version 8 / Schema Notes
Page 5 of 13
Revenue Online Services
P35 – Version 8 / Schema Notes
Revenue Online Services

Schema Notes

P35 – Version 8

01/01/2012 – 31/12/2012

Last Updated / 28th June 2012
Document Version / 1.0

Contents

Contents 0

0 Document Information 0

0.1 Synopsis 0

0.2 Change History 0

1 Schema Overview 0

2 Elements 0

2.1 P35LFile 0

2.2 Employer 0

2.3 PensionDetails 0

2.4 P35L 0

2.5 Employee 0

2.6 Employment 0

2.7 PRSI 0

2.8 PRSIClass 0

2.9 TaxDetails 0

2.10 BenefitInKind 0

2.11 Levies 0

2.12 Income 0

2.13 ParkingLevy 0

3 Appendix 1 0

3.1 Sample File 0

0  Document Information

0.1  Synopsis

Notes on the P35 v8 document type definition for the tax year 2012

0.2  Change History

Table 1: Change History

Version Number / Section Affected / Change Description / Date
1.0 / ALL / Initial Draft / 28/06/2012

1  Schema Overview

This document contains all the validation rules, which must be passed to enable a successful P35 v8 form upload to ROS.

These include for each attribute or element:

·  Correct data formats

·  Maximum and minimum values where applicable

·  Dependent attributes or elements – other elements that must not be null or other attributes for which values must be returned in certain circumstances.

This document should be used as an aid to the P35 v8 Form schemas. It details the data types and defaults for each of the elements and attributes within the schema.

The P35 v8 schema should be encoded using UTF-8. The first line within the XML message must indicate this. Please see the Sample File in section 3.1.

Note: Where attributes represent cent amounts, these should always end in “00” as ROS will only accept round Euro numbers.

2  Elements

The file consists of a root P35LFile element. Note: namespaces are required in the xml for upload to ROS.

2.1  P35LFile

The P35LFile element has the following attributes:

Name / Type / Required (Y/N) / Description / Validation /
taxYear / 4 digit year value, format YYYY. / Y / This must be greater than or equal to 2012 for version 8 forms.
date / Date file update (DD/MM/YYYY). / N / If present, it must be a valid date.
week53 / Numeric Boolean value, i.e., 0 for false, 1 for true / Y / Must be 0 or 1.
‘1’ indicates that this is a 53 week year,
‘0’ indicates it is not.
currency / Text character / Y / Must be E for Euro
product / Text string / Y / Third party software product identifier.
formversion / Numeric value / Y / Must be equal to ‘8’ for this version of the file format. Will change with each new edition of the form.
language / Text character / Y / E for English, G for Irish
declarationtype / Text character / N / Must be O or A.
O indicates that this is an Original P35 declaration,
A indicates that this is an Amended/Supplementary P35 declaration.
Note: If not present default is O.
taxablebenefits / Numeric value / Y / Total value of all non-cash benefits liable to PAYE, PRSI and Universal Social Charge provided to employees during the year.
Range ‘0’ – ‘99999999900’.
Whole numbers only, representing cent amounts.
Max value in range represents €999999999.00
pension / Numeric Boolean value, i.e., 0 for false, 1 for true / Y / ‘1’ to indicate Pension Product details are included,
‘0’ to indicate that they are not.
Note: Files with declarationtype = ‘A’ must have pension value of ‘0’, i.e. cannot include pension product details. This restriction will remain in place until otherwise advised.

P35File contains the following elements:

·  One mandatory Employer element.

·  One mandatory PensionDetails element.

·  One or more P35L elements.

·  One mandatory Levies element.

Note: Files with declarationtype = ‘A’ must have pension value of ‘0’, i.e. cannot include pension product details. This restriction will remain in place until otherwise advised.

2.2  Employer

The Employer element has the following attributes:

Name / Type / Required (Y/N) / Description / Validation /
number / Text string / Y / The registration of the employer (up to 9 chars). Must be valid Employer Registered number
name / Text string / Y / Name of Employer, up to 30 chars
tradename / Text string / N / Trade name of employer, up to 30 chars
address1 / Text string / N / Address field 1, up to 30 chars
address2 / Text string / N / Address field 2, up to 30 chars
address3 / Text string / N / Address field 3, up to 30 chars
contact / Text string / N / Employer contact name, up to 20 chars
phone / Numeric / N / Employer contact telephone, up to 12 digits
Note: ‘-‘ and spaces are not accepted
fax / Numeric / N / Employer contact fax, up to 12 digits
Note: ‘-‘ and spaces are not accepted

2.3  PensionDetails

The PensionDetails element must be included if the pension attribute in P35LFile element is set to ‘1’. If included all attributes must be populated. It has the following attributes:

Name / Type / Required (Y/N) / Description / Validation /
empecontrbs / Numeric / N / No. of employees who contributed to retirement benefits schemes by way of deduction from payroll during the year. Cannot be greater than total number of employees included in return.
Range ‘0’ – ‘99999’. Whole numbers only.
Both the empecontrbs and amtempecontrbs fields must either be left blank or both completed.
Where empecontrbs is Zero, amtempecontrbs must be Zero.
amtempecontrbs / Numeric / N / The total amount contributed by your employees to retirement benefit schemes by way of deduction from payroll which qualify for tax relief.
Range ‘0’ – ‘99999999900’.
Whole numbers only, representing cent amounts.
Max value in range represents €999999999.00
Both the empecontrbs and amtempecontrbs fields must either be left blank or both completed.
Where empecontrbs is Zero, amtempecontrbs must be Zero.
amtempecontrbs cannot be less than empecontrbs.
emprcontrbs / Numeric / N / No. of employees for whom you made contributions to retirement benefit schemes. Cannot be greater than total number of employees included in return.
Range ‘0’ – ‘99999’. Whole numbers only.
Both the emprcontrbs and amtemprcontrbs fields must either be left blank or both completed.
Where emprcontrbs is Zero, amtemprcontrbs must be Zero.
amtemprcontrbs / Numeric / N / The total amount contributed by you to retirement benefits schemes on behalf of your employees during the year.
Range ‘0’ – ‘99999999900’.
Whole numbers only, representing cent amounts.
Max value in range represents €999999999.00
Both the emprcontrbs and amtemprcontrbs fields must either be left blank or both completed.
Where emprcontrbs is Zero, amtemprcontrbs must be Zero.
amtemprcontrbs cannot be less than emprcontrbs.
empecontprsa / Numeric / N / No. of employees who contributed to PRSA products by way of deduction from payroll during the year. Cannot be greater than total number of employees included in return.
Range ‘0’ – ‘99999’. Whole numbers only.
Both the empecontprsa and amtempecontprsa fields must either be left blank or both completed.
Where empecontprsa is Zero, amtempecontprsa must be Zero.
amtempecontprsa / Numeric / N / The total amount contributed by your employees to PRSA products by way of deduction from payroll during the year which qualify for tax relief.
Range ‘0’ – ‘99999999900’.
Whole numbers only, representing cent amounts.
Max value in range represents €999999999.00
Both the empecontprsa and amtempecontprsa fields must either be left blank or both completed.
Where empecontprsa is Zero, amtempecontprsa must be Zero.
amtempecontprsa cannot be less than empecontprsa.
emprcontprsa / Numeric / N / No. of employees for whom you made contributions to PRSA products during the year. Cannot be greater than total number of employees included in return.
Range ‘0’ – ‘99999’. Whole numbers only.
Both the emprcontprsa and amtemprcontprsa fields must either be left blank or both completed.
Where emprcontprsa is Zero, amtemprcontprsa must be Zero.
amtemprcontprsa / Numeric / N / The total amount contributed by you on behalf of your employees to PRSA products during the year.
Range ‘0’ – ‘99999999900’.
Whole numbers only, representing cent amounts.
Max value in range represents €999999999.00
Both the emprcontprsa and amtemprcontprsa fields must either be left blank or both completed.
Where emprcontprsa is Zero, amtemprcontprsa must be Zero.
amtemprcontprsa cannot be less than emprcontprsa.
empecontrac / Numeric / N / No. of employees who contributed to retirement annuity contracts by way of deduction from payroll during the year. Cannot be greater than total number of employees included in return.
Range ‘0’ – ‘99999’. Whole numbers only.
Both the empecontrac and amtempecontrac fields must either be left blank or both completed.
Where empecontrac is Zero, amtempecontrac must be Zero.
amtempecontrac / Numeric / N / The total amount contributed by your employees to retirement annuity contracts by way of deductions from payroll during the year, which qualify for tax relief.
Range ‘0’ – ‘99999999900’.
Whole numbers only, representing cent amounts.
Max value in range represents €999999999.00
Both the empecontrac and amtempecontrac fields must either be left blank or both completed.
Where empecontrac is Zero, amtempecontrac must be Zero.
amtempecontrac cannot be less than empecontrac.

2.4  P35L

At least one instance of the P35L element is required, and has no attributes. It consists of the following sub-elements – Employee, Employment, PRSI, TaxDetails and BenefitInKind.

2.5  Employee

Employee is a required element on P35L.

Please note only one entry for each employee should be filed. Where an employee has two or more periods of employment in the year with the same employer, the figures for each period of employment should be aggregated and filed as one entry. It consists of the following attributes:

Name / Type / Required (Y/N) / Description / Validation /
*ppsn / Alpha-Numeric / N / The registration of the employee (up to 9 chars). Must be valid PPS number. Format is 7 numerics (including leading zeros) followed by a check character and Return Level indicator of “space”, “W”, “X” or “T”.
From January 2013, the extended range of PPS numbers will be accepted. This new format is 7 numerics (including leading zeros) followed by a check character and an additional alphabetic character (e.g. 1234567TA)
*surname / Text string / N / Employee Surname, up to 20 chars. Optional if PPSN present, otherwise required.
*firstName / Text string / N / Employee first names, up to 20 chars. Optional if PPSN present, otherwise required.
works / Text string / N / Employee internal staff identifier, up to 12 chars.
*dob / Formatted Date (DD/MM/YYYY) / N / Employee date of birth (DD/MM/YYYY).
Should be completed where known.
Must be a valid date.
*address1 / Text string / N / Address field 1, up to 30 chars. Optional if PPSN present, otherwise required.
address2 / Text string / N / Address field 2, up to 30 chars
address3 / Text string / N / Address field 3, up to 30 chars
returntype / Text character / N / Must be O (default value) or undefined, if declarationtype is O.
If declarationtype is A, value must be A, to indicate Amended P35L, or S, to indicate Supplementary P35L.
Note: Attribute is required when declarationtype is set to A.

NOTE:

* If the PPSN is not known, the firstName, surname and address 1 fields are required. The DOB field should be completed where known.

2.6  Employment

The Employment element is optional and consists of the following attributes:

Name / Type / Required (Y/N) / Description / Validation /
start / Formatted Date (DD/MM/YYYY) / N / Employment start date, (DD/MM/YYYY). Must be within tax period being filed. If both start and end dates present, start date can not be after end date
end / Formatted Date (DD/MM/YYYY) / N / Employment end date, (DD/MM/YYYY). Must be within tax period being filed. If both start and end dates present, end date can not be before start date

2.7  PRSI

The PRSI element contains one element, PRSIClass, and the following attributes:

Name / Type / Required (Y/N) / Description / Validation /
total / Numeric / N / Total PRSI paid, Employer + Employee. Whole numbers only, representing cent amounts.
If the employee is not marked as an exclusion order case, Total PRSI must not be greater than pay.
Range ‘0’ – ‘999999900’.
Whole numbers only, representing cent amounts.
Max value in range represents €9999999.00
employee / Numeric / N / PRSI paid, Employee. Whole numbers only, representing cent amounts. If PRSI classes of employee dictate that Employee PRSI must be paid,
value must be present for employee contribution
Must not be greater than total PRSI.
If the employee is not marked as an exclusion order case, Employee PRSI not be greater than total pay.
Range ‘0’ – ‘999999900’.
Whole numbers only, representing cent amounts.
Max value in range represents €9999999.00
weeks / Numeric / Y / Total weeks insurable, range 0-56

2.8  PRSIClass

The PRSIClass element is required at least once and can occur up to 4 times. It consists of the following attributes:

Name / Type / Required (Y/N) / Description / Validation /
class / 2 character Alpha Numeric / Y / PRSI Class. Weeks required where class is provided
can not have same class listed twice.
Note: spaces are not accepted
weeks / Numeric / Y / Weeks insured at this class, range 0-56. class required where weeks is provided
sum of weeks at 2nd, 3rd and 4th classes must be less than or equal to total insurable weeks value

NOTE: