Is there a way of eliminating human smuggling? We set up a model to simultaneously determine the provision of human smuggling services and the demand from would-be migrants. A visa-selling policy may be successful at eliminating human smugglers by eroding their profits but it necessarily increases immigration. In contrast, re-enforced repression decreases migration but uses the help of cartelized smugglers. To overcome this trade-off we study how legalisation and repression can be combined to eliminate human smuggling while controlling migration flows. This policy mix also has the advantage that the funds raised by visa sales can be used to finance additional investments in border and internal controls (employer sanctions and deportations). Simulations of the policy implications highlight the complementarities between repression and legalisation and call into question the current policies.