The order batching problem is a part of the picking process of items in a warehouse. A set of items conform an order and a set of orders conform a batch. The problem consist of grouping the orders received in the warehouse in different batches. Each batch have to be collected by a single picker without exceed a capacity limit. The objective is to minimize the total time needed to collect all the items. In this paper we propose a General Variable Neighborhood Search algorithm to tackle the problem. Our approach outperforms other previous methods in the state of the art.