I'm going to assume that "creates an interaction in our Salesforce CRM" means that you're creating an activity/task record. If that's the case, then reusing the activity record isn't really a desired behavior; in fact, the Salesforce client itself doesn't reuse the activity record in the event of a transfer. The Activity record is written from the Agent's context, allowing them to take their own notes and logging statistics about their portion of the call. This approach allows for a conversation to be threaded and "watched" as it traverses your organization, as there may be multiple activity records that all use the same conversation ID to tie them together.
Typically what we see are organizations reporting on activity records by their relationship (to a case, contact, etc.). This allows them to see how long they're spending conversing with a customer in relation to the case, with unique notes from each person who discussed the case with the customer.
Assuming your non-salesforce agent is creating an activity, it might be useful for them to also create a case or some other object, and relate the activity to that object. The object ID of that new object then be used to set participant data to help drive a screen pop for the Salesforce agent when they receive the transfer (if using object ID, I'd recommend using the SF_UrlPop attribute, and set the value to the Salesforce object ID; this will direct the receiving straight to the case/contact/other object that was created. See:
https://help.mypurecloud.com/articles/screen-pop-in-genesys-cloud-for-salesforce under "screenpop configuration/inbound call/salesforce page"). Taking this approach would reuse the case as the binding object, but create unique activity records for each agent that engages in conversation with the customer.
------------------------------
Richard Schott
Genesys - Employees
------------------------------