bilateral contract

noun

1.
a contract involving mutual promises (each party is both promisor and promisee)