Use the basic formula's:
$x_t = x_0+v_x*t+\frac{1}{2}*a_x*t^2$
$y_t = y_0+v_y*t+\frac{1}{2}*a_y*t^2$
This way you can calculate all your $x$ and $y$ positions as long as your time steps are small enough so $v$ and $a$ don't change too much during each time step.
Edit:
Since the magnetic heading ($\theta$) is known from the sensor, the values for $v_x$ and $v_y$ can be calculated:
$v_x = v_1*cos(\theta) +v_2*sin(\theta)$
$v_y = v_2*cos(\theta) -v_1*sin(\theta)$
In which $v_1$ is x-direction of your robot frame, $v_2$ is y-direction of your robot frame. $v_x$ is x-direction in world frame, $v_y$ is y-direction in world frame.
Edit 2:
If your sensor outputs angular velocity instead of magnetic heading, you can calculate the heading like it is an angular position, so in the same way you would calculate position:
$\theta_t = \theta_0 + \dot{\theta}*t+\frac{1}{2}*\ddot{\theta}*t^2$
Here $\theta_0$ is your heading at the start (this should be known). $\dot{\theta}$ is your angular velocity and $\ddot{\theta}$ is your angular acceleration.