要约的撤销是指,要约人在要约发生法律效力之后而受要约人承诺之前,欲使该要约失去法律效力的意思表示。要约的撤销与要约的撤回不同在于:要约的撤回发生在要约生效之前,而要约的撤销发生在要约生效之后;要约的撤回是使一个未发生法律效力的要约不发生法律效力,要约的撤销是使一个已经发生法律效力的要约失去法律效力;要约撤回的通知只要在要约到达之前或与要约同时到达就发生效力,而要约撤销的通知在受要约人发出承诺通知之前到达受要约人,不一定发生效力。在法律规定的特别情形下,要约是不得撤销的。
在要约撤销的问题上,英美法与大陆法的理论迥异。按照英美合同法“对价”的理论,要约作为诺言在被承诺以前是无对价的,对发出要约的人没有拘束力,因而在要约被承诺以前是可以撤销的,即使是附承诺期限的要约也是如此。大陆法国家则一般认为,要约一旦生效就不得撤销。如德国民法典第145条规定,向他方要约订立契约者,因要约而受拘束,但预先声明不受拘束者不在此限。德国民法典规定了要约的撤回,但没有规定要约人有权撤销要约。我国台湾的规定与德国一致。日本规定了有限制的撤销:有承诺期限的要约不得撤销,没有承诺期限的向隔地人发出的要约,在合理的期限内不得撤销。
英美合同法虽然认为要约在承诺以前可以撤销,但也有例外。一种情况是,如果要约是限期承诺的,受要约人在一定期限内向要约人提供了对价,就获得了承诺或拒绝的选择权,因而要约人在一定期限内无权撤销要约。实际的情况是,由于要约人在限期承诺的要约被承诺前可以撤销要约,受要约人往往支付一个名义上的对价,如一美元,就获得了承诺或拒绝的选择权。第二种例外的情况是,如果要约人可以合理地预见到,其发出的限期承诺的要约将使受要约人在承诺之前发生依赖,并且这种依赖后来在事实上发生了,该要约就是不可撤销的。美国《合同法重述》第87条为避免不公正而对要约人的要约进行了限定:“如果要约人应当合理地预见到其要约会使受要约人在承诺前采取具有某种实质性的行为或不行为,并且,该要约的确导致了这样的行为或不行为,该要约便同选择权合同一样,在为避免不公正而必需的范围内具有拘束力”。第三种例外的情形是,当受要约人以行为表示承诺时,要约人对其要约不可撤销。因此。当要约人发出要约后,受要约人的履行一旦开始,便不允许要约人撤销要约。第四种例外的情形是,美国《统一商法典》对商人成立买卖合同的要约是否可以撤销的规定,该法典第2—205条规定:“商人购买或出售货物,以经签字的书面文件作成的要约,通过其条件保证其有效,这样的要约即使缺乏对价,在规定的期恨内,或虽未规定期限,但在一段合理的期限内,是不可撤销的,而不可撤销的期限不超过3个月。”
由于有许多例外,使得美国法在要约的撤销问题上已很接近大陆法。但是,按照大陆法的观点看来,由于在承诺之前要约人可以撤销限期承诺的要约,对受要约人欠公平。这一做法导致了要约人的随意性和不负责任,并给受要约人带来可能的损害。不应鼓励这一做法。联合国国际贸易法委员会1980年通过的《联合国国际货物销售合同公约》在这个问题上调和了两大法系的不同做法。该公约第16条规定,在未订立合同之前,发价得予撤销。如果撤销通知于被发价人发出接受通知之前送达被发价人。但在两种情况下发价不得撤销:1.发价写明接受发价的期限或以其它方式表示发价是不可撤销的;2.被发价人有理由信赖该项发价是不可撤销的,而且被发价人已本着对该项发价的信赖行事。可见在是否可以撤销的问题上,基本上采纳了英美法系的做法,但是对撤销的条件作了较为严格的限制。这种做法也是两大法系相互妥协的产物。《国际商事通则》第2.4条作了与公约同样的规定。合同法本条的规定采纳了公约与通则的做法。