I' ve done this before and the only real issue I get is with DNS. If you have DNS forwarders to their DNS servers for things like server names and such, it will return the original IP address, which is on your subnet, not the translated subnet. I' ve had both sides setup a secondary DNS zone, company1.local, company2.local, on their side, so it has a different FQDN from their local naming scheme. Then manually populate the A records for important resources.
Example:
Server1: 192.168.101.5
Translatested to 192.168.201.5
Original FQDN: server1.company.net
Translated FQDN: server1.company1.local
This way you at Company 2 can use the FQDN of the translated item and if they switch the device, they just update their DNS. Also makes it so if you are going to map things like drive letters and such the IP addresses aren' t as visible to the end user. Users always questions why they have to use the IP address and not a name like everything else.