There is no legally required time to pay. Whatever is the agreement between the contractor and the client is legal--you could even request payment (or at least part payment) up front. You have to get your client's agreement in advance to the payment terms; that is, before you do the work for which you are billing. You should get their agreement in writing, to make it easily proven at need. Bear in mind they do not have to agree--the could decide that rather than accept your terms, they will hire a different handyman.