{"$schema":"https://json-schema.org/draft/2020-12/schema","title":"Break-even analysis - Analyse du seuil de rentabilité / Break-evenanalyse (BE)","description":"Break-even analysis of a Belgian SME for a product, a service or the whole activity: fixed costs, variable cost and price per unit, and the results (contribution margin, break-even volume and revenue, safety margin) as the user states them, with an optional sensitivity table. Nothing is computed; no method sentence is printed unless the user types it.","type":"object","additionalProperties":false,"required":["entity","scope","subject","period","currency","amounts_basis","inputs","results","preparer"],"properties":{"entity":{"type":"object","description":"The enterprise the analysis is for.","additionalProperties":false,"properties":{"name":{"type":"string","description":"Name of the enterprise."},"enterprise_number":{"type":"string","description":"Enterprise number.","pattern":"^[01][0-9]{3}\\.[0-9]{3}\\.[0-9]{3}$"}},"required":["name"]},"scope":{"type":"string","description":"What the analysis covers.","enum":["product","service","activity"]},"subject":{"type":"object","description":"What is analysed.","additionalProperties":false,"properties":{"name":{"type":"string","description":"Name of the product, service or activity."}},"required":["name"]},"period":{"type":"string","description":"Period covered, as the user writes it."},"currency":{"type":"string","description":"Currency of the amounts, as the user writes it (for example EUR)."},"amounts_basis":{"type":"string","description":"Stated basis of the amounts; there is no default.","enum":["excl_vat","incl_vat"]},"inputs":{"type":"object","description":"The inputs of the analysis.","additionalProperties":false,"properties":{"fixed_costs":{"type":"number","description":"Fixed costs of the period."},"variable_cost_per_unit":{"type":"number","description":"Variable cost per unit."},"price_per_unit":{"type":"number","description":"Price per unit."},"current_volume":{"type":"number","description":"Current volume, in units."},"unit_label":{"type":"string","description":"Label of the unit."}},"required":["fixed_costs","variable_cost_per_unit","price_per_unit"]},"results":{"type":"object","description":"The results, as the user states them; nothing is computed.","additionalProperties":false,"properties":{"contribution_margin_per_unit":{"type":"number","description":"Contribution margin per unit, as the user states it."},"contribution_margin_pct":{"type":"number","description":"Contribution margin in percent, as the user states it; printed with two decimals."},"break_even_units":{"type":"number","description":"Break-even volume in units, as the user states it."},"break_even_revenue":{"type":"number","description":"Break-even revenue, as the user states it."},"safety_margin_pct":{"type":"number","description":"Safety margin in percent, as the user states it; printed with two decimals."}},"required":["contribution_margin_per_unit","contribution_margin_pct","break_even_units","break_even_revenue"]},"sensitivity":{"type":"array","description":"Sensitivity rows, typed by the user.","items":{"type":"object","additionalProperties":false,"properties":{"units":{"type":"number","description":"Units of the row."},"revenue":{"type":"number","description":"Revenue of the row."},"variable_cost":{"type":"number","description":"Variable costs of the row."},"contribution":{"type":"number","description":"Contribution of the row."},"profit":{"type":"number","description":"Profit or loss of the row."}},"required":["units","revenue","variable_cost","contribution","profit"]}},"commentary":{"type":"string","description":"Commentary."},"method_statement":{"type":"string","description":"Statement of the method, typed by the user; never printed when absent."},"preparer":{"type":"object","description":"Who prepared the analysis.","additionalProperties":false,"properties":{"name":{"type":"string","description":"Name of the preparer."},"title":{"type":"string","description":"Title of the preparer."},"date":{"type":"string","description":"Date of preparation.","format":"date"}},"required":["name","title"]}}}