My Tax Code is D0 - why is that?

When you joined your new employing board, if a P45 notification of your tax code was not received in advance of the payroll deadline, a temporary tax code of 0T would be applied.  

When HMRC then receives your payroll record electronically from your new employing board with a tax code of 0T they know that this code is temporary – this may lead them to carry out an action to rectify that and amend your temporary code to a permanent code.   

When you join a new health board, it is possible that you are still on the employment records, as a live employee, with your previous Board.  That is due to the timing of processing joiners and leavers.

If HMRC see that you appear to have 2 separate jobs with 2 separate employers, and have a temporary tax code, they may allocate the code of D0 to one of the jobs.  As your role with the previous Board is deemed to be your primary role, they will apply a D0 code to your perceived “second” job.


Dr Johnson joins NES on 3rd August to begin his GPSTR3 Rotation.  He worked for NHS Other Board and left that Board on 2nd August.

NES processes Dr Johnson as a new start on 3rd August and pays Dr Johnson a full month’s salary less 2 days on the August pay day.  NES does not have Dr Johnson’s P45 so uses a temporary tax code to ensure Dr John can be processed as a joiner and paid in August.  

NHS Previous Board also processes Dr Johnson’s salary in August as he needs to be paid for 2 days of work in that month.  

NES and NHS Other Board both have Dr Johnson on their payroll records as a current employee.  Both Boards submit electronic PAYE records to HMRC via RTI (Real Time Interface) for Dr Johnson.

HMRC receive these records and identify that Dr Johnson has 2 jobs as well as a temporary tax code.  Their action is to amend the temporary tax code to a permanent one based on the information they have.  

The result is that HMRC allocate Dr Johnson with a D0 tax code due to being on the employment registers of 2 separate employers.