Hello Christoph,
data transfer to different HR core systems is not supported out of the box. In your scenario I recommend to define 3 activity types of the data transfer activity category ("data transfer EU", "data transfer NA" and "data transfer SA") as it is more flexible than directly linking to any attribute of the requisition. So setting up these activity types would be the first step.
In the second step you have to change the method TRANSFER_DATA of class CL_HRRCF_ACT_DATA_TRANS_RECORD by either adding a modification or an overwrite enhancement. This is the method which actually contains the RFC call to the HR core system. You read the activity type of the currently processed activity (call method GET_RECORD or simply use the existing local variable LS_RECORD. Specify the matching RFC connection for each activity type and adjust the function module call(s). If you are using the same name for the RFC connections on development, test and production systems a CASE statement will do. If you use different names I would personally add a custom table with client, activity type, rfc connection and delivery class A so you can easily define the correct RFC name on every layer of you system landscape.
If you have any doubts in your recruiters picking the correct data transfer activity you can support them by providing proper process templates. If this is still not enough you could have separate recruiter authorization roles für EU, NA and SA which are restricted to only their activity type using the authorization object P_RCF_ACT.
Best Regards
Roman
PS: if you are using the eRec system also for internal hiring you have to redo the changes in the employee id for the internal candidate you made in the ALE outbound BAdI. This you could do in the same method.