Skip to main content Skip to footer

User experiences

Online Booking and Invoicing System

During a dynamic two-day hackathon, our team embarked on an exciting journey to develop an innovative solution that seamlessly integrates online booking and invoicing for personal training services. 

Invoice

Online Booking and Invoicing System

Word template generated invoice. 

User experiences

Online Booking and Invoicing System

QR-Rechnung.net generated document.

Hackathon

Building an Online Booking and Invoicing System for Personal Training Services

Introduction

During a dynamic two-day hackathon, our team embarked on an exciting journey to develop an innovative solution that seamlessly integrates online booking and invoicing for personal training services. This project aimed to enhance the user experience for both B2B and B2C customers, personal trainers, and back-office employees. Here's a detailed look at what we built.

Day 1: Ideation and Planning

Our hackathon kicked off with a brainstorming session where we identified the key pain points in the current personal training booking and invoicing processes. We focused on creating a system that would allow customers to book services online, generate Swiss eBilling compliant QR code invoices, and streamline payment reconciliation.

Use case scenarios

  • As a B2B and B2C customer, I want to book personal training services online, so that I can conveniently schedule sessions.
  • As a Personal Trainer, I want to generate based on the booking a draft invoice, so that it can be process and send automatically to the customer.
  • As a Back Office employee, I want to reconcile paid invoices from my bank account automatically, so that I have transparency of issued and paid services.

Key Features

Online Booking Platform 
  • User Journey: B2B and B2C customers can easily book personal training services online, ensuring convenience and flexibility in scheduling sessions.
  • Integration: The platform integrates with Microsoft Bookings, allowing seamless service selection and booking.
Invoice Generation
  • Service Delivery: Personal trainers can generate draft invoices based on bookings, which are compliant with Swiss eBilling standards.
  • QR Code Invoicing: Each invoice includes a Swiss eBilling QR code, simplifying the payment process for customers.
Monthly Invoicing and Email Delivery:
  • Automation: Back-office employees can process monthly invoicing and send invoices via email to customers, reducing manual effort and ensuring timely delivery.
Payment and Reconciliation:
  • QR Code Payments: Customers can pay invoices using the Swiss eBilling QR code, making transactions quick and hassle-free.
  • Automatic Reconciliation: Payments received in the bank account are automatically reconciled using the Swiss eBilling QR code SWICO part and marked as paid, providing transparency and accuracy in financial records.

QR Invoicing end-to-end-process

  1. The debtor places an order with the supplier / service provider.
  2. The supplier / service provider issues an invoice in the form of a QR-bill.
  3. The invoice recipient pays the QR-bill by either scanning the QR code, which automatically fills in the payment data, or by manually entering the payment using the textual details on the payment slip.
  4. The debtor's bank debits the debtor's account.
  5. The payer's bank sends the payment to the payee's bank via the clearing system.
  6. The payee's bank credits the incoming payment to the payee's account.
  7. The debtor's bank reports the account debit to the debtor using the desired account report.
  8. The creditor's bank reports the incoming payment to the creditor by means of the requested account report.
  9. The debtor checks whether the debit matches the QR-bill.
  10. The creditor checks whether the credit note matches the invoiced amount.

Day 2: Development and Implementation

With a clear plan in place, we moved on to the development phase. Utilizing tools like Power Apps, Power Automate, and Dataverse, we built a robust system that supports the entire booking and invoicing workflow.

User experiences

Technical Highlights

Dataverse Environment
  • Data Model: We designed a comprehensive data model to manage accounts, contacts, invoices, and products. This ensures all necessary attributes for eBilling are captured and processed accurately.
  • Connectors: Integration with Outlook, Teams, and Microsoft Bookings enhances functionality and user experience.
Power Automate Flows
  • Service booking to invoice: Automate to get new service bookings and create a draft invoice.
  • QR Code Generation: Automated generation of QR code invoices.
  • Email Delivery: Sending invoices with QR codes to customers.
  • Payment Reconciliation: Automatic reconciliation of paid invoices from the bank account extract.
Security Model
  • Roles: Defined security roles for personal trainers, back-office employees, and administrators to ensure data privacy and access control.

 

QR Code Generation: Automated generation of QR code invoices.

Using Power Automate to read 1) the business unit data (IBAN, UID, Name, Bill To Address), 2) the customer data (Customer No, Name, Address) and the 3) invoice data (Invoice No, Due date, Amount, Payment terms). Generate the QR Code Link 

PowerFX function ... 

concat(
        variables('invoicePayableToIBAN'), ',S,', 
        variables('invoicePayableToName'), ',', 
        variables('invoicePayableToStreet'), ',,', 
        variables('invoicePayableToPostalCode'), ',', 
        variables('invoicePayableToCity'), ',CH,,,,,,,,', 
        variables('invoiceAmount'), ',CHF,S,', 
        variables('invoicePayableByName'), ',', 
        variables('invoicePayableByStreet'), ',,', 
        variables('invoicePayableByPostalCode'), ',', 
        variables('invoicePayableByCity'), ',CH,NON,,', 
        variables('invoiceComment'), ',EPD,%2F%2FS1%2F10%2F', 
        variables('invoiceNo'), '%2F11%2F', 
        variables('invoiceDueDate'), '%2F20%2F', 
        variables('invoiceCustomerReference'), '%2F30%2F', 
        variables('invoicePayableToUID'), '
        ?op=downloadpdf&filename=', variables('invoiceNo'), '.pdf'
        )

generates the link ...

https://qr-rechnung.net/#/b,de,SPC,0200,1,CH3100700110005680761,S,Ernährung & Sport,Tüfenbachstrasse 29,,8494,Bauma,CH,,,,,,,,985.5,CHF,S,Urs Rüegg,Ankenbüel 7,,8126,Zumikon,CH,NON,,Ernährung & Sport Dienstleistung,EPD,%2F%2FS1%2F10%2FR-2025-100011%2F11%2F250017%2F20%2FM-100000%2F30%2F446670503?op=downloadpdf&filename=R-2025-100011.pdf

... and outcomes a QR-Code bill

Conclusion

Our two-day hackathon resulted in a powerful online booking and invoicing system that addresses the needs of personal trainers and their customers. By leveraging modern technologies and innovative solutions, we created a platform that simplifies booking, invoicing, and payment processes, ultimately enhancing the overall user experience.

We are excited about the potential impact of this system on the personal training industry and look forward to further developments and refinements. Stay tuned for more updates and insights from our team!

Feel free to share your thoughts or ask any questions about our hackathon project!

Special thanks goes to Andreas Bilger who invented QR-Rechnung.net as free product. Contact Email: info@qr-rechnung.net 

Trademarks

  • «QR Code» is a registered trademark of DENSO WAVE INCORPORATED.
  • «QR-Rechnung» and «Swiss QR Code» are registered trademarks of SIX Interbank Clearing AG.

References

 

About the author

Urs Rüegg

I'm an experienced Solution Architect at the Microsoft Innovation Hub in Zurich with a passion for delivering innovative technology solutions. And an avid blogger, sharing insights on digital development, robotics and more. In my spare time I enjoy sailing, scuba diving, skiing and travelling.

Contact us

Lorem ipsum dolor sit amet, consectetur adipiscing elit.