{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","required":["company","report","inflows","outflows","total_inflows","total_outflows","net_cash_flow"],"properties":{"company":{"type":"object","required":["name"],"properties":{"name":{"type":"string"},"address":{"type":"string"},"phone":{"type":"string"},"email":{"type":"string"},"logo_base64":{"type":"string"}}},"report":{"type":"object","required":["date","period_start","period_end"],"properties":{"title":{"type":"string"},"date":{"type":"string"},"period_start":{"type":"string"},"period_end":{"type":"string"},"prepared_by":{"type":"string"}}},"inflows":{"type":"array","items":{"type":"object","required":["description","amount"],"properties":{"description":{"type":"string"},"amount":{"type":"string"}}}},"outflows":{"type":"array","items":{"type":"object","required":["description","amount"],"properties":{"description":{"type":"string"},"amount":{"type":"string"}}}},"total_inflows":{"type":"string"},"total_outflows":{"type":"string"},"net_cash_flow":{"type":"string"},"opening_balance":{"type":"string"},"closing_balance":{"type":"string"},"notes":{"type":"string"}}}