Payroll Benefits Contributions

Recommendation, 2007 April 15

Editors:

Penni Kessler

Kim Bartkus

Authors:

Penni Kessler

Contributors:

Members of the Payroll work group

Copyright ©2007 HR-XML Consortium, Inc. 

Abstract

This document describes HR-XML’s Payroll Benefit Contributions schema. The schema allows the capture of information used by third party administrators to manage employees benefit contributions.

 

 

Table of Contents

 

 

1     Overview.. 3

1.1      Objective. 3

1.1.1       Domain Issues. 3

1.1.2       Relationship to Business Processes. 3

1.1.3       Background of Payroll Benefit Contributions (Son of Spark) 3

1.2      Design Requirements. 3

1.3      Scope. 4

1.3.1       Within Scope. 4

1.3.2       Outside Scope. 4

1.4      Business Use Case. 4

1.4.1       Payroll Processing Benefit Contributions. 4

1.4.2       Updating Benefit Contributions Election. 5

2     Schema/DTD Design. 7

2.1      PayrollBenefitContributions Schema. 7

2.2      Schema/DTD Elements Explained. 7

2.2.1       PayrollBenefitContributions. 7

2.2.2       PersonName 1.2. 15

2.2.3       PostalAddress 1.2. 16

3     Known Limitations. 18

4     Appendix A - Document Version History. 18

5     Appendix B – Related Documents. 19

6     Appendix C – Reference Examples. 19

 


1    Overview

1.1        Objective

Create a Schema/DTD design to define payroll benefit contributions information that would be used by third party administrators to manage employees benefit contributions.  This first design is only intended for US payroll-benefit contributions

 

1.1.1          Domain Issues

The Internet has transformed the way payroll benefit contribution information can be managed by third party administrators and the people who participate in these programs.  People are now able to view their payroll contributions and manage how those monies are disbursed through web interfaces.  They are able to view balances and contact the third party administrators directly if any issues have occurred.

While the Internet has transformed the management of payroll benefit contributions dramatically, the current mechanisms of actually transferring payroll information from payroll vendors to third party administrators is still quite cumbersome. Some of the major areas of concern are listed below:

 

1.1.2          Relationship to Business Processes

Many companies have defined/deferred contributions as part of their benefits packages that they offer to employees.  In order to process these contributions correctly, the employees’ participation information must be used to interface with the payroll system and third party administrators.  This document specifies the data elements that will be necessary to process benefit contributions within a payroll and to send information to the third party administrators.

 

1.1.3          Background of Payroll Benefit Contributions (Son of Spark)

The SPARK standard was forwarded to the payroll workgroup to define the benefit contributions information to be transmitted between a payroll vendor and a third party administrator The first phase of this project was to convert the SPARK standard to XML. The payroll transmission was demonstrated during a conference using a demo XML format. This initial phase was called the Son of SPARK.

 

1.2        Design Requirements

 

Develop a Schema and documentation to allow the transfer of payroll benefits contributions information between employers and third-party administrators.

 

1.3        Scope

1.3.1          Within Scope

Define the payroll benefit contributions structure for use in the payroll schemas defined by the HR-XML Consortium. This will include two transactions:

·         Updating the benefit contributions election

 

1.3.2          Outside Scope

 

Standardized XML vocabularies with no direct references to any US terminology will allow international payroll vendors to easily adopt the standard for international use. However, this specification contains benefit information specific to the US. Attributes may need to be added or driven off a table that stores the types of plans available by country.

 

1.4        Business Use Case

The use case describes the payroll benefits transactions between an organization, employee, and third-party administrator. This is further defined in the activity diagrams below, where the swim lanes denote the transmission of information between business partners.

 

1.4.1          Payroll Processing Benefit Contributions

As the organization processes payroll, the benefit contributions are calculated and posted. This information is tranmitted to the third-party administrator. The administrator posts the contributions to the online system, where the employee may review the contributions information.

 

 

 

1.4.2          Updating Benefit Contributions Election

When a current participant changes their benefit contributions, the new contribution information is transmitted to the organization.  The organization calculates and posts the payroll using the new benefit contributions. The third-party administrator posts the updated contributions to the online system, to be reviewed by the employee.

 

 

 


2    Schema/DTD Design

2.1        PayrollBenefitContributions Schema

 

A high level diagram can be found below.

 

 

 

 

 

2.2        Schema/DTD Elements Explained

 

2.2.1          PayrollBenefitContributions

Note: LocalDateType and AnyDateTimeNaType are references to the HR-XML CPO DateTimeTypes specification.  See references for links to this information.

 

Component Name

ContentModel
Data type
Occurrence:
Sequence | Choice | All (minOccurs/maxOccurs)

Attributes

Definition

/
PayrollBenefitContributions

xml:lang - -
TransmittalDate - LocalDateType - S (1/1)
CreateDate - LocalDateType - S (1/1)
VendorPlan - [complexType] - S (1/*)
ControlTotals - xsd:decimal - S (0/*)

The root element for the schema. This is the starting point for the Payroll Benefit Contributions schema/dtd design.

/ PayrollBenefitContributions/
TransmittalDate

- LocalDateType - S (1/1)

Date of transmission to the plan administrator.

/ PayrollBenefitContributions/
CreateDate

- LocalDateType - S (1/1)

The date the XML file was created by the payroll system transmitting the information.

/ PayrollBenefitContributions/
VendorPlan

PlanId - PayrollBenefitContributionsIdentifierType - S (1/1)
Participant - [complexType] - S (1/*)
OrganizationInformation - [complexType] - S (0/1)

Defines the Plan, such as PlanId and Participant.

/ PayrollBenefitContributions/ VendorPlan/
PlanId

- PayrollBenefitContributionsIdentifierType - S (1/1)

PlanId specifies which plan the sibling elements relate to. Sample value: "XYZ Company Pension Plan". A taxpayer identification number could also be used here.

/ PayrollBenefitContributions/ VendorPlan/ PlanId/
primaryIdentifier

- xsd:boolean -

True/False. Identifies if this is the primary plan.

/ PayrollBenefitContributions/ VendorPlan/ PlanId/
validFrom

- AnyDateTimeNaType -

Beginning inclusive date for the ID.

/ PayrollBenefitContributions/ VendorPlan/ PlanId/
validTo

- AnyDateTimeNaType -

Ending inclusive date for the ID.

/ PayrollBenefitContributions/ VendorPlan/ PlanId/
Id

- xsd:string - S (1/1)

Unique identifier.

/ PayrollBenefitContributions/ VendorPlan/ PlanId/
Domain

IdIssuer - xsd:string - S (0/1)
IdType - xsd:string - S (0/1)

Contains the domain information for the Id.

/ PayrollBenefitContributions/ VendorPlan/ PlanId/ Domain/
IdIssuer

- xsd:string - S (0/1)

The entity responsible for the issuing Id.

/ PayrollBenefitContributions/ VendorPlan/ PlanId/ Domain/
IdType

- xsd:string - S (0/1)

Information that can be used to help further identify the id.

/ PayrollBenefitContributions/ VendorPlan/
Participant

DatesInformation - [complexType] - S (0/*)
PayrollInformation - [complexType] - S (0/1)
PlanSummaryInformation - [complexType] - S (0/1)
PersonInformation - [complexType] - S (1/*)

Contains all the information related to the person (employee) and the information gathered for that employee.

/ PayrollBenefitContributions/ VendorPlan/ Participant/
DatesInformation

StartDate - LocalDateType - S (0/1)
EndDate - LocalDateType - S (0/1)
dateType dateTypePatternExtensionType

Contains the begin and end dates for various events in a person's employment history. All dates are as per ISO 8601 (YYYY-MM-DD)

/ PayrollBenefitContributions/ VendorPlan/ Participant/ DatesInformation/
dateType

- dateTypePatternExtensionType -

Describes the employment status related to the date

/ PayrollBenefitContributions/ VendorPlan/ Participant/ DatesInformation/
StartDate

- LocalDateType - S (0/1)

Contains the begin date for the event.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ DatesInformation/
EndDate

- LocalDateType - S (0/1)

Contains the end date for the event.

/ PayrollBenefitContributions/ VendorPlan/ Participant/
PayrollInformation

PayDate - LocalDateType - S (0/1)
PayEndDate - LocalDateType - S (0/1)
EligibleEarnings - xsd:decimal - S (0/*)
Contribution - xsd:string - S (1/*)
PayFrequency - PayFrequencyType - S (0/1)
CompensationType - xsd:string - S (0/1)
EmployeeSchedule - xsd:string - S (0/1)
PayRate - xsd:decimal - S (0/*)
OvertimeStatus - xsd:string - S (0/1)

Contains the payroll information as it relates to the person. This will include the contributions, payrates, earnings, paydates, etc.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PayrollInformation/
PayDate

- LocalDateType - S (0/1)

The pay (check) date that this entry relates to for the person. As per ISO standard 8601

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PayrollInformation/
PayEndDate

- LocalDateType - S (0/1)

The pay period end date for the contribution information.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PayrollInformation/
EligibleEarnings

xsd:extension base: xsd:decimal

All the eligible earnings for this payroll contribution.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PayrollInformation/ EligibleEarnings/
periodType

xsd:restriction base: xsd:string (enumeration)

Describes the earnings that are being defined for this contribution

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PayrollInformation/ EligibleEarnings/
currencyCode

- CurrencyCodeType -

Defines the currency code being used for the earnings. Based on ISO standard.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PayrollInformation/ EligibleEarnings/
planType

- planTypePatternExtensionType -

Describes the plan type being contributed to. '**US only defined plans

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PayrollInformation/
Contribution

ContributionAmount - xsd:decimal - S (0/*)
ToDateAmount - xsd:decimal - S (0/*)
Loan - [complexType] - S (0/*)
typeContribution - required
currencyCode CurrencyCodeType
planType planTypePatternExtensionType - required
contributionType

Contains all the contribution information as it relates to the person.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PayrollInformation/ Contribution/
typeContribution

xsd:restriction base: xsd:string (enumeration)

Describes the type of contribution.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PayrollInformation/ Contribution/
currencyCode

- CurrencyCodeType -

Defines the currency code being used for the contribution/loan. Based on ISO standard.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PayrollInformation/ Contribution/
planType

- planTypePatternExtensionType -

Describes the plan type being contributed to. '**US only defined plans

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PayrollInformation/ Contribution/
contributionType

xsd:restriction base: xsd:string (enumeration)

Describes whether Pretax, posttax or loan.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PayrollInformation/ Contribution/
ContributionAmount

xsd:extension base: xsd:decimal

Contains the amount of the contribution.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PayrollInformation/ Contribution/ ContributionAmount/
planId

- xsd:string -

Plan identification code used by the plan administrator.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PayrollInformation/ Contribution/
ToDateAmount

xsd:extension base: xsd:decimal

Contains the year to date amount for the contributions.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PayrollInformation/ Contribution/ ToDateAmount/
toDateType

xsd:restriction base: xsd:string (enumeration)

Describes the To Date amount.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PayrollInformation/ Contribution/
Loan

Id - xsd:string - S (0/1)
Id - xsd:string - S (0/1)
LoanPaymentAmount - xsd:decimal - S (1/1)

Gives the loan information such as ID and amount.

/ PayrollBenefitCon tributions/ VendorPlan/ Participant/ PayrollInformation/ Contribution/ Loan/
Id

- xsd:string - S (0/1)

Unique identifier.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PayrollInformation/ Contribution/ Loan/
Id

- xsd:string - S (0/1)

Unique identifier.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PayrollInformation/ Contribution/ Loan/
LoanPaymentAmount

xsd:extension base: xsd:decimal

The goal amount for the loan.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PayrollInformation/ Contribution/ Loan/ LoanPaymentAmount/
toDateType

xsd:restriction base: xsd:string (enumeration)

Describes the Loan Payment amount.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PayrollInformation/
PayFrequency

xsd:restriction base: PayFrequencyType (enumeration)

Describes the pay frequency for this person.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PayrollInformation/
CompensationType

xsd:restriction base: xsd:string (enumeration)

Describes the compensation basis for the employee.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PayrollInformation/
EmployeeSchedule

- xsd:string - S (0/1)

Describes the employment status of the person. This may be full time, part time, part time with benefits, contract, or any other applicable schedule.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PayrollInformation/
PayRate

xsd:extension base: xsd:decimal

States the pay rate for the person.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PayrollInformation/ PayRate/
payRateType

xsd:restriction base: xsd:string (enumeration)

Describes base pay rate for the person.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PayrollInformation/ PayRate/
currencyCode

- CurrencyCodeType -

Defines the currency code being used for the pay rate. Based on ISO standard.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PayrollInformation/
OvertimeStatus

xsd:restriction base: xsd:string (enumeration)

Contains overtime status information.  In the U.S., this contains the Fair Labor Standards Act status.

/ PayrollBenefitContributions/ VendorPlan/ Participant/
PlanSummaryInformation

PlanInformation - [complexType] - S (0/*)
Flags - xsd:string - S (0/*)
ServiceHours - xsd:decimal - S (0/*)

Contains the summary of the plan information as it relates to the person. Includes elements containing indicators (such as HCE) for the person and beneficiary information.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PlanSummaryInformation/
PlanInformation

Loan - [complexType] - S (0/*)
PersonContributionInformation - xsd:decimal - S (0/*)
PlanStatus - LocalDateType - S (0/1)
PlanDates - LocalDateType - S (0/*)
PlanYearsService - xsd:integer - S (0/1)
EmployerMatch - xsd:decimal - S (0/1)
planType planTypePatternExtensionType - required
currencyCode CurrencyCodeType

Describes the plan(s) that the person is a part of.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PlanSummaryInformation/ PlanInformation/
planType

- planTypePatternExtensionType -

Describes the plan type being contributed to. '**US only defined plans

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PlanSummaryInformation/ PlanInformation/
currencyCode

- CurrencyCodeType -

Must conform to ISO 4217 - Representation of Currency and Funds.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PlanSummaryInformation/ PlanInformation/
Loan

Id - xsd:string - S (0/1)
Id - xsd:string - S (0/1)
LoanPaymentAmount - xsd:decimal - S (1/1)

Gives the loan information such as ID and amount.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PlanSummaryInformation/ PlanInformation/ Loan/
Id

- xsd:string - S (0/1)

Unique identifier.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PlanSummaryInformation/ PlanInformation/ Loan/
Id

- xsd:string - S (0/1)

Unique identifier.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PlanSummaryInformation/ PlanInformation/ Loan/
LoanPaymentAmount

xsd:extension base: xsd:decimal

The goal amount for the loan.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PlanSummaryInformation/ PlanInformation/ Loan/ LoanPaymentAmount/
toDateType

xsd:restriction base: xsd:string (enumeration)

Describes the Loan Payment amount.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PlanSummaryInformation/ PlanInformation/
PersonContributionInformation

xsd:extension base: xsd:decimal

Describes the contribution or loan.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PlanSummaryInformation/ PlanInformation/ PersonContributionInformation/
contributionPctAmt

xsd:restriction base: xsd:string (enumeration)

Specifies whether the contribution is a percent or flat amount.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PlanSummaryInformation/ PlanInformation/ PersonContributionInformation/
contributionType

xsd:restriction base: xsd:string (enumeration)

Describes whether pretax or posttax.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PlanSummaryInformation/ PlanInformation/ PersonContributionInformation/
goalOrPeriod

xsd:restriction base: xsd:string (enumeration)

Describes whether the contribution applies to a period or goal.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PlanSummaryInformation/ PlanInformation/
PlanStatus

xsd:extension base: LocalDateType

Contains the effective date and type for the plan status for the person.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PlanSummaryInformation/ PlanInformation/ PlanStatus/
planStatusType

xsd:restriction base: xsd:string (enumeration)

Intended to reflect common states that a given participant could be in relative to this plan.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PlanSummaryInformation/ PlanInformation/
PlanDates

xsd:extension base: LocalDateType

Contains various date information related to the person's eligibility within the plan.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PlanSummaryInformation/ PlanInformation/ PlanDates/
planDateType

xsd:restriction base: xsd:string (enumeration)

Intended to house dates that may drive benefit levels or eligibility.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PlanSummaryInformation/ PlanInformation/
PlanYearsService

- xsd:integer - S (0/1)

Contains the number of years the person has been involved in the plan.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PlanSummaryInformation/ PlanInformation/
EmployerMatch

- xsd:decimal - S (0/1)

Contains the employer match percentage for this person's plan.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PlanSummaryInformation/
Flags

xsd:extension base: xsd:string

Describes a variety of categories for the person.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PlanSummaryInformation/ Flags/
flagType

- flagTypePatternExtensionType -

Indicates the kind of flag data.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PlanSummaryInformation/
ServiceHours

xsd:extension base: xsd:decimal

Contains the number of service hours for the person.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PlanSummaryInformation/ ServiceHours/
periodType

xsd:restriction base: xsd:string (enumeration)

If "YTD", the amount of ServiceHours is to be interpreted as a year-to-date figure (year relative to the CreateDate); if "period", it is an increment for the period in question.

/ PayrollBenefitContributions/ VendorPlan/ Participant/
PersonInformation

PersonId - PayrollBenefitContributionsIdentifierType - S (1/*)
DateOfBirth - LocalDateType - S (0/1)
MaritalStatus - [complexType] - S (0/1)
Gender - GenderCodeType - S (0/1)

Contains the information about the person such as name, governement id's, and date of birth.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PersonInformation/
PersonId

- PayrollBenefitContributionsIdentifierType - S (1/*)

Contains the person's identifier as it relates to the person within the organization.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PersonInformation/ PersonId/
primaryIdentifier

- xsd:boolean -

true/false. Identifies if this is the primary government Id.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PersonInformation/ PersonId/
validFrom

- AnyDateTimeNaType -

Beginning inclusive date for the ID.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PersonInformation/ PersonId/
validTo

- AnyDateTimeNaType -

Ending inclusive date for the ID.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PersonInformation/ PersonId/
Id

- xsd:string - S (1/1)

Unique identifier.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PersonInformation/ PersonId/
Domain

IdIssuer - xsd:string - S (0/1)
IdType - xsd:string - S (0/1)

Contains the domain information for the Id.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PersonInformation/ PersonId/ Domain/
IdIssuer

- xsd:string - S (0/1)

The entity responsible for the issuing Id.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PersonInformation/ PersonId/ Domain/
IdType

- xsd:string - S (0/1)

Information that can be used to help further identify the id.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PersonInformation/
DateOfBirth

- LocalDateType - S (0/1)

The date of birth for the person.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PersonInformation/
MaritalStatus

MaritalStatusCode - xsd:string - S (1/1)
StartDate - LocalDateType - S (0/1)

Contains the marital status of the person such as the code and start date.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PersonInformation/ MaritalStatus/
MaritalStatusCode

xsd:restriction base: xsd:string (enumeration)

Contains a text value of the marital status of the person.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PersonInformation/ MaritalStatus/
StartDate

- LocalDateType - S (0/1)

Contains the begin date for the event.

/ PayrollBenefitContributions/ VendorPlan/ Participant/ PersonInformation/
Gender

- GenderCodeType - S (0/1)

Describes the sex of the person.

/ PayrollBenefitContributions/ VendorPlan/
OrganizationInformation

GovernmentId - PayrollBenefitContributionsIdentifierType - S (1/1)
Name - xsd:string - S (0/1)
Level - xsd:string - S (0/*)
LocationSummary - [complexType] - S (0/1)
effectiveDate LocalDateType

Contains the organization information as it relates to the person.

/ PayrollBenefitContributions/ VendorPlan/ OrganizationInformation/
effectiveDate

- LocalDateType -

The effective date for the organization information. This will help keep track if there are any organizational changes and when they occurred (including transfers).

/ PayrollBenefitContributions/ VendorPlan/ OrganizationInformation/
GovernmentId

- PayrollBenefitContributionsIdentifierType - S (1/1)

An identification number issued by a government to identify a person. For example the CPF in Brazil, or the Social Security Number in the United States..

/ PayrollBenefitContributions/ VendorPlan/ OrganizationInformation/ GovernmentId/
primaryIdentifier

- xsd:boolean -

True/False. Identifies if this is the primary government Id.

/ PayrollBenefitContributions/ VendorPlan/ OrganizationInformation/ GovernmentId/
validFrom

- AnyDateTimeNaType -

Beginning inclusive date for the ID.

/ PayrollBenefitContributions/ VendorPlan/ OrganizationInformation/ GovernmentId/
validTo

- AnyDateTimeNaType -

Ending inclusive date for the ID.

/ PayrollBenefitContributions/ VendorPlan/ OrganizationInformation/ GovernmentId/
Id

- xsd:string - S (1/1)

Unique identifier.

/ PayrollBenefitContributions/ VendorPlan/ OrganizationInformation/ GovernmentId/
Domain

IdIssuer - xsd:string - S (0/1)
IdType - xsd:string - S (0/1)

Contains the domain information for the Id.

/ PayrollBenefitContributions/ VendorPlan/ OrganizationInformation/ GovernmentId/ Domain/
IdIssuer

- xsd:string - S (0/1)

The entity responsible for the issuing Id.

/ PayrollBenefitContributions/ VendorPlan/ OrganizationInformation/ GovernmentId/ Domain/
IdType

- xsd:string - S (0/1)

Information that can be used to help further identify the id.

/ PayrollBenefitContributions/ VendorPlan/ OrganizationInformation/
Name

- xsd:string - S (0/1)

The organization name.

/ PayrollBenefitContributions/ VendorPlan/ OrganizationInformation/
Level

- xsd:string - S (0/*)

Describes which level of the organization the person is located in.

/ PayrollBenefitContributions/ VendorPlan/ OrganizationInformation/
LocationSummary

Municipality - xsd:string - S (0/1)
Region - xsd:string - S (0/*)
CountryCode - CountryCodeType - S (0/1)
PostalCode - xsd:string - S (0/1)

Information on where organization is located. This information may include a municipality, region, country and postal code.

/ PayrollBenefitContributions/ VendorPlan/ OrganizationInformation/ LocationSummary/
Municipality

- xsd:string - S (0/1)

Represents the city, town, village, or hamlet.

/ PayrollBenefitContributions/ VendorPlan/ OrganizationInformation/ LocationSummary/
Region

- xsd:string - S (0/*)

Represents the State, Province, and/or County. Military addresses should be stored in multiple regions (hierarchy region from highest to most specific).

/ PayrollBenefitContributions/ VendorPlan/ OrganizationInformation/ LocationSummary/
CountryCode

- CountryCodeType - S (0/1)

Contains the ISO 3166-1 two-character country code.

/ PayrollBenefitContributions/ VendorPlan/ OrganizationInformation/ LocationSummary/
PostalCode

- xsd:string - S (0/1)

A postal code. Determines how mail is sorted and delivered. See PostalAddress 1.1.

/ PayrollBenefitContributions/
ControlTotals

xsd:extension base: xsd:decimal

Contains the hash totals for each plan id that is contained in the XML file.

/ PayrollBenefitContributions/ ControlTotals/
planId

- xsd:string -

Specifies which PlanId (under VendorPlans) this total relates to.  Within a given XML document, the values between the two elements should match.

/ PayrollBenefitCon tributions/ ControlTotals/
type

- xsd:string -

Describes the type of control total.

 

 

2.2.2          PersonName 1.2

 

Component Name

ContentModel
Data type
Occurrence:
Sequence | Choice | All (minOccurs/maxOccurs)

Attributes

Definition

/
PersonName

- PersonNameType - (1/1)

The name of a person.

/ PersonName/
FormattedName

xsd:restriction base: xsd:string

Contains, in one string, a fully formatted name with all of its pieces in their proper place. This includes all of the necessary punctuation. This de-normalized form of the name cannot be easily parsed. The use of multiple occurrences are officially deprecated in this release and will be removed in a future version.

/ PersonName/ FormattedName/
type

xsd:restriction base: xsd:string (enumeration)

Do not use. This attribute will be deprecated in v1.1 and completely removed in a future version. Defines the purpose of the formatted name.

/ PersonName/
LegalName

- xsd:string - S (0/1)

Legal name used for legal documentation or other legal purposes. Contains, in one string, a fully formatted name with all of its pieces in their proper place. This includes all of the necessary punctuation.

/ PersonName/
GivenName

- xsd:string - S (0/*)

Contains the given or chosen name. Also known as a person’s first name. If multiple givenNames are used, the order is implied.

/ PersonName/
PreferredGivenName

- xsd:string - S (0/1)

Contains the chosen name by which the person prefers to be addressed. Note: This name may be a name other than a given name, such as a nickname.

/ PersonName/
MiddleName

- xsd:string - S (0/1)

Contains a person’s middle name or initial.

/ PersonName/
FamilyName

xsd:restriction base: xsd:string

Contains the non-chosen or inherited name. Also known as a person’s last name in the Western context. The order is implied by the order of appearance of the FamilyName elements in the XML document.

/ PersonName/ FamilyName/
primary

xsd:restriction base: xsd:string (enumeration)

Defines the order when multiple family names are used.

/ PersonName/ FamilyName/
prefix

- xsd:string -

Defines the context for the PersonName prefix, such as family name prefix or aristocratic prefix.

/ PersonName/
Affix

xsd:restriction base: xsd:string

Contains the remaining parts of the PersonName as defined by the type attribute.

/ PersonName/ Affix/
type

xsd:restriction base: xsd:string (enumeration)

Defines the context for the affix.

 

2.2.3          PostalAddress 1.2

 

Component Name

ContentModel
Data type
Occurrence:
Sequence | Choice | All (minOccurs/maxOccurs)

Attributes

Definition

/
PostalAddress

- PostalAddressType - (1/1)

Describes a postal address used for delivery of mail.

/ PostalAddress/
type

xsd:restriction base: xsd:string (enumeration)

Defines if the postal address is a street address, military, or post office box.

/ PostalAddress/
CountryCode

xsd:restriction base: xsd:string

Contains the ISO 3166-1 two-character country code.

/ PostalAddress/
PostalCode

- xsd:string - S (0/1)

Codes established by postal authorities for purposes of sorting and delivering mail.

/ PostalAddress/
Region

- xsd:string - S (0/*)

Represents the State, Province, and/or County. Military addresses should be stored in multiple regions (hierarchy region from highest to most specific): 1 st region = APO (Army/Airforce Post Office); FPO (Fleet Post Office). 2 nd region = 2 letter designator for part of world (AE Œ Europe, AA Œ Americas)

/ PostalAddress/
Municipality

- xsd:string - S (0/1)

Represents the city, town, village, or hamlet.

/ PostalAddress/
DeliveryAddress

AddressLine - xsd:string - S (0/*)
StreetName - xsd:string - S (0/1)
BuildingNumber - xsd:string - S (0/1)
Unit - xsd:string - S (0/1)
PostOfficeBox - xsd:string - S (0/1)

Contains one formatted address line with all of its pieces in their proper place. This includes all of the necessary punctuation. This de-normalized form of the delivery address cannot be easily parsed. AddressLine is used for delivery by the postal service. May contain the name or number of the building, house, and/or street. If the address is decomposed into StreetName and BuildingNumber, do not use AddressLine to store the address. Examples may include: Hancock Building; 5223 Oak Street; 213; East 23rd Avenue; P.O. Box 241; Suite 200.

/ PostalAddress/ DeliveryAddress/
AddressLine

- xsd:string - S (0/*)

AddressLine is used for delivery by the postal service. May contain the name or number of the building, house, and/or street. If the address is decomposed into StreetName and BuildingNumber, do not use AddressLine to store the address. Examples may include: Hancock Building; 5223 Oak Street; 213; East 23rd Avenue; P.O. Box 241; Suite 200.

/ PostalAddress/ DeliveryAddress/
StreetName

- xsd:string - S (0/1)

Contains the street name or number. This may be used for verification, building the address, or storing in a database. If the address is decomposed into StreetName, BuildingNumber and Unit, do not use AddressLine to duplicate that part of the address information. Examples may include: Oak Street; East 23rd Avenue.

/ PostalAddress/ DeliveryAddress/
BuildingNumber

- xsd:string - S (0/1)

This element is defined as a string to handle "numbers" such as 7A or 15/III. The term "BuildingNumber" was also used instead of HouseNumber so all types of buildings could apply (house, building, warehouse, tower, etc). This may be used for verification, building the address, or storing in a database. If the address is decomposed into StreetName, BuildingNumber and Unit, do not use AddressLine to duplicate that part of the address information. Examples may include: Hancock Building; 5223.

/ PostalAddress/ DeliveryAddress/
Unit

- xsd:string - S (0/1)

Contains the Apartment, Suite, Unit, Room, Floor, Trailer, Level, Hanger, etc. This may be used for verification, building the address, or storing in a database. If the address is decomposed into StreetName, BuildingNumber and Unit, do not use AddressLine to duplicate that part of the address information. Examples may include: Apt. 124, Ste. 300, Upper, Hanger A.

/ PostalAddress/ DeliveryAddress/
PostOfficeBox

- xsd:string - S (0/1)

Contains the Post Office Box. This may be used for verification, building the address, or storing in a database. Example: P.O. Box 241.

/ PostalAddress/
Recipient

PersonName - PersonNameType - S (0/1)
AdditionalText - xsd:string - S (0/*)
Organization - xsd:string - S (0/1)
OrganizationName - xsd:string - S (0/1)

Contains information about the recipient. This may include a person's name, an organization name, and/or additional information.

/ PostalAddress/ Recipient/
PersonName

- PersonNameType - S (0/1)

The name of a person.

/ PostalAddress/ Recipient/
AdditionalText

- xsd:string - S (0/*)

May contain other recipient routing information in addition to organization and person name. AdditionalText is used for further routing after it has been delivered by the postal service.

/ PostalAddress/ Recipient/
Organization

- xsd:string - S (0/1)

Information identifying the organization for which the enrollment data is being transmitted.

/ PostalAddress/ Recipient/
OrganizationName

- xsd:string - S (0/1)

Contains information about the recipient. This may include a person's name, an organization name, and/or additional information.

 

 

 


3    Known Limitations

This design may not represent payment methods for all international aspects.

4    Appendix A - Document Version History

Date

Description

01/19/2001

Initial Draft

2001-Nov-26

Schema and document changed to reflect:

1) PlanStatus made optional

2) ServiceHours made unbounded occurrence

3) StartDate within MaritalStatus made optional

4) VendorPlan created as parent of Participant, with children PlanId and Participant (to group all Participants by PlanId)

<VendorPlan>

        <PlanId/>

        <Participant/>

</VendorPlan>

5) Remove goalYTD element

6) PersonId and GovernmentId made "IdentifierType" (the former made 1 to many occurrence)

7) HashTotals renamed to ControlTotals, with attribute "type" added which is a string

8) Enumeration extension put in for attribute enumerations in: planType (EligibleEarnings, Contribution, PlanInformation), dateType (DatesInformation), and flagType (Flags).

2001-Dec-4

Schema format changes. Moved VendorPlan up under PayrollBenefitContribution root. Moved OrganizationInformation under VendorPlan as Peer to Participant. Replaced definition table and examples to match new schema. Corrected attributes Start/End Date to start/end Date.

2002-Jan-18

Removed PriorDateOfBirth. Moved DateOfBirth up one level to replace DateOfBirthInformation. Changed validThrough Id attribute to validTo.

2003-Feb-26

Approved recommendation by HR-XML Consortium. The default and targetNamespaces of all HR-XML schemas have been standardized. This recommendation is available as part of the HR-XML 2_0 architecture.

2004-07-06

An optional attribute xml:lang was added to the root element. 

2006-Feb-28

Approved by Consortium

2007-April-15

Updated/Approved by Consortium

 

5    Appendix B – Related Documents

Reference

Link

Date Time DataTypes

http://ns.hr-xml.org/2_5/HR-XML-2_5/CPO/DateTimeDataTypes.xsd

 

http://ns.hr-xml.org/2_5/HR-XML-2_5/CPO/DateTimeDataTypes.html

 

 

PostalAddress

http://ns.hr-xml.org/2_5/HR-XML-2_5/CPO/PostalAddress.xsd

 

http://ns.hr-xml.org/2_5/HR-XML-2_5/CPO/PostalAddress.html

 

 

PersonName

http://ns.hr-xml.org/2_5/HR-XML-2_5/CPO/PersonName.xsd

 

http://ns.hr-xml.org/2_5/HR-XML-2_5/CPO/PersonName.html

 

 

 

 

6    Appendix C – Reference Examples

<PayrollBenefitContributions xmlns="http://ns.hr-xml.org/2007-04-15" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ns.hr-xml.org/2007-04-15

PayrollBenefitContributions.xsd">

       <TransmittalDate>2001-12-01</TransmittalDate>

       <CreateDate>2001-12-01</CreateDate>

       <VendorPlan>

             <PlanId primaryIdentifier="true" validFrom="2001-12-01" validTo="2001-12-01">

                    <Id>XYZ Company Savings Plan</Id>

             </PlanId>

             <Participant>

                    <PayrollInformation>

                           <PayDate>2001-12-01</PayDate>

                           <PayEndDate>2001-12-01</PayEndDate>

                           <EligibleEarnings planType="x:ADP">50573.73</EligibleEarnings>

                           <EligibleEarnings planType="x:PensionPlan">62146.00</EligibleEarnings>

                           <EligibleEarnings planType="x:PensionSERP">71481.32</EligibleEarnings>

                           <EligibleEarnings planType="x:401kDeferral">93115.23</EligibleEarnings>

                           <EligibleEarnings planType="x:BasePay">83941.65</EligibleEarnings>

                           <EligibleEarnings planType="x:Commissions">80355.83</EligibleEarnings>

                           <EligibleEarnings planType="x:Overtime">26181.03</EligibleEarnings>

                           <EligibleEarnings planType="x:EBPCash">8255.00</EligibleEarnings>

                           <EligibleEarnings planType="x:EBPStock">79138.18</EligibleEarnings>

                           <EligibleEarnings planType="x:NonEBPBonus">37973.02</EligibleEarnings>

                           <EligibleEarnings planType="x:RestrictedStock">28610.23</EligibleEarnings>

                           <EligibleEarnings planType="x:ShiftDifferential">60485.84</EligibleEarnings>

                           <EligibleEarnings planType="x:1994Attributed">87817.38</EligibleEarnings>

                           <EligibleEarnings planType="x:FICA">83984.38</EligibleEarnings>

                           <EligibleEarnings planType="x:HCE">69931.03</EligibleEarnings>

                           <EligibleEarnings planType="x:CanadaBase">11932.37</EligibleEarnings>

                           <EligibleEarnings planType="x:CanadaCommissions">66812.13</EligibleEarnings>

                           <EligibleEarnings planType="x:CanadaOvertime">68252.56</EligibleEarnings>

                           <EligibleEarnings planType="x:CanadaBonus">89474.49</EligibleEarnings>

                           <Contribution typeContribution="ER" planType="401k">

                                 <ContributionAmount>139.24</ContributionAmount>

                           </Contribution>

                           <Contribution typeContribution="ER" planType="x:BaseToEBP">

                                 <ContributionAmount>103.16</ContributionAmount>

                           </Contribution>

                           <Contribution typeContribution="ER" planType="x:CommissionsToEBP">

                                 <ContributionAmount>132.64</ContributionAmount>

                           </Contribution>

                           <Contribution typeContribution="ER" planType="x:EBPCashToEDP">

                                 <ContributionAmount>410.96</ContributionAmount>

                           </Contribution>

                           <Contribution typeContribution="ER" planType="x:EBPStockToEDP">

                                 <ContributionAmount>333.94</ContributionAmount>

                           </Contribution>

                           <Contribution typeContribution="ER" planType="x:nonEBPStockToEDP">

                                 <ContributionAmount>466.81</ContributionAmount>

                           </Contribution>

                           <Contribution typeContribution="ER" planType="x:StockToEDP">

                                 <ContributionAmount>86.17</ContributionAmount>

                           </Contribution>

                           <Contribution typeContribution="ER" planType="x:CreditsToEDP">

                                 <ContributionAmount>254.01</ContributionAmount>

                           </Contribution>

                           <Contribution typeContribution="ER" planType="x:MatchToEDP">

                                 <ContributionAmount>183.27</ContributionAmount>

                           </Contribution>

                           <Contribution typeContribution="ER" planType="x:HealthFSA">

                                 <ContributionAmount>315.55</ContributionAmount>

                           </Contribution>

                           <Contribution typeContribution="ER" planType="x:DependentFSA">

                                 <ContributionAmount>253.05</ContributionAmount>

                           </Contribution>

                           <Contribution typeContribution="ER" planType="x:TransportationFSA">

                                 <ContributionAmount>404.07</ContributionAmount>

                           </Contribution>

                           <Contribution typeContribution="ER" planType="x:401kLoan">

                                 <Loan>

                                        <Id>4</Id>

                                        <LoanPaymentAmount toDateType="Period">210.59</LoanPaymentAmount>

                                 </Loan>

                           </Contribution>

                           <Contribution typeContribution="ER" planType="x:401kLoan">

                                 <Loan>

                                        <Id>3</Id>

                                        <LoanPaymentAmount toDateType="Period">4.59</LoanPaymentAmount>

                                 </Loan>

                           </Contribution>

                           <Contribution typeContribution="ER" planType="x:401kLoan">

                                 <Loan>

                                        <Id>2</Id>

                                        <LoanPaymentAmount toDateType="Period">332.55</LoanPaymentAmount>

                                 </Loan>

                           </Contribution>

                           <Contribution typeContribution="ER" planType="x:401kLoan">

                                 <Loan>

                                        <Id>1</Id>

                                        <LoanPaymentAmount toDateType="Period">96.47</LoanPaymentAmount>

                                 </Loan>

                           </Contribution>

                    </PayrollInformation>

                    <PlanSummaryInformation>

                           <ServiceHours periodType="Period">41.34</ServiceHours>

                    </PlanSummaryInformation>

                    <PersonInformation>

                           <PersonId primaryIdentifier="true" validFrom="2001-12-01" validTo="2001-12-01">

                                 <Id>356-41-6603</Id>

                                 <Domain>

                                        <IdIssuer>Country:US</IdIssuer>

                                        <IdType>SSN</IdType>

                                 </Domain>

                           </PersonId>

                    </PersonInformation>

             </Participant>

       </VendorPlan>

</PayrollBenefitContributions>