违约金法律规定上限并非固定的20%或30%。根据《民法典》第五百八十五条规定,当事人可以约定一方违约时应当根据违约情况向对方支付一定数额的违约金,也可以约定因违约产生的损失赔偿额的计算方法。约定的违约金低于造成的损失的,人民法院或者仲裁机构可以根据当事人的请求予以增加;约定的违约金过分高于造成的损失的,人民法院或者仲裁机构可以根据当事人的请求予以适当减少。司法实践中,判断违约金是否过高,需综合考量合同履行情况、当事人过错程度以及预期利益等因素,以实际损失为基础,兼顾合同的履行情况、当事人的过错程度以及预期利益等综合因素,根据公平原则和诚实信用原则予以衡量,并作出裁决。所以不能简单认定上限就是20%或30% 。
以上是律师的法律建议,如有疑问,欢迎进一步咨询。