{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","required":["company","client","quote"],"properties":{"company":{"type":"object","required":["name"],"properties":{"name":{"type":"string"},"address":{"type":"string"},"phone":{"type":"string"},"email":{"type":"string"},"vat":{"type":"string"},"logo_base64":{"type":"string"}}},"client":{"type":"object","required":["name"],"properties":{"name":{"type":"string"},"address":{"type":"string"}}},"quote":{"type":"object","required":["number","date","valid_until","lines","subtotal","tax_rate","tax_amount","total"],"properties":{"number":{"type":"string"},"date":{"type":"string"},"valid_until":{"type":"string"},"reference":{"type":"string"},"lines":{"type":"array","items":{"type":"object","required":["description","quantity","unit_price","amount"],"properties":{"description":{"type":"string"},"quantity":{"type":"string"},"unit_price":{"type":"string"},"amount":{"type":"string"}}}},"subtotal":{"type":"string"},"tax_rate":{"type":"string"},"tax_amount":{"type":"string"},"total":{"type":"string"},"notes":{"type":"string"}}}}}