Understanding the properties of many-body systems is one of the crucial questions for the development of quantum technologies. An ubiquitous problem is to certify that a given many-body quantum system satisfies an operational property: is this given system in an entangled state? Does it contain the solution to a classical optimisation problem? In both these cases, the certification problem is challenging due to the well-known fact that the number of parameters needed to describe a many-body system increases exponentially with the number of particles. In the talk, I will first review methods for polynomial optimisation based on hierarchies of semidefinite programming (SDP). Then, I will show two applications of these methods in a many-body context. First, I will present a technique for device-independent entanglement detection that involves only a polynomial number of correlation functions. I will apply this technique to several physically relevant situations allowing us to detect entangled states for systems up to few tens of qubits. Second, I will move to the computation of ground states of classical spin systems. I will show that by combining SDP methods with two other techniques, known as branch and bound and chordal extension, it is possible to design a scalable method that, with polynomial effort, provides upper and lower bounds to the ground-state energy, so that the error in the approximation is under control. I will also present a benchmark on a D-Wave 2000Q device, showing that the method can be used to verify the solutions of the quantum annealer, as well as detect situations in which the quantum solution differs from the actual ground-state configuration.