We analyse the optimal Initial Public Offering (IPO) mechanism in a multidimensional adverse selection setting where institutional investors have private information about the market valuation of the shares, the intermediary has private information about the demand, and the institutional investors and intermediary collude. Theorem 1 states that uniform pricing is optimal (all agents pay the same price) and characterizes the IPO price in terms of conditional expectations. Theorem 2 states that the optimal mechanism can be implemented by a non-linear price schedule decreasing in the quantity allocated to retail investors. This is similar to IPO procedures used in the U.K. and France. Relying on French IPO data we perform a GMM structural estimation and test of the model. The price schedule is estimated and the conditions characterizing the optimal mechanism are not rejected.