I am facing an issue while trying to disable an account from the Manage Accounts section in SailPoint IdentityIQ using a JDBC-based Oracle application.
Error:
Not a valid parameter: Account with ID <ID> does not exist
Context:
Application Type: JDBC (Oracle)
Operation: Disable Account via Manage Accounts
Account is successfully created in Oracle (e.g., A6719)
Aggregation and Identity Refresh have been executed
Account is visible in SailPoint
Observed Behavior:
While disabling the account, the above error is thrown
On checking the Link object, it is created as:
<Link displayName="A6719" identity="A6719">
Instead of linking to the actual identity (e.g., Betty Young), the identity field is set to the account name itself
Before trying to disable the account, we first need to fix the correlation issue.
Right now, your accounts are not properly correlated to the identity, which is why the Link is showing identity = account name. Because of this, IdentityIQ cannot find the correct account during disable, leading to the error “Account with ID does not exist”.
Since you are already using employee_number for correlation, it’s better to configure this directly in correlation config instead of using a rule.
Steps to fix:
Fix correlation using:
Application attribute: EMPLOYEE_NUMBER
Identity attribute: employee_number
Run full aggregation and identity refresh again
Run Prune Identity task to remove old/unlinked accounts
Make sure the Link is correctly mapped to the actual identity (e.g., Betty Young)
After correlation is correct, the disable operation should work.
Also, if you want to control disable behavior (like status update in DB), check if you have a BuildMap rule. If not, you may need to implement one based on how your JDBC application handles disable.
Hi @Viraj Attribute based configuration works only when your identity attribute and account attribute have the exact same value. In your case, Account Attribute is appended with a Q so it is not going to work.
If you have any other attribute in account schema, which can be mapped with identity attribute, you can add these to your correlation config as well. If it doesn’t work, then you need to write a correlation rule, where you can take a substring after Q and return the map to correlate using the employee number.
Please give it a try and let us know if you need any further help.
Note: Found a fix?Help the community by marking the comment as solution. Feel free to react(,, etc.)with an emoji to show your appreciation or message me directly if your problem requires a deeper dive.
Account attribute (USERNAME) has a prefix/suffix, not matching identity attribute, because of this mismatch, SailPoint is linking incorrectly (identity = account_name)
During disable, it uses wrong nativeIdentity hence "Account with ID does not exist"
Checking Areas
Validate which attribute is actually used for correlation
If USERNAME = Q12345 and identity = 12345, mismatch will happen
Fix correlation logic:
Either map correct attribute directly
Or normalize value in rule (remove prefix/suffix before matching)
Clean existing incorrect links
Delete links
Run aggregation
Run identity refresh
Verify nativeIdentity is consistent with account ID used in provisioning