Chaincode in Hyperledger Fabric comes with an API
InvokeChaincode() to allow a chaincode invoking a function in another chaincode. Here is the description about this API in the documentation. (link)
For chaincode to chaincode interactions using the invokeChaincode() API, both chaincodes must be installed on the same peer.
For interactions that only require the called chaincode’s world state to be queried, the invocation can be in a different channel to the caller’s chaincode.