Although it looks like nothing more than a simple "Print Receipt" button on the UI, there's a lot happening behind the scenes: validations, conditions, data transformations, and different rendering scenarios, to make it flexible enough to work everywhere.