Symptom
Integration Center unable to format response payload for Background Check Integration. The error detail can be found in the event log:
- Unable to format response payload due to 'com.fasterxml.jackson.core.JsonParseException: Unexpected character (',' (code 44)): expected a valid value (JSON String, Number, Array, Object or token 'null', 'true' or 'false')
- Unable to format response payload due to 'com.fasterxml.jackson.core.JsonParseException: Unexpected character ('<' (code 60)): expected a valid value (JSON String, Number, Array, Object or token 'null', 'true' or 'false')
Environment
SAP SuccessFactors Recruiting Management
Cause
Misconfigurations with background check request fields or response fields in the integration.
(For SAP Support: The error message in the event log may be incomplete. To retrieve the complete log, check the server log.)
1. Unexpected character '<'
This error occurs when the vendor's response payload is in XML format instead of JSON format. In XML format, the data is enclosed with <> tags.
2. Unexpected character ','
This error will occur when "applicationId" value is blank in the response payload. (If the applicationId is blank, the first row will be "applicationId": ,)
Resolution
1. Unexpected character '<'
Please ensure that the vendor sends back the response in JSON format.
If the background check request (outbound payload) configured in the 'Configure Fields' tab of the integration does not follow the vendor's required data structure, the vendor may respond with a message in non-JSON format, which starts with the unexpected character '<'.
Please review the configuration in the 'Configure Fields' tab and the 'Response Fields' Tab.
2. Unexpected character ','
Please ensure that the applicationId field has been mapped in the 'Configure Fields' tab (background check request) and the 'Response Fields' tab.
If the applicationId hasn't been provided to the vendor, the vendor may send back the response payload with a blank applicationId.
Here is an example of the normal response payload:
{
"__metadata":{
"uri": "JobApplicationBackgroundCheckRequest",
"type":"SFOData.JobApplicationBackgroundCheckRequest"
},
"applicationId": 1234,
"vendorCode": "xxxxxxx",
"orderStatus":"OK",
"responseCode":"OK",
"responseDetail": "xxxxxxx ",
"vendorOrderNo":"xxxxxxx"
}
Configure fields tab
This is where the structure of the output file is defined. Please review the outbound payload structure with the background check vendor, make sure that destination field IDs are correct.
Make sure that you map "applicationId" to the applicationId from JobApplication entity.
Response Fields tab
The inbound part of the integration must be defined here. Please review the inbound payload structure with the background check vendor.
Make sure that you map "applicationId" to the applicationId from JobApplication entity.
Make sure that you map the existing requestId with the corresponding destination field, as this ensures that the vendor’s incoming message is upserted into the correct entity.
See Also
KB article 2768811 - How to Configure Background Check Integration (Integration Center) - Recruiting Management
Keywords
background check integration, Unable to format response payload, com.fasterxml.jackson.core.JsonParseException, application, JobApplicationBackgroundCheckRequest , KBA , LOD-SF-RCM-INT , Integration Center & Intelligent Services , LOD-SF-RCM-BCI , Background Check , Problem