Zug, Switzerland

Business-Tech
Architect.

I build the systems that run a modern service business. I run one too: Taxolution, the Swiss tax practice I started in late 2017. Business-law trained, with the legal and commercial judgment to know what’s worth pursuing.

65K+
Automation Runs
2,500+
Tax Cases
5.0
Google (168)
Ron R. Rosenwasser, in a navy suit

About

Founded Taxolution in late 2017, in the final year of my BSc in Business Law. Architected the proprietary client portal (built with a dev team I guide) alongside an internal automation mesh I wire up myself across Google Workspace, HubSpot, Bexio, and Taxware. 65,000+ automation runs logged. Digital-first practice serving 1,000+ clients in Switzerland. 5.0 Google rating across 168 reviews.

Also hold board positions across businesses in crypto, international trading, and accounting. It’s the same work each time: I handle the Swiss legal and operational side, and I build the software that runs it.

SYS

Systems

Portals, CRM, automation pipelines, API integrations

TAX

Swiss Tax & Law

Cantonal tax, Quellensteuer, cross-border, case law

OPS

Operations

Unit economics, multi-entity, pricing, compliance

AI

AI Integration

MCP servers, LLM pipelines, AI-assisted workflows

Built and running in production.

In most firms this still runs on email, PDFs and a spreadsheet. These are the parts I rebuilt, so the machine does the work and a person stays in control.

01 The whole client relationship runs over email and PDF

The usual way

Everything moves by email and post: onboarding forms, documents, the assessment result, the invoice. The client has no single place to see their own case. Most Swiss firms don’t offer a portal at all.

What I built

A client portal that takes each client the whole way, from onboarding and document upload to live status, the result explained, and the invoice. It’s the only end-to-end one I know of in Swiss expat tax. It runs on the records the team already keeps, so there’s no second system, and a client only ever sees their own case.

Onboarding to resultOnly one of its kindIsolated per client

Now the client logs in and sees the whole case in one place.

02 A daily stream of documents to sort and file

The usual way

Post gets opened and sorted by hand. Each page is scanned at the office copier, renamed to a house convention, and filed into a per-client, per-year drive, then booked into Abacus or bexio. Anything with a deadline is flagged by hand in Excel or Outlook.

What I built

It reads each document, matches it to the right client from the firm’s live list, and files it under one naming convention with the type, canton and year. When it isn’t sure, the document goes to a person instead. Every file is logged.

Runs unattendedOne naming conventionUnsure cases to a person

Mixed-language post sorts itself, and a person only steps in on the exceptions.

03 Is the tax office’s assessment correct?

The usual way

The advisor opens the filed return in Dr. Tax and reads the new assessment against it by hand, line by line, checking the cantonal, federal and total figures for anything the tax office changed. The clock matters here: there are 30 days to object, and the deadline can’t be extended.

What I built

It pulls the figures out and re-runs the arithmetic that should tie them together. If they don’t add up, it won’t write the numbers. It flags the case instead of letting a wrong one through. The advisor still decides whether to object.

Same check every timeBad numbers blockedAdvisor decides

Nobody checks these line by line any more. The wrong ones flag themselves.

04 Turning finished work into an invoice

The usual way

Staff log their time against the mandate in a tool like AbaTime or Topal. At billing, the manager goes through the work in progress, sets the fee, adds 8.1% VAT, and sends a QR-bill by email or post.

What I built

When the work is done, it drafts the invoice straight from the deal. It matches the client to the accounting system, pulls the line items, and sets Swiss or foreign-exempt VAT. Nothing goes out until a person approves it. If it can’t match a client it says so, and it never creates a duplicate.

No re-keyingA person approves the sendNo duplicates

Invoices get reviewed and sent the same day. None get forgotten.

05 Coordinating a statutory audit across three firms

The usual way

The audit firm emails over a request list, usually an Excel or PDF. Files come back by email or a shared drive. The auditor keeps track of what’s still missing in their own copy of the list, while the questions run over long email threads.

What I built

One portal. Every request has a status all three firms see at once, and the files stay inside the audit folder. What each person can do depends on their role. The history is written by the database itself, so no one can edit it after the fact.

One shared statusScoped accessTamper-proof record

Three firms work off one status, and the record holds up afterward.

06 What would my tax be in canton X?

The usual way

A prospect emails to ask. The advisor runs the numbers through the free ESTV calculator or comparis.ch, once for each canton, then writes back with a rough, caveated estimate. Usually none of it is billed.

What I built

Calculators on the website do it instead, wired to the real Swiss tax engine and comparing cantons side by side. The inputs are stepped, so every answer sits on a figure the engine actually computed, never one it made up. And everyone who runs one is a lead.

InstantReal engine, never inventedCaptures the lead

Prospects get their answer on the spot, and the firm answers none of them by hand.

Let’s talk.

For service-business founders, fellow operators, board conversations, or cats.