🔹 Introduction: Why Load Person Contact Using HDL?
In Oracle Fusion HCM, person contact details include email addresses, phone numbers, emergency contacts, dependents, and beneficiaries.
Loading these contacts using HDL allows bulk updates and avoids manual entry.
This is essential for:
Employee onboarding
Emergency contact management
Payroll and benefits integration
Accurate HR reporting
🔹 Prerequisites
Before loading Contact.dat, ensure:
Worker/person exists in Oracle HCM (
PersonNumbermust be valid)Source system codes are configured correctly
Legislation codes are set (e.g., US, GLOBAL)
Contact types and relationships are defined in reference data
🔹 Objects Required for Person Contact HDL
| Object | Purpose |
|---|---|
| Contact | Loads person contact records (start date, end date) |
| ContactName | Loads names for the contact (first, middle, last, title) |
| ContactRelationship | Defines relationships (emergency, dependent, beneficiary, bondholder) |
🔹 Sample HDL Templates (Contact.dat hdl template)
- Contact Metadata - Covers Start Date,End Date of Contact
METADATA|Contact|SourceSystemOwner|SourceSystemId|EffectiveStartDate|EffectiveEndDate|PersonNumber|StartDate
MERGE|Contact|XXTEST|XXTEST_PERCNT2|2019/09/01|4712/12/31|XXTEST_CNT1|2019/09/01
- ContactName Metadata - Covers Name of the Person contact
METADATA|ContactName|SourceSystemOwner|SourceSystemId|PersonId(SourceSystemId)|EffectiveStartDate|EffectiveEndDate|LegislationCode|NameType|FirstName|MiddleNames|LastName|Title
MERGE|ContactName|XXTEST|XXTEST_CNTNM2|XXTEST_PERCNT2|2019/09/01|4712/12/31|US|GLOBAL|ADAM||TEST|MR.
METADATA|ContactName|SourceSystemOwner|SourceSystemId|PersonId(SourceSystemId)|EffectiveStartDate|EffectiveEndDate|LegislationCode|NameType|FirstName|MiddleNames|LastName|Title
MERGE|ContactName|XXTEST|XXTEST_CNTNM2|XXTEST_PERCNT2|2019/09/01|4712/12/31|US|GLOBAL|ADAM||TEST|MR.
- ContactRelationship Metadata - Covers Relation of Person Contact with Worker
METADATA|ContactRelationship|SourceSystemOwner|SourceSystemId|EffectiveStartDate|EffectiveEndDate|PersonId(SourceSystemId)|RelatedPersonId(SourceSystemId)|ContactType|BeneficiaryFlag|DependentFlag|EmergencyContactFlag|BondholderFlag
MERGE|ContactRelationship|XXTEST|XXTEST_CREL_CNT2|2019/09/01|4712/12/31|XXTEST_PERCNT2|XXTEST_PER1|Emergency|||Y|
METADATA|ContactRelationship|SourceSystemOwner|SourceSystemId|EffectiveStartDate|EffectiveEndDate|PersonId(SourceSystemId)|RelatedPersonId(SourceSystemId)|ContactType|BeneficiaryFlag|DependentFlag|EmergencyContactFlag|BondholderFlag
MERGE|ContactRelationship|XXTEST|XXTEST_CREL_CNT2|2019/09/01|4712/12/31|XXTEST_PERCNT2|XXTEST_PER1|Emergency|||Y|
🔹 Field Explanation (Infographic Ready)
| Field | Description |
|---|---|
| SourceSystemOwner | Source system that owns the record |
| SourceSystemId | Unique ID from source system |
| PersonNumber | Oracle Fusion employee number |
| EffectiveStartDate | Start date of contact record |
| EffectiveEndDate | End date of contact record |
| LegislationCode | Country/region (e.g., US, GLOBAL) |
| NameType | Type of contact name (GLOBAL, LOCAL) |
| ContactType | Emergency, Dependent, Beneficiary, Bondholder |
| EmergencyContactFlag | Y = Yes, this is emergency contact |
| DependentFlag | Y = Yes, this is dependent |
| BeneficiaryFlag | Y = Yes, this is beneficiary |
| BondholderFlag | Y = Yes, this is bondholder |
🔹 Step-by-Step Process to Load Person Contact Using HDL
Prepare Contact , ContactName , and ContactRelationship metadata
Validate
PersonNumberand reference dataZip files in a single HDL upload package
Go to Tools → HCM Data Loader → Upload
Submit process and monitor load status
Verify contact records
🔹 Common Errors & Resolutions
| Issue | Resolution |
|---|---|
| Contact not created | Verify PersonNumber exists |
| No change after load | Check EffectiveStartDate and EffectiveEndDate |
| Invalid ContactType | Validate reference data setup |
| Missing Name | Ensure ContactName loaded correctly |
| Emergency/Dependent flag not updated | Verify flags (Y/N) |
🔹 Best Practices
Always test in test environment first
Validate PersonNumber before upload
Use unique SourceSystemId for each contact
Keep EffectiveStartDate/EndDate consistent
Use separate files for Contact, ContactName, ContactRelationship
🔹 Internal Linking (SEO Boost)
Link this post to:
📊 Oracle Fusion HCM Person Contact HDL – Infographic Guide
To make loading person contact details in Oracle HCM HDL easy to understand, we’ve created a visual infographic covering the entire process, key fields, and common errors.
![]() |
| Person Contact Infographic Guide |
🔹 1️⃣ Person Contact HDL Loading Workflow
The first panel shows a step-by-step workflow:
-
Worker Exists in Oracle HCM – Ensure the person record exists.
-
Prepare Contact.dat File – Define basic contact details.
-
Prepare ContactName.dat File – Load first, middle, last names, and titles.
-
Prepare ContactRelationship.dat File – Define relationships like Emergency, Dependent, Beneficiary, or Bondholder.
-
Upload via HDL – Submit files through HCM Data Loader.
-
Verify Contact in Employee Profile – Confirm the record is correctly reflected.
🔹 2️⃣ Key Fields in Person Contact HDL
The middle panel explains the essential fields you need to include in your files:
-
SourceSystemOwner – Source system owning the record.
-
SourceSystemId – Unique identifier from the source system.
-
PersonNumber – Oracle Fusion employee number.
-
EffectiveStartDate / EffectiveEndDate – Validity period of the contact record.
-
LegislationCode – Country or region code (e.g., US, GLOBAL).
-
ContactType – Defines Emergency, Dependent, Beneficiary, or Bondholder.
-
EmergencyContactFlag – Y/N for emergency contacts.
🔹 3️⃣ Common Errors & Resolutions
The third panel highlights common issues and how to fix them
❓ Frequently Asked Questions – Oracle Fusion HCM Person Contact HDL
1️⃣ What is Person Contact HDL in Oracle Fusion HCM?
Person Contact HDL allows bulk loading of employee contact information (emails, phone numbers, emergency contacts, dependents, and beneficiaries) using Contact, Contact Name , and Contact Relationship, Contact Address etc files.
2️⃣ Which objects are required to load person contact?
You must use the following HDL objects:
-
Contact – Basic contact record (start/end dates, person number)
-
ContactName – Name details (first, middle, last, title)
-
ContactRelationship – Relationships like Emergency, Dependent, Beneficiary, Bondholder
3️⃣ Can I load emergency contacts using HDL?
Yes, set ContactType = Emergency and EmergencyContactFlag = Y in ContactRelationship metadata. This will ensure the system identifies the record as an emergency contact.
4️⃣ Why is my person contact not reflecting after HDL load?
Common reasons include:
-
Invalid
PersonNumber -
Missing or incorrect
EffectiveStartDate/EffectiveEndDate -
Incorrect
SourceSystemIdorSourceSystemOwner -
Missing ContactName or ContactRelationship flags
5️⃣ Can I load multiple contacts for one employee?
Yes, you can include multiple records in Contact and ContactRelationship with unique SourceSystemId for each contact. Make sure dates do not overlap incorrectly.
6️⃣ Do I need to load WorkRelationship or WorkTerms for contact updates?
No, person contact HDL is independent of WorkRelationship or WorkTerms. As long as the PersonNumber exists, you can update contacts directly.
7️⃣ How to avoid errors while loading person contacts?
-
Always validate
PersonNumberexists -
Ensure
EffectiveStartDateandEffectiveEndDateare correct -
Use unique
SourceSystemIdper contact -
Load ContactName.dat before ContactRelationship.dat for relationships
8️⃣ Can I update an existing contact using HDL?
Yes, use MERGE in your dat file and ensure the correct SourceSystemId and EffectiveStartDate. If you want to terminate a contact, use EffectiveEndDate.
9️⃣ What is the difference between Contact, ContactName, and ContactRelationship?
-
Contact – Base record (start/end date, person)
-
ContactName – First, middle, last names, and title
-
ContactRelationship – Relationship type and flags (Emergency, Dependent, Beneficiary, Bondholder)
🔟 Where can I find sample dat files for person contact HDL?
You can refer to the sample templates provided in this blog, including Contact, ContactName, and ContactRelationship, which are ready to use and can be modified for your environment.
🔹 Conclusion
Loading person contact details using HDL ensures accurate, bulk updates in Oracle Fusion HCM.
By following this step-by-step template and validating reference data, you can avoid common errors and maintain data integrity.

No comments:
Post a Comment