On a 0 hours contract. I may work across a 5 hour period but only be paid for 4 hours as I'm traveling for the other hour is that right? Something I was reading on gov website suggests I should be paid?
E.g. I work 9:30-10:30, 11-1, then 1:30-2:30. Travelling takes me 20-25 mins on each of the journeys. I don't have a break as I'm often running over on each visit.
No, your employer does not have to pay you for travelling time but your pay rate for the total hours including your travelling time must be above the national minimum wage. So, in your example, your working time for national minimum wage purposes is 5 hours as you haven't taken any breaks (breaks don't count as working time for the national minimum wage). You must be paid at least £37.50 for those 5 hours (assuming you are at least 25 years old). So, if you are only paid for 4 of the 5 hours, your employer must pay you at least £9.375 per hour (i.e. £37.50 divided by 4). If your pay rate is less than £9.375 per hour your employer is paying you less than the national minimum wage and is breaking the law.
£9 per hour for 4 hours should be £36. But yes, if it is 5 hours from the start of your first appointment to the end of your last and you don't have any breaks or go home in that time they are under paying you a little.
The 20p per mile doesn't count towards your wages if you are using your own car and own petrol.
They don't have to pay for the journey between your home and first appointment or last appointment.
£36 per day wages excluding milage costs spread over 5 hours is £7.20 per hour. If you are age 25 or over then they should be paying you an extra £1.50 per day but the minimum wage for age 21-24 is only £7.05 in which case it's legal.