Skip to main content
All case studies
AI & Automation

From Manual Sheets to a Co-Living Finance System with Automatic WhatsApp Reminders

Case study: a finance system for Anantara Co-Living, a premium kos in Indonesia, with invoices, payment tracking, receipts, and automatic WhatsApp reminders.

Share

Share to Instagram Stories

Preparing image…

  1. The link is copied.
  2. Download the image, then post it to Instagram Stories from your phone.
  3. Add a Link sticker to your Story and paste the link.
Download image

Instagram Stories can only be posted from the phone app.

Share to TikTok

Preparing image…

  1. The caption and link are copied.
  2. Download the image, then post it as a photo on TikTok.
  3. Paste the caption before you post.
Download image

Easiest to post from the TikTok app on your phone.

Client
Anantara Co-Living
Role
Full Stack Developer
Tools
Google Apps Script, Google Sheets, WhatsApp API, Google Drive, Google Sites
Duration
1–2 months
Collage of the Anantara Co-Living finance system: an admin dashboard with tenant and invoice counts, a monthly payment summary, and a WhatsApp notification telling the managers a payment proof has arrived

Anantara Co-Living is a premium kos, the Indonesian take on a boarding house where tenants rent furnished rooms by the month. It has dozens of tenants paying rent every month, and until recently every invoice and payment was recorded by hand in Google Sheets.

I built a finance system on top of Google Apps Script and Google Sheets, with a dashboard, automatic invoices, a payment summary, and the WhatsApp API sending reminders to both tenants and the management team.

The problem: every payment status lived in a spreadsheet row

With dozens of tenants and invoices every month, keeping records by hand turned simple questions into slow ones: who has paid this month, who is late, which transfer receipts haven't been checked, and whose contract is about to end. Each answer meant searching and cross-checking row by row.

Reminding tenants and following up on contracts also depended on the managers remembering to check the spreadsheet at the right moment.

The approach: keep Sheets as the database, automate the workflow

I didn't move the data into a new app. Google Sheets stayed the database the team already knew. On top of it I built a web app with Google Apps Script, hosted on Google Sites, and used the WhatsApp API for every notification.

  1. 1Invoices createdThe admin generates invoices up to 12 months ahead
  2. 2Tenant remindersWhatsApp messages before, on, and after the due date
  3. 3Payment proof arrivesThe managers get a notification to verify it
  4. 4Receipt sentA link to the receipt in Google Drive goes to the tenant

What I built

Admin dashboard

The moment they log in, admins see the property's finances for the day: total tenants, active invoices, late payers, invoices due today, payment proofs waiting for confirmation, and contracts ending within 30 days. Below that is the list of active invoices, showing how many days each one is overdue.

Admin dashboard with cards for 26 total tenants, 5 active invoices, 1 late payment, 2 invoices due today, 3 awaiting confirmation, 0 contracts ending within 30 days, and a list of active invoices with a 35-days-late label
The admin dashboard, with the interface in Indonesian. The admin's name and tenant details are blurred.

Payment summary per tenant per month

This summary replaced scrolling through the spreadsheet. Every tenant gets one row with a status for each month: paid, awaiting confirmation, unpaid, or inactive. Late-payment patterns are visible at a glance, without opening records one by one.

Payment summary table for 2026 with a room column and months from January to December, marked with ticks for paid, crosses for unpaid, clocks for waiting, and dashes for inactive
The yearly payment summary. Tenant names are blurred.

Invoices created in advance

Admins can create invoices for the next 1, 2, 3, 6, or 12 months in one go, and approve all of a tenant's invoices with a single click. The app works on a phone, with logins for each role.

Three phone screens: the Anantara Co-Living login page, the Generate Invoices page with options from 1 to 12 months and an Approve All Invoices button, and a WhatsApp chat with notifications about an incoming payment proof and a contract nearing its end
From left: login, invoice generation, and WhatsApp notifications for the management team. Tenant names and invoice IDs are blurred.

Automatic WhatsApp messages for the management team

The managers no longer need to keep opening the spreadsheet to find out what needs their attention:

  • Payment proof received: with the tenant, room number, and invoice ID, so it can be verified straight away in the Invoices sheet.
  • Contract ending soon: sent 30 days before the lease ends, so renewals can be followed up early.

Automatic WhatsApp messages for tenants

Tenants get the information they need without anyone chasing them by hand:

  • A welcome message when they're registered, with their room number and lease period.
  • A reminder before the due date, the invoice on the due date, and a reminder when a payment is late.
  • A payment receipt once the payment is verified, as a link to a file in Google Drive they can keep as official proof.
WhatsApp chat from Anantara Co-Living: a welcome message with the room number and lease period, followed by a payment receipt message with the date and a receipt link
The welcome message and receipt for tenants, in Indonesian and sent from test data. The name and receipt link are blurred.

Complaint form

Tenant complaints go into the same system through a complaint form: name, room number, category, the complaint itself, and a supporting photo. Complaints no longer get lost in private chats.

Complaint form with fields for name, room number, a category picker, the complaint, and an area to upload a supporting photo
The complaint form for tenants, with the interface in Indonesian.

Results

Before

  • Invoices and payments recorded by hand in Google Sheets
  • Each tenant's payment status found by searching row by row
  • Reminders and contract follow-ups depended on the managers' memory

After

  • A dashboard and a payment summary per tenant per month
  • Due-date reminders and receipts sent automatically over WhatsApp
  • The team is notified of new payment proofs and of contracts ending in 30 days
Active tenants whose invoices run through the system
26
Types of automatic WhatsApp messages for tenants
5
Advance notice to the team before a contract ends
30 days

Because Google Sheets is still the database, the management team can view and edit the data just like before. The difference is that routine work, like checking payment status, reminding tenants, and keeping an eye on contracts, is now done by the system.

Found this useful? Share it with a friend or your team.

Share

Share to Instagram Stories

Preparing image…

  1. The link is copied.
  2. Download the image, then post it to Instagram Stories from your phone.
  3. Add a Link sticker to your Story and paste the link.
Download image

Instagram Stories can only be posted from the phone app.

Share to TikTok

Preparing image…

  1. The caption and link are copied.
  2. Download the image, then post it as a photo on TikTok.
  3. Paste the caption before you post.
Download image

Easiest to post from the TikTok app on your phone.

Is your team still doing something by hand?

Tell me about it, and let's find the fix together.