[SalesForce] Error: Accounts: Cannot specify any additional fields when marrying or separating a Person-Account

I'm using an ETL tool Talend for data push to salesforce. When I'm upserting the accounts getting the error below In the mapping I specified the business accounts recordtypeId but still is throwing the same error.

1.What is the cause for the error?

2.Do I need to add anything else other than the recordtypeId to differentiate the Business Accounts and person Accounts?

Error:

Exception in component tSalesforceOutput_1
java.lang.Exception: Cannot specify any additional fields when marrying or separating a Person-Account

at org.talend.salesforce.SforceManagementImpl.upsert(SforceManagementImpl.java:481)
at salesforceetl.sync_accounts_0_1.sync_accounts.tMysqlInput_1Process(sync_accounts.java:2841)
at salesforceetl.sync_accounts_0_1.sync_accounts$2.run(sync_accounts.java:19166)
ERROR: export_salesforce_client -> Accounts: Cannot specify any additional fields when marrying or separating a Person-Account
-- null records rejected. Please check error log file workspace/log/sync_salesforce.sync_accounts.loaderrors.log

Best Answer

When changing record types from business to person you cannot specify any other field values.

I believe what is happening is that you are trying to populate the record type of a BUSINESS account with the value of the Person account record type along with the other fields and this is not allowed.

Or alternately you are trying to change a person account of one record type ID to another person account record type ID...

Basically the change of the recordType ID cannot include any other field values