合同可以既约定违约金又约定定金,但是对方违约时,只能选择适用违约金条款或者定金条款。根据2021年实施的《民法典》第五百八十五条第一款规定,当事人可以约定一方违约时应当根据违约情况向对方支付一定数额的违约金,也可以约定因违约产生的损失赔偿额的计算方法。第五百八十六条第一款规定,当事人可以约定一方向对方给付定金作为债权的担保。定金合同自实际交付定金时成立。第五百八十八条规定,当事人既约定违约金,又约定定金的,一方违约时,对方可以选择适用违约金或者定金条款。定金不足以弥补一方违约造成的损失的,对方可以请求赔偿超过定金数额的损失。 法律依据《民法典》第五百八十五条第一款当事人可以约定一方违约时应当根据违约情况向对方支付一定数额的违约金,也可以约定因违约产生的损失赔偿额的计算方法。第五百八十六条第一款当事人可以约定一方向对方给付定金作为债权的担保。定金合同自实际交付定金时成立。第五百八十八条当事人既约定违约金,又约定定金的,一方违约时,对方可以选择适用违约金或者定金条款。定金不足以弥补一方违约造成的损失的,对方可以请求赔偿超过定金数额的损失。