Interim payments are what a client pays on a staged schedule throughout the lifetime of a development project
How much and when would depend on the scope of the project.
Medium sized project might
50% up front, 30% on final approval of production quality sample, 20% on final delivery.
A large project might be time based. 40%/50% on order, with monthly interims and the final instalment held as a retainer for an agreed period after completion.
One project we do on a regular basis is £x,000 is paid for the software and setting up, with £x,000 due on delivery to site and extras beyond that day are charged at £400
per day per engineer. That keeps the clients on their toes
Interims are good for developer, because it does mean you are not funding somebody else's project.
Getting a payment up front and interim payments keeps a client interested in the project and a little more willing to provide you with any required material. Otherwise they tend to drag things out.
One of my colleagues declares this to be "The prostitute principle" ...
They are happy to pay
anything beforehand, but afterwards, their interest and enthusiasm has subsided.