We consider a package assignment problem where multiple units of indivisible objects are allocated to individuals. The seller’s preferences allow for additional costs or cost savings on certain packages of objects: e.g., a manufacturer may incur cost savings if they obtain a range of products or services from a single supplier. The objective is to find the socially efficient allocation among buyers. We propose a sealed-bid auction with a novel cost function graph to express the seller’s preferences. The graph structure facilitates the use of linear programming to find competitive, package-linear, and anonymous prices. If agents act as price takers, these prices support a competitive equilibrium, and an equilibrium always exists under additional assumptions.