Skip to content

One invoice per payer, a line per class, four billing models in one scenario

When a billing record is created in SmartSuite, a Make scenario decides which of four billing models applies, finds or creates the payer in Xero, builds one invoice line per class or session from the linked records and writes the invoice back onto the record.

Billing & financeFlow2025

Where this applies

Tutoring centres, academies, clubs and any business that bills several classes, sessions or items to one payer in Xero.

billing models in one scenario
4
line per class or session
1
modules in the build
~74

The problem

An academy bills payers, not classes. One payer may have two children in three classes, some on a term fee and some casual, and the invoice has to show each as its own line. Built by hand, those invoices are slow, and they are where a class gets missed.

Most simple integrations create an invoice with one line. The work here is building the lines: reading the linked records, turning each into a line item and assembling them into the array the accounting system expects.

What we built

01

Four billing models, one entrance

The trigger is a new billing record in SmartSuite. After reading it in full, routers send it to one of four invoice branches, one per billing model, so each model has its own logic without four separate scenarios to keep in step.

02

Find or create the payer

Each branch searches Xero for the payer's contact and creates it if it is missing, so a new family does not stop its first invoice.

03

Lines from linked records

An iterator walks the linked class or session records, looks up what each line needs in SmartSuite and Xero, and an array aggregator gathers the results into the line-item array for one invoice. A text-replace step tidies values before they reach Xero.

04

Written back

When Xero has created the invoice, the scenario writes its number and status back onto the SmartSuite record, with error handlers on those writes, so the record shows that it has been billed.

The outcome

  • Built in January 2025 as one scenario of about 74 modules, with four routers, four iterators and four array aggregators.

  • It is switched on but has no runs in Make's 30-day history window, so this page describes a design rather than a volume. A revised copy made in May 2025 is switched off and not described.

Where it stops

This scenario raises invoices; it does not bring paid or overdue status back. The four billing models are fixed in its routes, and the line-building logic is repeated in each branch, so a change to how a line is built has to be made four times. The academy's trial-request, session, attendance and timesheet scenarios are not described.

Built with

  • Make.com
  • SmartSuite
  • Xero

Patterns used

  • Iterator and array aggregator
  • Find or create contact
  • Router per billing model
  • Write the invoice back

Page copy drafted with AI assistance. Skofi is accountable for it. Editorial policy

Start here

Have something shaped like this?

If any part of the above resembles a problem you are living with, a short call is the fastest way to find out whether it is the same problem underneath.

Book a 15-minute callsaveez@skofi.tech

What happens on the call

  • 15 minutes, no deck
  • We map the process on the call
  • A written scope, or an honest no
Book a call