As the global market becomes more competitive, manufacturing industries face relentless pressure caused by a growing tendency of greater varieties of products, shorter manufacturing cycles and more sophisticated customer requirements. Efficient and effective supplier selection and order allocation decisions are, therefore, important decisions for a manufacturer to ensure stable material flows in a highly competitive supply chain, in particular, when customers are willing to accept products with less desirable product attributes (e.g., color, delivery date) for economic reasons. This paper attempts to solve optimally the challenging problem of supplier selection and order allocation, taking into consideration the customer flexibility for a manufacturer producing multi-products to satisfy the customers' demands in a multi period planning horizon. A new mixed integer programming model is developed to describe the behavior of the supply chain. The objective is to maximize the manufacturer's total profit subject to various operating constraints of the supply chain. Due to the complexity and non-deterministic polynomial-time (NP)-hard nature of the problem, an improved genetic approach is proposed to solve the problem optimally. This approach differs from a canonical genetic algorithm in three aspects: a new selection method to reduce the chance of premature convergence and two problem-specific repair heuristics to guarantee feasibility of the solutions. The results of applying the proposed approach to solve a set of randomly generated test problems clearly demonstrate its excellent performance. When compared with applying the canonical genetic algorithm to locate optimal solutions, the average improvement in the solution quality amounts to as high as ten percent.