Negotiations for internet-based auctions or other bidding processes use a plurality of computer-based agent means 21,23,24. An originating agent 21 first defines the rules of the session by retrieving from a store 22 a previously-generated definition of the interactions required in a negotiation, and the purpose of each interaction, and a program for running a process that meets this definition. Having generated the rules under which the negotiations will be undertaken, the originating agent 21 transmits these details to the repository 22 (step 30) where they can be accessed by other users 23. These users follow the rules and the matrix of the session, and each generates a new matrix which is evaluated by the initiator 21 which then generates a selection from alternative matrices offered by the respondents 23. This process continues through a sequence of one or more negotiation phases with natural or artificial terminating conditions, when either a predetermined pattern of messages has been executed (or some other condition of the negotiation rule is achieved) or when an agreement has been made. The negotiation process is defined in terms of a predetermined plurality of phases during which particular parts of the negotiation are completed, responses to requests in an earlier phase in the process constrain the responses generated in subsequent phases, and the respondents can constrain their responses to one phase according to the known rules of the phases still to come.