BI Publisher offer letter report in recruiting not showing custom fields after template update, impacting onboarding

We updated our BI Publisher RTF template for offer letters last week to include custom fields for signing bonus and relocation allowance. The template validates successfully in the BI Publisher interface, but when candidates receive their offer letters, these custom fields show as blank even though the data exists in the recruiting module.

I’ve checked the data model XML and confirmed the fields are present there. The XPATH expressions in the RTF template look correct to me:

<?CustomSigningBonus?>
<?CustomRelocationAmount?>

But the fields just don’t populate. This is blocking our onboarding process for 12 candidates who accepted offers this week. Has anyone encountered similar issues with BI Publisher custom field mapping in recruiting reports?

I’ve seen this before. The issue is usually that the XPATH syntax you’re using doesn’t match the actual XML structure from the data model. Try opening the data model in the BI Publisher report editor and look at the sample XML output. Your custom fields might be nested under a different parent node than you expect. Check if they’re under a separate custom fields group rather than at the root level.

I can help you resolve this systematically. Based on your description, there are three areas to address:

BI Publisher RTF Template Mapping: First, the XPATH syntax you’re using is incomplete for custom fields in Oracle HCM Cloud recruiting. Custom fields require the full hierarchical path from the data model. Open your data model in edit mode and click ‘View’ > ‘Sample XML’ to see the actual structure. You’ll likely find your fields nested under something like:

<CUSTOM_FIELDS>
  <SIGNING_BONUS>50000</SIGNING_BONUS>
  <RELOCATION_AMOUNT>10000</RELOCATION_AMOUNT>
</CUSTOM_FIELDS>

Your RTF template should then use: <?CUSTOM_FIELDS/SIGNING_BONUS?> and `<?CUSTOM_FIELDS/RELOCATION_AMOUNT?> Custom Field XPATH Expressions: The root cause is that 23C changed how custom field paths are structured in the recruiting data model. After adding custom fields to an existing report, you must refresh the data model definition. Navigate to: BI Publisher > Browse Catalog > Your Report > Edit > Data Model tab > Click ‘Refresh Data Model’. This regenerates the XML schema to include your new fields. Then examine the updated XML structure and modify your XPATH expressions to match the exact hierarchy.

Data Model XML Validation: After refreshing the data model, validate it by running a test execution with sample data. Go to the Data tab and click ‘View’ to generate sample XML output. Verify that your custom fields appear with actual values, not empty tags. If they’re still missing, check these configurations:

  1. Navigate to Setup and Maintenance > Manage Recruiting Custom Fields
  2. Find your SIGNING_BONUS and RELOCATION_AMOUNT fields
  3. Ensure ‘Available for Reporting’ is enabled
  4. Verify the fields are associated with the Offer business object
  5. Check that the fields have values in at least one test offer record

Once the data model shows correct values in sample XML, update your RTF template with the proper XPATH paths. For currency fields, add formatting: <?format-number(CUSTOM_FIELDS/SIGNING_BONUS,'$#,##0.00')?>. Upload the revised template, validate it, and test with a real offer letter. The custom fields should now populate correctly. This approach has resolved similar issues in multiple 23C implementations I’ve worked on.

We had the exact same problem after our 23C upgrade. The issue was that custom fields added after the initial data model creation don’t automatically get included in existing reports. You need to regenerate the data model XML definition. Go to the report in BI Publisher, edit the data model, and use the ‘Refresh’ option to pull in the new field definitions. Then update your RTF template with the correct XPATH from the refreshed XML structure. Don’t forget to revalidate the template after making changes.

The XPATH syntax looks too simple for custom fields. In my experience with 23C, custom recruiting fields need the full path including the namespace. Try using the data model viewer to get the exact path. Usually it’s something like <?//CUSTOM_FIELD_GROUP/SIGNING_BONUS?> instead of just the field name. The template validator doesn’t always catch incorrect paths, which is frustrating.

Also verify that your custom fields are actually enabled for the offer letter business object in recruiting. Go to Manage Recruiting Custom Fields and confirm that both fields have ‘Available for Reporting’ checked. If that flag isn’t set, the fields won’t appear in the data model XML even if they contain data. I’ve caught this oversight multiple times during implementations.

Check your RTF template’s field formatting too. I’ve seen cases where the XPATH is correct but the field appears blank because of data type mismatches. If your custom fields are numeric or date types in HCM, you might need to add formatting codes in the template. For currency fields like signing bonus, you’d want something like <?format-number(SIGNING_BONUS,'$#,##0.00')?> to display properly. Blank values often indicate formatting issues rather than missing data.