The client is a principal in an agreement to exchange professional services for payment — the client being the one paying. In the case of software production, the other principal is the architect.