In this paper we investigate a problem associated with operating a robotic mobile fulfilment system (RMFS). This is the problem of allocating orders and mobile storage racks to pickers.We present a two-stage formulation of the problem. In our two-stage approach we, in the first-stage, deal with the orders which must be definitely fulfilled (picked), where the racks chosen to fulfil these first-stage orders are chosen so as to (collectively) contain sufficient product to satisfy all orders. In the second-stage we restrict attention to those racks chosen in the first-stage solution in terms of allocating second-stage orders.We present three different strategies for first-stage order selection; one of these strategies minimises the requirement to make decisions as to the rack sequence (i.e. the sequence in which racks are presented to each picker).We present a heuristic procedure to reduce the number of racks that need to be considered and too present a heuristic for order and rack allocation based on partial integer optimisation that makes direct use of our two-stage formulation.Extensive computational results are presented for test problems that are made publicly available.