Connecting your calendar to your bookkeeping

Six appointments today. At the end of the day you pick up your phone to fill in your daily log: which treatments were they again, and in what order? What if your bookkeeping already knew - because your calendar does?

Your booking system knows exactly what your day looked like: which appointments, at what time, for how long. It is missing just one thing - the money. Amounts, payment methods and tips aren’t in a calendar. Connect the two and you no longer have to retype the number and type of treatments: your daily log fills itself in advance, and you only add the amounts and payment methods.

That saves time exactly where it matters most - the daily entry - and it gives you something extra: a forecast of your occupancy, your busy and quiet days, and your no-shows. If you work at several locations, you can see where your hours actually pay off most.

The calendar connection and Forecast are part of ZumFlo Pro. During the 14-day trial period you can try everything for free.

How the connection works

The connection runs through a shared calendar link - a so-called iCal link. Almost every booking system for self-employed professionals can provide one: Salonized, Treatwell, Booksy, Fresha and similar systems. Important for your situation: it is your host who shares the link, and that link contains only your own appointments - not your colleagues’, not the whole salon’s.

You paste that link into ZumFlo itself, at your host’s location. ZumFlo then fetches the calendar directly from your device and reads your appointments read-only - nothing is ever written back to your calendar. So you don’t need to add the link to the calendar on your iPhone, and ZumFlo asks for no access to your phone’s calendar.

How to set it up - using Salonized as an example

The connection consists of three blocks. Your host (the salon owner) does blocks 1 and 2; you, as the chair renter, do block 3. If you work with a different booking system that provides a calendar link (Treatwell, Booksy, Fresha and similar), the idea is the same - your host shares a link with only your appointments, and you paste it into ZumFlo. In that case, check that system’s own help pages for how to export an iCal link.

What you need beforehand

Your host needs: a Salonized account with the manager role, a Google account (Gmail) and access to Google Calendar with that same account. You need: ZumFlo with Pro (or during the trial period) and the iCal link your host sends you in block 2.

Block 1 · Your host, in Salonized

This requires the manager role.

  1. Go to Settings → General → Integrations.
  2. Under Google Calendar: click Enable and grant permission.
  3. In the Salonized → GCal section: choose “Separate Google calendars per employee”.
  4. Next to your name: click “Create a new calendar: Salonized – [name]”.
  5. Click Save. The first sync takes about 15 minutes.

Don’t tick: “Show Google Calendar events as absences in Salonized.” That is a reverse connection that affects the salon’s bookability - you don’t need it here.

Salonized help articles: integrating Google Calendar, sharing a separate calendar per employee, and why you don’t turn on the absence sync.

In short, for your host: in Salonized, go to Settings → General → Integrations, enable the Google Calendar connection and choose separate Google calendars per employee. Then, in Google Calendar, your host shares the secret iCal address of the calendar with your name - only yours. Nothing more is needed on the salon’s side: you don’t get access to Salonized itself or to your colleagues’ calendars.

Block 2 · Your host, in Google Calendar

Your host does this in the Google account that was connected in block 1.

  1. Open Google Calendar (calendar.google.com).
  2. In the list on the left, find the calendar “Salonized – [name]”.
  3. Hover over it → click the three dots → “Settings and sharing”.
  4. Scroll to “Integrate calendar”.
  5. Copy the “Secret address in iCal format” (a link ending in .ics).
  6. Send that link to you (by email or WhatsApp).

Tip: don’t share this link with anyone else - it gives access to the appointments.

Block 3 · You, in ZumFlo

You link the calendar directly in ZumFlo, at your host’s location. A subscription in your iPhone’s Calendar app is not needed.

  1. Copy the .ics link your host sent you.
  2. In ZumFlo, open My Business and tap your host’s location.
  3. On the Calendar card, tap “Link calendar”.
  4. Paste the link under Calendar link, choose Salonized as the Provider (or Other for a different system) and optionally add a label, for example the salon’s name.
  5. Tap Link. ZumFlo fetches the calendar straight away and shows how many appointments it found. If the link is wrong, you see that immediately - for example “Calendar not found - check the link”.

The first time, you link an appointment name (for example “Haircut” or “Biab”) to one of your services, and you mark noise such as “Lunch” or “Break” as not relevant once. After that, ZumFlo recognises those appointments by itself.

Good to know

The connection is one-way: appointments flow from your booking system through the calendar link to ZumFlo, never the other way round, so you can’t change anything by accident. ZumFlo updates your appointments when you open the app; from the linked calendar you can also tap Sync again yourself. Appointments from before you switched it on are not loaded retroactively - only new appointments sync. Individual, dated client appointments sync normally; unusual repeat patterns (yearly, or “every last Friday”) aren’t always supported.

New device? The calendar link itself is only stored on the device where you linked it, in the secure iOS keychain, and is not carried over through iCloud. On a new iPhone you therefore link it again with Link again. Your imported appointments and the mappings you already made are kept, and existing appointments are not imported twice.

What the connection does - and doesn’t do

It does: set up the number and type of treatments per day in advance, plus your working hours for your occupancy insights. A lash artist with six appointments in a day no longer enters six separate lines - they’re already there; she only adds the amounts. So you no longer start your daily log with a blank screen.

Does one client have several treatments back to back? ZumFlo recognises that as one calendar block and, as a starting point, links the total amount to the transaction that matches that time slot - so you confirm the block in one go, instead of each treatment separately.

It doesn’t: fill in amounts and payment methods. They aren’t in a calendar and remain yours to add - card, cash, voucher and tip. That keeps your financial overview accurate and keeps you in control. Data you entered manually is never overwritten by the calendar.

A card payment with the suggestion from the calendar appointment: the treatments from the calendar block are ready to take over.
You don’t start with a blank screen - the treatments are already there.

In short: the calendar speeds up the counting, you keep the calculating clean. How that step from gross to net works is explained in calculating your net income.

A neutral third source for your settlement

There is one more reason a connected calendar is valuable. At the monthly settlement with your host, you put your figures next to the salon’s. If something doesn’t match, your calendar is a neutral third source: it objectively shows how many confirmed appointments you had in that period. That makes a conversation about a difference a lot easier - it’s about facts, not memory.

What about your privacy?

The connection is deliberately kept as light as possible. The calendar link is read-only and contains only your own appointments. ZumFlo fetches the calendar itself, directly from your device, and asks for no access to your phone’s calendar. The link stays on your device: it is stored in the secure iOS keychain and is not synced through iCloud. Your appointments - treatment, times, staff member and any client names - are processed on your device and stored in your ZumFlo data: on your device and in your own iCloud, just like the rest of your records. Nothing goes to a ZumFlo server. If you want to stop, tap Unlink on the linked calendar: ZumFlo deletes the link and stops fetching, while the appointments already imported simply stay in your records. You can read more about this in our privacy policy.

Frequently asked questions about the calendar connection

Any booking system that provides a calendar link (iCal) will work - think Salonized, Treatwell, Booksy, Fresha and similar systems. Your host shares a link that contains only your appointments; you paste it into ZumFlo at your host’s location, with Salonized or Other as the provider.

If your appointments contain client names, ZumFlo reads them too, so your appointments are recognisable in your daily log. They are processed on your device and stored in your ZumFlo data - on your device and in your own iCloud - and never go to a ZumFlo server. The connection is also read-only; ZumFlo never writes anything back to your calendar.

No. A calendar appointment contains no amounts or payment methods. The connection pre-fills the number and type of treatments; you add the amounts, card, cash, voucher and tip yourself in your daily log.

The calendar connection and Forecast are part of ZumFlo Pro. You can try them free for 14 days during the trial period. If you later switch to Standard, your connection is kept, but syncing is paused.

Syncing happens on your device: ZumFlo fetches your calendar when you open the app, and you can always sync again yourself. Battery-friendly, and without a ZumFlo server in between. You stay in control.

Less retyping, more overview.

Your calendar knows what your day looked like. So let your bookkeeping benefit from it too: your daily log no longer starts from zero, and you see your occupancy at a glance.

ZumFlo connects your calendar to your daily log - read-only, with only your appointments, and with your data on your own device and in your own iCloud.

Download on the App Store
© 2026 Sub37 Labs. All rights reserved. Use of this text without permission is not permitted.