If a tax refund is expected but has not been repaid it may well be held back by the system because it is on HMRC's inhibited automatic repayments list.

Automatic repayment can be inhibited for a number of reasons, for instance if the taxpayer is insolvent, or has already agreed a budget payment plan, or has other outstanding tax debts.

There could be a security issue, where the taxpayers address is queried, or it has changed and the last tax return was submitted electronically. Alternatively, if repayment results in a payable order of more than £150,000 or it is BACS repayment and is over £90,000,000 it will be stopped automatically. A repayment request will also be held up if it is included within a return e-filed by a 'filing only agent'.

Refunds will also be held back if the charity code does not relate to any charity currently participating in the 'Charitable Giving' scheme. Or, if  combination of inhibiting factors are present,  or simply the taxpayer did not tick the box to request automatic repayment.

Bizarrely, you will also face delays if you are filing in Welsh as the repayment system has to then make payment by CHAPS or by way of a local office payable order.

Further reading: HMRC automatic inhibited repayments.