Routing of wire harnesses in complex machinery is a complicated problem. In this paper, we present an approach for computing all non-homotopic paths characteristic of all the homotopy classes associated with a pair of source–destination points embedded on the surface of the product. We introduce the notion of routing graphs, which are generated from specific non-trivial loops in the first homology group associated with the surface of the product. The routing graph, which is constructed only once, encodes the homotopy of the routing environment and is, therefore, used to find all the non-homotopic paths between multiple source–destination pairs. Based on the path embedding requirements, we classify the routing process into (1) On-Surface Routing, when the paths are constrained to the surface of the product, and (2) In-Air Routing, when the paths are allowed to venture into the product ambiance space. In the former case, the routing graph is defined by both the handle and tunnel loops in the first homology group, whereas in the latter case, it is defined by only the handle loops. We propose a linking number-based strategy for computing the handle and tunnel loops for a given closed surface. The methods are extended for routing in assemblies using the so-called shell structures associated with them. The results obtained demonstrate the efficacy of the proposed approach. The results show that the computation of the routing graph is very efficient, and the homotopy classes can be generated in very little time using the proposed approach.