How a Warsaw Course Creator Bills a 600-Student Global Membership Without Losing Her Weekends

By the InvoiceFlow team — published 16 June 2026 — 12 minute read

Zofia Lewandowska teaches UX design from a converted attic studio in Warsaw's Praga district. What started as a single twelve-week cohort she sold to forty people on a Saturday has become a small education business: two cohort intakes a year at a fixed price, plus an ongoing monthly membership — recorded lessons, a critique community, monthly live calls — that around six hundred people pay for every month. Her students are everywhere: Berlin, São Paulo, Manila, Toronto, Lagos, a surprising number in Seoul.

The teaching she loves. The billing nearly ended the whole thing. "By month four of the membership I was spending the first weekend of every month sending invoices," she says. "Six hundred people, half a dozen currencies, and a student in Brazil who emailed because his invoice was in złoty and his accountant couldn't read it. I was a designer running a bookkeeping sweatshop on weekends."

None of that was necessary. The shape of Zofia's business — recurring memberships plus periodic cohorts, sold internationally — is one of the most common shapes online education takes, and it's exactly the shape good invoicing tooling is built for. Here's the system she runs now, built on recurring schedules for the subscriptions, per-invoice currency and per-invoice locale for her international students, and client categories to keep cohorts and membership tiers straight — and why her first weekend of the month is hers again.

The two revenue streams, and why they bill differently

Zofia's income comes in two distinct shapes, and conflating them was part of the old chaos:

The membership is what generates the monthly invoicing mountain, because it repeats. Six hundred members times twelve months is 7,200 invoices a year if you do them by hand — which is why the membership is exactly where recurring schedules earn their keep.

Recurring schedules: the monthly invoices that send themselves

InvoiceFlow's recurring schedules feature exists for precisely this: subscriptions and retainers that bill on a cadence. Instead of creating each member's invoice by hand every month, Zofia sets up a recurring schedule per member — the line item (membership tier), the amount, the currency, the monthly cadence — and the app auto-generates the invoice on schedule, with correct sequential numbering so her invoice numbers never collide or skip.

That sequential numbering matters more than it sounds. When you're hand-creating hundreds of invoices a month, numbering mistakes are inevitable — a duplicate here, a gap there — and an accountant anywhere in the world will flag a number sequence with holes in it. Letting the recurring engine own the numbering means every member's monthly invoice slots cleanly into one continuous, audit-clean sequence, no matter how many go out on the first of the month.

The practical effect: Zofia sets the schedule up once when a member joins, and the membership invoices then generate on their cadence for as long as that member stays. New member in March? She creates their schedule once. They get a correctly numbered invoice every month after, in their currency, until they cancel. Her monthly "billing weekend" collapsed into occasionally adding or pausing a schedule.

Per-invoice currency: every student billed in money they recognize

Zofia's members pay from dozens of countries. Some want euros, her Polish members are happiest in złoty, her growing US contingent thinks in dollars, and her Brazilian students need real to give their accountants. InvoiceFlow lets her issue each invoice in its own currency, formatted correctly for that currency — so the dollar invoice reads $19.00 and the euro one reads €19,00, each looking native rather than like a foreign document with a converted number bolted on.

One honest caveat she's clear about: this is per-invoice currency, not live foreign-exchange conversion. The app doesn't fetch today's rate and convert €19 into "today's dollars." Zofia sets the price she charges in each currency herself — she decided her membership is €19, or $21, or a round number of złoty, as a deliberate pricing choice per market — and the invoice issues in that currency with correct formatting. That's actually what she wants. Live conversion would make her US price wobble by the cent every month; a fixed per-market price is clean, predictable, and something a student can budget around. She stores each member's currency on their client record, so it's set once and flows onto every recurring invoice automatically.

A worked example

Take three pro-tier members. Lucas in São Paulo is billed R$119/month. Min-jun in Seoul is billed in won. Sarah in Toronto is billed CAD. Each one's recurring schedule carries their own currency, set when they joined. On the first of every month, three correctly formatted, correctly numbered invoices generate — in real, in won, in Canadian dollars — and Zofia touches none of them. The student in Brazil whose accountant once couldn't read a złoty invoice now gets a clean R$ document every month.

Per-invoice locale: the invoice prints in the student's language

Currency was only half of that Brazilian student's problem. The other half was language — a Polish-language invoice is no friendlier to a Brazilian accountant than a złoty figure. This is where InvoiceFlow's per-invoice locale setting does the quiet heavy lifting.

Zofia's app is in Polish — that's her working language. But the locale of each invoice is independent of the app's language. So Lucas's invoice prints in Portuguese, Min-jun's in Korean, Sarah's in English, all while Zofia works in Polish. The document labels — "Invoice," "Due date," "Subtotal," "Total" — render in the student's language, and because InvoiceFlow's PDFs handle non-Latin scripts correctly using bundled fonts, Min-jun's Korean invoice renders cleanly rather than as a row of empty boxes. Set the locale on the client record once, and every recurring invoice for that student prints in their language for as long as they're a member.

The payoff is fewer support emails and faster payment. An invoice a student's accountant can read end-to-end — right currency, right language, clean numbering — gets approved and paid without a back-and-forth. Zofia estimates the "what does this document say?" emails dropped to near zero once she set locales properly. For a one-person business, eliminating an entire category of email is worth as much as the time saved on the invoices themselves.

Client categories: keeping 600 students and two products straight

A six-hundred-person student base is a different animal from a dozen freelance clients. Zofia needs to answer questions constantly: who's a pro-tier member versus standard? Who's in the current cohort versus a past one? Who's both a member and a cohort alum? InvoiceFlow's client groups and categories — with parent categories and child sub-categories — are how she keeps it organized.

Her structure is simple and it scales:

A student can sit in more than one — a Pro member who also took the Spring cohort is tagged in both. When Zofia launches the autumn cohort, she filters to Pro members who aren't yet cohort alumni and offers them an early-bird seat. When she wants to know how many people upgraded from standard to pro this quarter, the categories answer it. InvoiceFlow's advanced filters let her slice the base by these attributes and relationships, and a dedicated client-groups screen manages the whole taxonomy. The category isn't decoration — it's how a one-woman business runs targeted offers and clean reporting across six hundred people.

Categories and recurring schedules, working together

The two features compound. The category tells Zofia who a student is; the recurring schedule handles how they're billed. When a standard member upgrades to pro, she moves them to the Pro sub-category and updates their recurring schedule from €19 to €39. The category keeps her segmentation honest; the schedule keeps the billing automatic. Neither needs the monthly weekend.

Cohorts: the one-off sale, handled separately

The cohorts don't recur, so they don't go on a recurring schedule. When Zofia opens an intake, each enrolling student gets a normal invoice in their own currency and locale — same per-invoice currency and locale machinery as the membership, just issued once instead of monthly. For students who want to split the cohort fee, she can break a single invoice into a payment plan so they pay in a couple of scheduled installments rather than one lump. The cohort revenue and the membership revenue stay cleanly separated by category, so when she looks at her numbers she can see exactly what each stream is contributing.

The first-of-the-month, before and after

Here's the contrast that sums it up.

Before: the first weekend of every month gone. Six hundred invoices created by hand, currencies typed in one at a time, numbering errors to chase, a steady trickle of "I can't read this" emails from students whose invoices were in the wrong language, and a creeping sense that the business that was supposed to free her had instead handed her a monthly clerical job she hated.

After: on the first, the membership invoices generate themselves — each in the member's currency, each in the member's language, each with a clean sequential number. Zofia spends maybe twenty minutes adding any new members' schedules and pausing the handful who cancelled. The "what does this say?" emails are gone. Cohort sales are the same machinery issued once, split into installments when a student needs it. Her categories tell her at a glance who's who. The weekend is hers.

The lesson generalizes well beyond UX courses. Any creator running a recurring membership for an international audience is sitting on the same three problems Zofia had: the billing repeats (so automate it with recurring schedules), the audience is global (so issue each invoice in its own currency and the student's language), and the base gets large and segmented (so organize it with categories). Solve those three and the business stops eating your weekends — which, for most creators, was the entire point of building it.