Why a bank may refuse an account payee only check?

A bank may refuse to accept an account payee cheque if:

a. The person trying to cash the cheque doe not have an account with the bank

b. If the name on the cheque does not match the person trying to cash it

c. If the cheque is expired (More than 90 days in the past)

d. If the signature on the cheque does not match the signature of the person who issued the cheque