Ida OS
Is your studio unique? See how we customize
Browse all 22 guides

Payments

14 topicsWeb dashboardiPhone app
Open Payments in Ida

Payments is the studio's ledger. Tuition, bookings, workshops, shop orders, and competition fees all flow through one place, powered by Stripe. Staff track and reconcile the money; families pay and manage their own billing.

yourstudio.idaos.co/dashboard/payments

Payments

October · everything current

Collected in September

$8,515.25

44 by card · 2 by hand

Goes out Thu

$7,481.25

32 families on autopay

Outstanding

$335.00

2 families pay by hand

Past due

$0.00

Nobody

Sample studioBrightside Dance Studio is an invented studio, shown to illustrate Payments.
On this page14

Tracking the money

A Paid this month figure sits at the top of the page: every payment that settled this month, of every type, at what families actually paid — the same number as the iPhone app's Payments tab and Ida's answers, so however you ask, the month reads the same. Below it, the page is one filterable ledger. Search by family, then narrow by date range (this month, last month, the last 3 months, this year, or a custom range), type, status, method, and due date. The Due filter picks out charges by where they stand against their due date — Overdue, Due today, Upcoming, or Not overdue, which gathers everything that isn't late yet: charges due today, due later, and charges with no due date at all — and since only unpaid charges have a date to chase, it always shows charges still waiting to be paid, in the ledger and in the 'Awaiting payment' strip alike. The type filter lists every kind of payment the ledger can hold — from tuition, catch-up tuition, and registration through calendar kinds like Private lesson, Class, Practice, and Rental to trials, workshops, competition fees, shop orders, adjustments, and the one-off fees you have named (those gather under a single Other charge entry) — each with a color dot matching its chip in the table, and the same list, in the same colors, filters the Payments screen in the iPhone app. Sort any column from its heading menu, and click a row to open the payment's full detail — amount, status, dates, any note, and how it was collected in plain English, with the Stripe reference for online payments. A payment that carries a note also shows a small note icon right in its row — hover over it to read the note without opening anything.

Charges still waiting to be paid also collect in an 'Awaiting payment' strip above the ledger — expand it to work through them. The strip follows your filters: narrow by search, type, status, or method and the strip's count and total narrow along with the ledger, so filtering the page to Tuition shows only the tuition still owed. Only the date range leaves the strip alone — outstanding charges are what is owed now, whatever period you are reviewing below. When any charge in that filtered view is past due, the strip carries an Overdue chip with the count: click it to see just the overdue charges (it flips the Due filter to Overdue, so the ledger below narrows with it, and clicking again brings everything back). Every row shows its type as a color-coded chip so you can tell tuition from bookings, workshops, registrations, shop orders, and competition fees at a glance — and a charge that came from a calendar booking names its actual kind, like Private lesson or Rental, in that type's calendar color, rather than reading as a generic Booking — and a paid trial booked through your booking form shows as Trial, in its own color, rather than blending in with workshops. The 'Export as CSV' button downloads exactly what you are looking at, with your filters and sort applied. Long histories load a page at a time — choose how many rows per page and step through — while the totals line under the table and the CSV export always cover everything your filters match, not just the rows on screen, so the page stays quick even with years of payments behind it.

Prefer the analytics view? Flip the 'Analytics' switch to swap the ledger for a compact analytics row — your total for whatever you have filtered: money actually collected, counted before tax and less anything refunded, with the net after Stripe fees beneath it, next to revenue by month and revenue by type — plus the monthly matrix: each family's tuition and one-time totals month by month, with totals per month and per family. Click a family's row to break its months down by payment type — one line per type, color-coded to match the ledger's chips, so you can see how much of a month was tuition and how much was workshops or bookings — and use Expand all in the corner to open every family at once. The charts collapse to a single line that keeps your totals in view, so the matrix can take the whole screen when the numbers are what you are after. Your search and filters carry over, so you can chart a single family, one payment type, or any date range. Historical months come from your previous tracker, and new months fill in automatically from Stripe and recorded payments.

Sort and filter from any columnWeb dashboard

Every column heading in the ledger carries a small arrow menu: open it to sort that column in either direction, or set a filter on just that column. Text columns — Date, Family, Type, Status, Method — filter by contains, equals, starts with, ends with, or whether the cell is empty; the amount columns — Amount, Stripe fee, Net — compare numbers, like greater than 200 or less than 50. Filters on different columns stack, so 'card payments over $200 from one family' is a few quick filters, and the table and the CSV export both follow exactly what you have narrowed to.

A dot on a column's arrow shows it has a filter on, Clear filter inside the menu removes that column's, and a 'Clear column filters' button above the table sweeps them all away. The monthly matrix in the analytics view has the same menus on its own columns — sort or filter by family name, any month's amount, or the family total — and its month totals and grand total recalculate to match the families left in view.

How each payment was collected

Every payment carries a method badge showing how the money arrived: Stripe for payments collected online by card or autopay, Manual for payments you recorded by hand (cash, cheque, or e-transfer), and Imported for history brought over from your previous tracker. A charge that has not been collected yet shows 'Awaiting payment' — its method is set once it is paid. Payment history has a Method column and a matching filter, alongside the existing type, status, and date filters.

A payment collected through Stripe also keeps its official receipt on hand once it is paid — refunded ones included. Choose View receipt in the row's ⋯ menu, or from the payment's detail, and the Stripe receipt opens in a new tab — the tuition invoice for autopay charges, or the card receipt for checkout payments. Front desk staff can open the same receipt from a payment in a family's record. Manual and imported payments have no online receipt — your ledger is the record for those.

Stripe fees, tax, and your net

The ledger keeps your prices, collected tax, and processing costs apart. The Amount column holds what the family actually paid — a paid Stripe payment notes the GST/HST it included, and while your Stripe Tax settings are active, a charge still awaiting payment shows its before-tax amount with a '+ tax at checkout, if applicable' note, since the exact tax is only known once the family pays. If your studio does not collect tax through Stripe, amounts appear plainly with no tax notes — in the ledger, the 'Awaiting payment' strip, a family's payment history, and each payment's detail alike. Beside it sit the Stripe fee and Net columns, both sortable: a payment's Net is what your studio actually kept on it — Stripe's payout, which includes any tax it collected, less anything refunded. Stripe keeps its processing fee when it refunds, so a card payment refunded in full shows a small negative net: the fee that charge still cost you. A voided charge was never collected, so its net reads zero. Opening a payment's detail breaks a payment that collected tax into Subtotal, Tax (GST/HST), and Total, alongside its Stripe fee and net.

The totals, on the other hand, keep collected tax out of your revenue: the totals line under the table adds up the gross, the fees, and the net for exactly what you have filtered. The gross is money actually collected — the before-tax amounts of paid payments, less anything refunded, so a payment refunded in full adds nothing and a charge still awaiting payment, failed, or voided never pads the total (what is still owed has its own total in the 'Awaiting payment' strip above). The net total sets aside collected tax along with Stripe's fee, since tax you collect is remitted, not earned, so it always shows what you actually keep and never reads higher than your gross. The fees total counts every charge Stripe settled, refunded ones included — Stripe keeps its fee when it refunds, so that cost belongs in your books — and the same rule carries through wherever fees are added up, from a workshop's money summary to the iPhone app. The analytics view works the same way: its headline Total is your collected before-tax revenue — the charts and the monthly matrix count the same amounts — with the net after Stripe fees beneath it, figured just like the ledger's net total. Every one of these totals is added up exactly, to the cent, however many payments your filters cover.

The CSV export carries the full breakdown — Subtotal, Tax, Amount, Stripe Fee, and Net, plus each charge's due date when you have set one, and a Status label column spelling each payment's status in the same plain words as the page, like 'Checkout not finished' or 'Waived' — so the file drops straight into your bookkeeping. Manual and imported payments have no processing fee, so their fee cell shows a dash and their net is simply what was collected, less anything you have marked refunded, while an online payment whose fee Stripe has not reported yet shows a dash for both. A voided charge exports a net of zero and no fee — no money ever changed hands on it.

Note. Fees and tax are recorded when Stripe settles the payment, so a just-paid charge can show a dash for a moment before its fee, tax, and net fill in.

Creating payments, voiding, and refunding

Admins add to the ledger with the Create a payment button, which does two jobs in one dialog. Pick the family (the picker is searchable — just start typing a name), choose the payment type and amount, then choose how it settles: 'Bill the family' creates an outstanding charge the family sees in their portal and can pay online, while 'Already paid offline' logs cash, a cheque, or an e-transfer you have already collected and marks it paid on the spot — choosing it asks how the money was collected (cash, e-transfer, cheque, or other), just like recording a payment on an existing charge, and the answer is kept with the payment: its internal note leads with a line like 'Marked paid — Cash'. The dialog states the rule it lives by: bills stay unpaid until a family pays or you record a payment. A charge you create is never logged as paid unless you choose Already paid offline and say how it was collected — so even a charge created for several families at once can't be marked collected by a stray click. When you bill the family, you can also give the charge an optional due date: families see it right on the charge — 'Due Sep 5', 'Due today', and 'Overdue' once the date passes — the heads-up includes it when you choose to notify the family, and unpaid lists on your side bring overdue charges to the top, on the dashboard home's Needs attention card and in a family's payment history alike. The date is a reminder, not a trigger — nothing is charged automatically when it passes — and Edit changes or clears it later if plans move. One thing does key off it: on a tuition charge at a studio with a late-fee policy, late fees count from this date rather than the usual billing day. Two optional notes travel with the payment and show up in its row and detail: a note for families — 'October tuition after trial' — that the family sees on the charge in their portal and, once the payment settles, right on their receipt email; and an internal note — an e-transfer reference, say — that stays with staff and is never shown to the family. When the type is Tuition, a 'This payment covers' picker also names the class period the money is for, and you can choose an earlier or later one — fall-session tuition a family paid back in August, say. Logging money one family has already paid starts the picker on the month that family actually owes, not blindly on today's: a family with an unpaid tuition bill starts on that bill's month, with a line underneath naming the waiting bill and its amount — mark that bill paid instead and the month is settled, with nothing billed twice; a family who has fallen behind starts on the month after the last one they paid, and the line says so — 'Last paid: August 2026. This payment picks up at September 2026.'; and a family that's up to date starts on the period whose bill is due now — as does billing the family, or recording money from several families at once. At studios whose bills go out the month before, each choice also says when it is billed, like 'September 2026 · billed in August' — and 'due now' keeps its sense there too: cash handed over in mid-October from an up-to-date family is October tuition, and only from your billing day on does the picker start on the month just billed. At studios that bill each family on their own signup day the pick is required and starts empty — you name the month yourself, so Ida never has to guess which month a payment covered. And at monthly studios one payment can cover a run of whole months: pick the first month, then the last one under Through, and the whole term reads as paid. The period follows the payment: its detail shows a Covers line, and if you leave the note for families blank on a tuition payment, it fills in with the period's name — 'September 2026 tuition' — so the family always sees what the money was for. One thing the dialog refuses outright is leaving a family owing twice for a month: logging tuition as already paid offline while that family still has an open tuition bill for the same month is turned down, naming the family and the bill — record the money on that open bill instead (Record payment, in full or in part), and when the open bill is one autopay or a Stripe invoice is set to collect, record it there in full, which also cancels the scheduled card charge. Billing tuition for a month Ida's automatic billing has already billed is refused the same way — void that bill first, or pick a different month. Your own arrangements still save as they always have: a second bill you enter yourself for a month, like a 1st-and-15th split or the balance after a partial payment, goes through fine, and a month already paid can still take another paid record — a session fee plus a top-up, say — though Ida asks first ('September 2026 is already paid. Did you mean October 2026?') so a slip of the picker never books the wrong month, and confirming records the genuine top-up as usual. The same guards hold everywhere tuition is entered by hand: this dialog, a family's record, the iPhone app, and Ida's change cards alike.

Each row's remaining actions live in the ⋯ menu at the end of the row. On an outstanding charge, Charge card collects it on the family's saved card right then — more on that below. Choose Record payment to log money collected outside Stripe: the dialog shows the outstanding balance, fills the amount in at that balance, and you pick how it was collected (cash, e-transfer, cheque, or other) and can add an optional note. Recording the full amount marks the charge paid, exactly as before. Recording less takes a partial payment — a family who hands you $40 against a $100 fee, say: the amount received becomes the paid record, receipt and all, and a new open charge for the remainder takes the original's place, so the family's balance and your outstanding totals stay right and the rest collects later like any other open charge. On a tuition bill, the remainder keeps the month the bill covers and the month still counts as billed, so no second tuition charge opens on top of it — and what the family already paid stands, never billed again. While the month is still being taught, an automatically billed month's remainder follows the family's live tuition like any open bill — if the price changes, they owe the new price minus what they already paid, to the cent (Tuition bills without autopay, below, covers when a bill is kept as it is instead) — while a remainder whose amount you set by hand, or on a charge you entered yourself, stays at exactly what you made it. Only tuition already scheduled for autopay, and charges Stripe is collecting by invoice, must be recorded in full — wait for the card, or record the whole amount. If the family still has an open online payment link, recording a payment cancels that Stripe checkout first so a late card payment can't settle afterward. Or choose Void to cancel the charge — on most charges it simply asks you to confirm, since the charge will no longer be owed or payable. A tuition bill is made unpayable before it is voided: any payment the family had open on it is closed first — their online payment page and a card payment started in the iPhone app alike — so a payment can't land on a bill that was just voided; and if their payment has already gone through, or is still on its way, the void steps aside and the bill stays as it is, so the money is recorded, never lost. Voiding an unpaid tuition bill asks one more question: what happens to the month it covers. Bill again (the default) is for a bill that was wrong — Ida sends that month's bill again right away at the current price (fix the plan or price first if that was the problem), or sets it up on autopay again, and tells you plainly when it can't, say because the month is over or another payment may already cover it. Waive this month means the family owes nothing for that month — the whole period on a quarterly or longer plan — and Ida never bills it again on its own, not on a price change, autopay, or its daily check: the bill stays on the ledger reading 'Waived', on your side and the family's alike, and any unpaid late fees for that month are voided with it (paid ones stay). An unpaid charge keeps this same menu wherever its row appears — in the 'Awaiting payment' strip or down in the ledger itself when you search or filter — and its detail view carries a Record payment button too, so recording the cash never depends on which list you found the charge in. Edit note is available on unpaid and Stripe rows; full Edit (amount, type, date, note) stays on manual and imported payments. Editing a tuition payment never re-tags the month it covers behind your back: the 'This payment covers' picker starts on the stored period, and a payment recorded without one starts on 'Not set (keep as is)' and stays untagged unless you pick a period yourself — so fixing a note on a June cash payment never quietly turns it into this month's tuition, on the web and in the iPhone app alike.

On a paid payment, the menu offers Refund when it was collected through Stripe — the money goes back to the family's card — or Mark as refunded when it was a manual or imported payment, which only updates your records: there is no charge to reverse, so you return the money yourself. A Stripe payment that never actually charged a card works the records-only way too — tuition settled offline while autopay was set up, say, or an invoice closed outside Stripe: Refund marks it refunded on the spot and tells you no card was refunded, instead of stopping to hunt for a card charge that does not exist, while a payment the family really made by card always goes back to their card. Either way you confirm first, with the exact amount and family spelled out. Refunding a payment tied to a booking or registration also updates that booking's status, so the calendar and Workshops stay in step with your ledger. That holds however the refund happens: one made in your Stripe dashboard counts the same once Ida sees it, even days later — the registration is cancelled, the seat freed, or the registration fee shows as due again, just as if you had refunded from here. The family is sent a refund notice while the news is fresh; a refund Ida only learns about days afterwards is applied quietly, with nothing sent.

Once in a while an online payment and a cancellation cross paths. If a family's checkout has already gone through — or their payment is still processing — when you void the charge, cancel its booking, record a payment on it, or charge their card, Ida steps aside rather than letting the two collide: nothing is changed, a plain message says the family just paid (or that their payment is still clearing), and the payment shows up when you refresh a moment later. And if a payment lands only after its booking or charge was already cancelled, the money never slips out of view: the booking stays cancelled, but the payment is recorded as paid on the family's ledger wearing a 'Refund this payment' badge beside its status — in the ledger, in the family's record, and on the payment's detail, on the web and in the iPhone app alike — and admins get an in-app notice naming the family and the amount that opens the flagged payment directly. Nothing is refunded on its own: the refund stays your decision, made with the usual Refund on that payment, and the badge clears by itself once any refund is made or on its way. The family isn't left wondering either — that payment carries a plain line on their Payments page and in the app saying it was cancelled before their payment went through and the studio will refund it. Ida keeps count too: ask it about your payments and any still waiting on a refund like this are part of the answer.

Paid class drop-ins keep the class roster in step the same way: the charge appears here when a family claims a paid drop-in, Record payment confirms their seat once the full amount has arrived outside Stripe — a partial payment is kept on the ledger but the seat stays awaiting payment until the rest is collected — Void releases a seat still awaiting payment, and refunding a paid drop-in takes the dancer back off that session's roster.

Workshop, camp, and class pack registration charges follow their registration, so they work a little differently here: they cannot be edited, voided, or deleted from Payments — cancel the registration from Workshops instead. Record payment still works when an online payment link is open: it cancels that Stripe checkout first, then records the cash collection so a late card payment can't settle afterward. On a workshop or camp charge, only a full payment confirms the registration — a partial one is recorded with the rest still owed, and once any of it is paid the booking keeps its dates: the remainder stays an open charge the family can pay online for exactly what is left, or you collect it your way. The paid part of such a split follows its registration too — it can't be edited or deleted from Payments any more than the charge itself; manage the booking from Programs. Refunds still happen right here. And when a family starts one of these checkouts online but never finishes it — a declined card at checkout, say — the spot's hold lapses on its own and the bill closes with it: on your side it reads 'Checkout not finished' wherever the row appears — the ledger, the family's record, the payment's detail, and the iPhone app — because nothing was ever charged on it, while the family's own Payments reads 'Not finished, nothing charged' with a Try again button that opens registration again while the spot can still be booked. There is nothing for you to collect or clean up, and Ida describes these the same way when you or the family ask about payments.

Note. Voiding, refunding, and deleting payments are admin actions — those buttons simply never appear for anyone else — and instructors and front desk staff do not see this studio-wide ledger. Front desk can still take money in, though: from a family's record they can create a charge, log a payment collected offline, record a payment against an open charge — in full or in part — and fix a hand-recorded payment's details or notes, with the family getting the usual receipt.

When a family's bank disputes a payment

Once in a while a family's bank pulls a card payment back — a chargeback. Stripe takes the disputed amount out of your balance, usually with a dispute fee on top, and gives you a deadline to respond with evidence. The moment it happens, every admin is told by email and push — the alert names the family, the amount, what Stripe took back, the fee, and the date to respond by, and it cannot be muted. The payment stops reading plain 'Paid', too: its status shows 'Disputed' instead — then 'Dispute lost' or 'Dispute won' as the bank decides — in the ledger, on the family's record, and in the iPhone app alike, and opening the payment's detail lays it out: what the bank is holding, the dispute fee, the respond-by date, and where things stand.

Your totals never pretend disputed money is yours. Whatever a dispute holds comes off what you've collected — Paid this month, the Payments totals, Home's revenue, a workshop's or competition's money, registration fees kept, and Ida's answers all move together — and the dispute fee counts with your Stripe fees, off your net. Where a disputed payment sits inside another total — a competition fee line, a trial or booking's money, the registration strip — it reads '$X held by a dispute', kept apart from refunds, so a number is never smaller without saying why. Win the dispute and the money comes back to your balance and counts as collected in full again.

Responding happens in your Stripe dashboard — Ida never answers a dispute or moves money on its own. At studios on Ida's newest look, each dispute waiting on your answer also sits under Home's 'Needs you' until you've responded or the bank decides. While a dispute is open — or after one is lost — the payment can't be refunded: the bank is already holding the money, so the Refund action says to answer the dispute in Stripe instead. And a dispute never reopens a fee or re-bills the family on its own — losing one means the bank returned the money to the family, and whether they still owe it is your call: bill them again from their Payments if so. The family's own screens are unchanged; what to tell them is between you and them.

Note. A payment can also show 'Bank inquiry': the family's bank asking about it before any money moves. Answer it in Stripe by the date shown so it doesn't become a dispute — nothing comes out of your balance unless it does.

Charging a family's card on file

When a family keeps a card saved with Stripe — from autopay, or from a checkout they have paid before — you can collect what they owe without waiting for them to log in. On a family's Payments tab in Manage family, a Charge button appears beside Create a payment whenever there are charges it can collect; it collects everything outstanding in one go — skipping any tuition marked 'Autopay scheduled', since autopay is already set to collect that one on the family's billing day. To collect a single charge instead, choose Charge card in that charge's ⋯ menu — in the family's list, the ledger's 'Awaiting payment' strip, or any unpaid row of the ledger itself — or use the Charge card button on the payment's detail. A failed autopay charge can be retried the same way once the family's card is sorted out.

You always confirm before anything is collected. The dialog names the saved card — like 'Visa ••4242', usually the one autopay uses — and lists each charge it will collect, the online fee if your studio adds one for card payments, and, when your studio collects GST/HST, the tax calculated from the family's billing address the same way checkout does, ending in the exact total. Once the charge goes through, the ledger updates and the family gets the usual receipt by email and in the app. If the card is declined, nothing is collected — the charge stays owed, you see the decline message, and the family can still pay another way. Charging also closes any online payment link the family had open for the same charge first, so a late card payment can't settle twice. And if the family is in the middle of paying that very charge — their payment has started and Stripe hasn't finished with it — charging steps aside instead of collecting on top of it: nothing is charged, a note says a payment is already being made for this bill, and the list refreshes, since the family's payment may show it paid a moment later. The iPhone app says the same thing in the same moment. Tuition goes one step further: a family's card is only ever charged once for a tuition month — the early bird charge on the cutoff morning, the family's own Pay now on the web or in the app, and your Charge card all check one shared guard before touching the card, so even two started in the same moment can never both collect the same month. A payment that starts but never finishes — an app closed mid-payment, a dropped connection — doesn't hold the charge up for long either: Ida checks with Stripe on its own, marks the charge paid if the money actually moved, and otherwise clears the way, usually within the hour, so the family can pay — or you can charge the card — as usual.

When a family has no card saved, the button stays greyed out and says why: ask them to start autopay or pay once online, and Stripe keeps their card on file for next time. A card that has expired or been removed counts the same as none — the button never offers a charge that is bound to fail — and Ida keeps each family's card status current on its own from every payment and card change, so web, the iPhone app, and Ida's answers always agree on who can be charged.

No saved card doesn't have to mean waiting, though. Staff who take payments can start the payment themselves: open the charge's detail — from the ledger or the family's record — and Pay now (or Continue to checkout, when your studio collects GST/HST) opens the same secure Stripe payment the family would use, so a parent at the desk can enter their card on the spot. The full amount is filled in, and on most charges you can take less and leave the rest owed as its own open charge. In the iPhone app, the same Pay button sits on the charge's detail screen and takes their card — or Apple Pay — through the payment sheet, switching to the secure checkout when your studio collects GST/HST. Tuition already scheduled for autopay is the one exception: autopay is set to collect it, so it is left alone here just as it is for Charge card.

Note. Charging the saved card is taking a payment, so front desk staff can do it from a family's record just like admins — the studio-wide ledger itself stays admin-only. It works the same in the iPhone app: the Charge button on a family's record on the Families tab, and Charge card on a payment's detail screen.

One-off fees with your own names

Costume fees, recital fees, photo day — one-off charges that are not merch or tuition can carry your own names. When you create a payment, those names appear in the Type list alongside Tuition, Merch, and Other charge. Pick Snack or Costume fee the same way you pick any other type — its default amount fills in (you can still change it). If the fee is not in the list yet, choose Add new charge type, name it there, and it is saved to Settings → Payments → Other charges for next time. Typing a name your studio already uses lands on that existing type rather than creating a twin — when a visible type and a hidden one share the name, the visible one is used — so the same name always means the same type, with the same tax, however the charge is recorded. A name that only comes close is never matched for you: type 'Costume' when your list says 'Costume fee' and a suggestion appears — Did you mean 'Costume fee'? — tap it to use that type, or add the name you typed as its own. The same question is asked before a hidden type comes back when a visible name is close to it, with both choices spelled out, so a close name never quietly lands on a type with different tax. If two visible types share the exact same name, you are asked to pick the one you mean from the list rather than having one guessed for you — and where tax applies, each shows whether it charges GST, so the pick is clear. Or pick Other charge to bill a one-off without adding a name to Settings. This works wherever payments are taken: the ledger's Create a payment dialog, a family's record, and the iPhone app alike.

The name you chose follows the charge everywhere. The family sees 'Costume fee' — not a generic label — on the charge in their portal, at online checkout, on their receipt, and in the heads-up when you notify them; on your side it shows on the payment's type chip in the ledger, on the dashboard home, and in the payment's detail. A generic Other charge shows as Other charge. In the type filter, all of these gather under a single 'Other charge' entry. Editing a payment can also move it onto one of these charges, or from one charge to another.

Note. Renaming or deleting a charge type in Settings never rewrites history — payments already billed keep the name they were billed with.

Fixing or removing a manual payment

Payments you recorded by hand — and history imported from your previous tracker — can be corrected after the fact. Choose Edit in the row's ⋯ menu (or from the payment's detail view) to change its type, amount, paid-on date, due date, or note — and, on a tuition payment, the class period it covers, so a payment sitting on the wrong month is easy to point at the right one; a receipt that already went out is not resent, so let the family know if the amount changed. Moving a paid tuition payment onto a month the family still has an open bill for is refused — that would leave them owing a month they already paid — so mark that open bill paid and delete the extra payment, or pick a different month; a payment that was refunded or voided owes nothing, so moving it is never blocked. Delete removes such a payment from your ledger, totals, and charts — it is kept for audit, and you confirm first.

Payments collected through Stripe cannot be edited or deleted — they mirror the actual charge. If one is wrong, refund it instead.

When tuition bills

By default each family on autopay bills on the anniversary of the day they signed up. If you would rather everyone bill on the same day, set a fixed tuition billing date in Settings (a day from the 1st to the 28th, so it lands in every month). You can also let families pick from a whitelist of those days — typically the 1st and the 15th — with your default used when they do not pick. New autopay sign-ups then anchor to the day that family uses; families already on autopay keep their existing date. On that same setting — in Settings on the web, and on the Billing screen of the iPhone app's Studio settings — First tuition bill chooses whether a family that joins mid-month also owes this month in full (they pay it now) or waits until next month — next month is the default. You can also split the difference with a cutoff day: joiners through, say, the 15th owe this month, later ones start next month. Late fees that count days after due are one studio rule from each family's due date. Calendar-day late fees are a specific day of the month — when parents can pick more than one autopay day, you set those dates separately for each choice (for example the 10th after the 1st, and the 20th after the 15th). Either way, the late fee Ida adds arrives as its own open charge on the family's Payments, due the day your policy set for it — the family gets the usual new-charge notice, and the fee reads due and then overdue like any other charge, so your Overdue filters and overdue letters count a family whose only late item is the fee. A late fee never gathers a late fee of its own. For tuition billed straight from a family's plan, the fixed date applies to monthly plans only. Autopay on a plan that bills per quarter, 6 months, or year charges one full period at a time, and Stripe sets each run, so Ida never promises a day for it. At studios that price tuition by each dancer's classes, longer periods follow the billing day too: one bill per quarter, 6 months, or year, due on the billing day of the month that opens the period. When one of those quarterly, 6-month, or yearly bills is on autopay, Stripe sets each run. Families who pay by open invoice (no autopay) stay due on the studio default day.

Letting families pick lives on the same Tuition billing date setting: turn on 'Parents can choose their day' and list the days you offer — your default day is always on the list, and choosing a new default adds it automatically. Families then pick their day when they set up autopay, or change it afterwards from their Payments page. You can also set a family's day for them — on the Billing tab of Manage family on the web, or from their family record in the iPhone app. For a family already on autopay, the month already scheduled simply moves to the new day — October's charge on the 1st becomes October's charge on the 15th, and the bill's 'Charges automatically on…' date moves with it — never a second charge for a period they have already paid, and never a skipped month. The one time the change waits: if the new day has already passed for the month being collected — moving the 15th back to the 1st on the 3rd, say — Ida says so plainly and asks you to change the billing day after this month's tuition is collected. For a family not on autopay yet, the day you set is used when they start; and a family who picks a different day at autopay checkout has the cycle's open bill move onto that day the same way, one bill, no double. A family whose day you stop offering keeps it until they choose a new one.

Tip. With a fixed billing date, First tuition bill on that same setting chooses whether a new family also owes this month in full (Pay now) or waits until next month. Next month is the default — the partial first period is free and the first full charge lands on your chosen day. This month bills the current month at signup, with no proration. You can also bill this month only through a cutoff day (for example the 15th).

Tuition bills without autopay

Families who have not started autopay are not left waiting for you to bill them by hand. For studios that price tuition by how many classes each dancer takes and bill on a fixed billing date, Ida OS raises each such family's tuition as an open charge ahead of time: it appears in your ledger and on the family's Payments page labeled with the month it covers — 'September 2026 tuition' — with a due date on your billing day, and the family gets the usual new-charge notice when it first appears. The charge itself lists what's in that month's bill — weekly classes and practice sessions, with their amounts — on Payments, on the charge's detail, and in the due notice and receipt emails, so a $105 September bill shows the five practice sessions behind it instead of leaving parents to compare it to next month. Programs added on a dancer's profile appear as their own named lines in the same breakdown, and a dancer taking two classes that share a name sees each labeled with its day — 'Ballet · Tue', 'Ballet · Thu' — so the lines match the real schedule. The breakdown always adds up to the bill, to the cent: a per-dancer tuition maximum shows as its own line taking the difference off, named the way your studio named it — like 'Unlimited cap' — with the dancer's classes at their real prices above it, programs sit on top of the cap, and the sibling discount appears once, under the dancer it comes off. Ida reads the same lines when it explains a family's bill, so the chat answer and the charge never disagree. They pay it like any other open charge, online with Pay now, or you record cash or an e-transfer with Record payment. And this isn't only for monthly pricing: a family whose plans bill per quarter, 6 months, or year gets one charge per period the same way — raised for the billing day that opens the period, covering the whole period, and labeled with the month it starts. The billing days in between raise nothing — the next bill waits for the next period to open — and each household follows its own plans' schedule, so a monthly family at a studio that also offers quarterly plans still bills every month. Studios that keep the Tuition billing date on each family's own signup day get these bills too: a monthly family without autopay bills on the day of the month they joined (a family who joined on the 29th, 30th, or 31st bills on that day, or on the last day of a shorter month; one who joined on those days before November 2026 keeps billing on the 28th), with the same open charge, labels, and notices. Because there is no studio-wide day, Ida only bills a family there when their payment history makes the months clear. A family billed quarterly or longer stays with you at first — Ida's periods might not line up with the terms you already bill — until you let Ida bill their terms: on the family's Money tab (or in the iPhone app, or by asking Ida), Let Ida bill their terms shows the term they last paid and the next terms Ida would bill, with dates and prices, and once you confirm, Ida starts the next term exactly where their last payment ended, so no month is billed twice or skipped. If some of their past terms were typed in by hand — at a price you have since raised, say — Ida asks instead of guessing: the preview lists those terms with the monthly rate each one works out to and asks whether that is what the family was billed, and you confirm the rate or correct it before Ida takes over; until you answer, the family simply stays with you. The web, the iPhone app, and Ida all ask the same question. A monthly family whose newest tuition payment doesn't name the month(s) it paid stays with you too. Those families read 'Billed by you · Ida doesn't open their bills' on their family record, on the web and in the iPhone app, and Ida says the same in chat. Keep billing them by hand as before, or bring a monthly family back to automatic billing by recording their next payment with the month it covers — or have them start autopay — and Ida bills the months after it on its own. Either way, a month inside any period a family has already paid is never billed again.

How far ahead the next bill appears is your choice. A 'When families see the next bill' picker sits under the Tuition billing date setting — in Settings on the web, and on the Billing screen of the iPhone app's Studio settings (admins only). Leave it on 'As soon as the last one is billed' and next month's charge shows up the day after this month's — about a month early, notice email included. Or hold it back: a set number of days before it's due (counted from each family's own due date, so it follows a parent-chosen billing day), or on one fixed day of the month for everyone — 'the bill always shows up on the 24th', whatever day each family bills on. The charge and its email wait together, so a family who just paid isn't told about next month the very next morning; a bill already due, and the catch-up for a cycle that was missed, are never held back.

Until it is paid — and while the month it covers is still being taught — the charge follows the family's live tuition: if their class counts change, the sibling discount changes, or their enrolment moves, the amount rewrites itself, and a bill that falls to zero is withdrawn on its own. A part payment does not freeze the bill: the family owes the new price minus what they already paid, to the cent (a $90 bill with $30 paid whose price becomes $120 now owes $90 more) — and the bill says why, with a plain line like 'Updated price: $120 for the month, $30 already paid' on the payment's detail, on the family's own Payments on the web and in the iPhone app, and in Ida's explanation of the bill, so an amount that moved never goes unexplained. A bill whose amount you edited by hand keeps your amount. Two kinds of money keep the bill and autopay at the current price rather than rewriting an amount that is being collected: a card payment in progress or a Stripe invoice out collecting it, and a credit, a refund on a part payment, or a part payment that already covers the new price. Your save says so in plain words and owners get a notice naming the family; save again once the payment finishes or the invoice is settled or voided, or settle the bill with the family first. Once a month's classes are over, its unpaid bill is history to collect, not to recalculate: today's class changes, plan changes, or a dancer marked inactive never re-price or withdraw last month's bill — it stays exactly as billed until it is paid, recorded, or you void it yourself. Nobody is billed twice — when a family starts autopay, the cycle's open tuition charge is handed to autopay rather than left to collect twice: the very same charge stays on the ledger reading 'Autopay scheduled', its due date moves onto the family's billing day ('Charges automatically on…'), and their card pays that one row — autopay never adds a second tuition line for the cycle. A family who already paid the cycle by hand has autopay's first charge wait for the next one. A family paid further ahead than that — a prepaid term, or months you have waived — can still start autopay without being charged twice: their card is saved now, and the first card charge simply lands on the first period no paid or waived tuition already covers, up to a year ahead. A payment that covers only part of a period autopay would charge still blocks the start — that period would be charged in full, paid months included — with a note telling the family what to ask you to sort out. The same protection holds when the ledger can't say what a payment was for: a family whose most recent tuition payment was recorded without picking the month it covers, or who has an open tuition bill you entered by hand overlapping a month autopay would collect (or naming no month at all), is asked to check with you before autopay will start — tag the payment's month, or mark that bill paid or void it, and they can set up autopay right away. Tuition you record yourself counts the same way: log a payment with Create a payment → 'Already paid offline', and the class period you pick under 'This payment covers' reads as paid, so the automatic charge for that period is never raised on top of it. A tuition charge you bill the family yourself counts the same way: enter a tuition charge covering a month and that month is billed — no automatic bill opens on top of it, and your charge keeps the exact amount you typed, whatever due date you give it. That makes your own arrangements safe to type in — a discounted price you agreed with one family, or a month split into two charges, half due on the 1st and half on the 15th: a hand-entered tuition charge is never re-priced when plans, discounts, or enrolments change, never withdrawn by automatic billing, and never taken over by autopay — it never reads 'Autopay scheduled', so the family keeps Pay now and you keep Record payment and Charge card. And the month it covers is what ties it to a cycle, so it counts for that month even when its due date falls in a different one. The picker starts on the month the family owes — the month of their oldest unpaid tuition bill, or the one after the last month they paid when they've fallen behind, or else the period whose bill is due now (at studios whose bills go out the month before, cash taken in mid-October starts on October, not November) — and choosing another works just as well: fall tuition a family paid back in August counts for fall, not for August. Even a tuition payment logged without picking a period counts when its timing says what it was for: money recorded as collected around the time a cycle's bill opens is read as that cycle paid, so the automatic charge stands down instead of billing the family twice. A cycle that is already billed or paid never gets a second bill — even at studios whose bills go out in the month before the one they cover, and even when a family's billing day changes: the bill already out stays the cycle's one bill. And a billing-day change never rushes that bill: an open bill's due date can move later, but never earlier — the date the family was told is the soonest it can be due, so moving a family to an earlier billing day never turns their current bill overdue overnight or starts the late-fee clock before the date in their notice; the earlier day takes over from the next cycle's bill. (Tuition reserved for autopay follows its charge date instead — when the family's day moves, 'Charges automatically on…' moves with it.) A tuition charge marked 'Autopay scheduled' anywhere on your ledger means exactly that: autopay has taken it over, so it offers the family no Pay now and you no Charge card — collecting it by hand would double the family up, though Record payment is still there if money genuinely arrives outside Stripe — recorded in full, since a charge autopay has claimed is never split. The label keeps itself honest, too: a bill only reads 'Autopay scheduled' while autopay is really set to collect it, and it follows the family's live tuition just like an open charge, so the amount on it is the amount the card will take. A declined card never hides behind the label either: while Stripe retries the charge, that bill reads 'Card declined — retrying' instead — the same words on every screen that shows the row, your ledger, the family's record, the payment's detail, Home, and the family's own Payments page, on the web and in the iPhone app alike — and its due line says 'Stripe is retrying the declined card' rather than counting the bill overdue. If a scheduled bill reaches its due day without a card charge on the way — or Ida stops a card charge that doesn't match the family's tuition, so nobody is charged the wrong amount — the bill turns back into a normal open charge on its own: Pay now for the family, Charge card and Record payment for you, and autopay carries on with the next cycle. However a bill returns to Pay now on its own like this, the family is emailed it at that moment — a bill never becomes theirs to pay without their hearing about it — and when its old due date has passed, the date moves up to the day it returned, so the late-fee clock never starts before Pay now appears. That includes the tax-address stop: when your studio collects GST/HST and Stripe cannot work out a family's tax location, their card charge is stopped rather than collected without tax — and the month's bill comes straight back to Pay now rather than sitting as 'Autopay scheduled' for a charge that will never run, so the family can pay it online, where checkout collects the billing address that clears the block. Late fees respect the label as well: a bill reading 'Autopay scheduled' never gathers one — the family has no Pay now to be late with — and neither does a card that was declined while Stripe is still retrying it. If Stripe gives up, the bill turns into a normal open charge with Pay now, the family is emailed, you get a heads-up, and any late-fee clock starts that day — so a family is never fined for a bill they had no way to pay. (One exception: while an early bird window is open, a reserved charge keeps Pay now so the family can take the discount — see Early bird discounts below.) And when a reserved month should not go on the card after all — the family has arranged to pay it themselves, say — you don't have to cancel or pause autopay: set the 'Skip card charges due before' date on the family's Billing tab and that cycle's reserved tuition turns back into a normal open charge, with Pay now for the family and Record payment or Charge card for you, while autopay carries on with the next cycle (see What billing status really means on the Families page of this guide). A month from before autopay stays a normal open charge: when a family joins autopay after a cycle was already due and their first card charge waits for the next cycle, the unpaid charge for the month in between keeps its Pay now button and counts toward what the family owes — they can pay it online, or you can Record payment or Charge card like any other open charge. If your late-fee policy is on, it counts from the charge's due date.

New offerings fold themselves into these bills, too. Add a plan or class after billing has already started — a program that begins mid-season, say — and Ida brings tuition up to date on its own: families it applies to are billed for it from here on, and the billing day that just passed is revisited as well, so a bill that was missed or came to $0 while the offering was brand new becomes the proper charge, labeled and dated for the cycle it covers, with the usual new-charge notice. The catch-up covers dancers, not just new plans: put a dancer on any plan after the billing day has passed and their family's charge for the cycle that already started is raised alongside the next one, so a mid-cycle start never slips a month. The catch-up runs as you make the change — saving the plan or the dancer's enrolment raises the charge right then — and a once-a-day check picks up anything that still slipped through, so a gap never waits for the next billing day. A bill a family has already paid is never rewritten. The catch-up also knows when to leave a month alone: it only fills in bills for a month of classes still underway or still ahead — once a month's classes are over, Ida never raises a new tuition charge for it after the fact, so changing your billing settings mid-season can't surprise families with a bill for a month that already ended. (A new family's first bill at joining is separate and arrives as your First tuition bill setting says.) Refunding a tuition bill doesn't write the month off either: if the family's live tuition still calls for that cycle, a fresh charge takes its place.

If a Stripe payment can't be recorded

Once in a long while Stripe collects a tuition payment that Ida can't add to a family's payments — the family's books already show that month settled, say, or the bill it was for has since been voided or refunded. The money is safe in your Stripe account either way, and Ida never lets it sit unnoticed: anything that can resolve on its own is quietly retried first, and when the payment genuinely can't be recorded, every admin is told — by email, push, and an in-app notification — naming the family, the amount, the Stripe invoice, and the reason in plain words. The alert is always on and sent once per payment.

The payment also waits on your dashboard Home until it is dealt with: an item like '$110.00 autopay payment isn't recorded' with the family's name, on the web and in the iPhone app. Review opens the family's payments — if the month is still owed, record the payment as already paid; if it shouldn't have been charged, refund it in Stripe. When the month is already settled in Ida, the item reads 'Looks like a second charge' instead, since recording it would count the month twice — refund it in Stripe. The item clears on its own the moment the family's books cover that month, or mark it Done once you've handled it — on Home, or just by telling Ida. Ida counts these too: ask about your payments and any money still waiting to be recorded is part of the answer, never silently missing from your totals.

Early bird discounts

Want to reward families who pay ahead? Turn on the Early bird discount on the same Tuition billing date setting — in Settings on the web, and on the Billing screen of the iPhone app's Studio settings. Pick the cutoff day of the month families must pay by, and what paying early saves: a dollar amount or a percent off monthly tuition. A preview sentence spells the schedule out as you set it — 'Families see the next tuition on the 24th. Pay or Autopay by the 25th at $10.00 off; after that the 1st is full price.' The discount needs a fixed billing date, and the cutoff has to land after families see the bill and before it is due — for every billing day you offer, parent-chosen days included — so a cutoff that would leave some families no window to pay in is refused with a plain message, as is a discount that would take tuition to zero.

From then on, each monthly tuition charge opens at the early price, and the charge shows both sides of the deal — 'Pay by Sep 25 · $90.00' with 'After that, due Oct 1 · $100.00' beneath it — in your ledger, on the family's Payments page, and in the email that tells them the bill is ready. A family who pays by the cutoff — online with Pay now, or cash or an e-transfer you record — pays the early price. A charge still unpaid after the cutoff returns to full price on its own and is due on the billing day as usual.

Families on autopay get the discount without lifting a finger: on the morning of the cutoff day, Ida charges their saved card the early amount, and that charge replaces the billing-day charge for the cycle — their card is not charged full price on top. During the window, a reserved tuition charge wears an 'Early Autopay Sep 25' chip in your ledger and — unlike other reserved tuition — still offers the family Pay now, so a family can take the discount themselves and leave nothing for the card pull to collect. The early pull is also each family's choice: an 'Early bird discount' switch on their Payments page — web and iPhone app — starts on for every autopay family, and one who turns it off simply isn't charged early. Their card collects the regular amount on the billing day, and in your ledger that cycle's charge reads 'Autopay scheduled' instead of the Early Autopay chip while still showing the pay-by price — so paying by the cutoff still earns them the discount. Either way nobody pays twice: once a cycle is paid, the full-price collection for it stands down, and if autopay's regular invoice still goes out it is cancelled or refunded automatically. The cutoff-morning charge itself can't double a family up either: it checks the same one-charge-per-month guard as every other card charge, and in the rare moment it crosses a payment that settled in the very same breath, the extra charge is refunded back to the family's card on its own — the ledger reads it paid and then refunded, so there is nothing to chase. If the cutoff-day card charge is declined, nothing is collected and the cycle simply bills at full price on the due day. And a family whose autopay is set to end before a month's own billing day is never charged early for it either — the early pull steps aside and that month's bill keeps its Pay now button for the family to pay themselves. Your Home's upcoming-cycle tuition card notes the cutoff and the discount next to when the cycle opens and is due — on the web and in the iPhone app.

Note. The early price rewards when the money arrives, not how: paying online, by card pull, or by cash or e-transfer you record by the cutoff all count. It applies to monthly tuition — plans billed per quarter, 6 months, or year keep their regular price — and a cycle a family has already paid is never rewritten. Like the billing date itself, the discount is an admin setting.

On the iPhone appiPhone app

Payments puts the ledger in your pocket — for families it has its own spot in the tab bar along the bottom, while admins open it from the More tab's Money section (the studio-wide ledger stays admin-only in the app just as on the web — instructors do not see it, and front desk staff instead take payments from a family's record on the Families tab). Families see Due now at the top — the same amount as the web: overdue charges, anything due today, an undated charge, a failed card, and the registration fee when it is due and not yet billed. The line underneath is only what is still coming up, like '$415.00 due starting Sep 18'. When nothing needs you now and charges are still upcoming, the card says Coming up instead. And when the only thing owed is tuition a declined card is still being retried for, the card reads Card declined with that amount — the same words as the web — with the reminder that Stripe will try again automatically and that updating your card under Manage autopay collects it sooner, never a green all-caught-up beside an unpaid bill. Tap the total to jump to unpaid charges — the Unpaid tab counts a due registration fee too — then a compact next-bill line follows with the service month, amount, and due or charge date — or, when autopay isn't set to collect (Blocked, Past due, Paused by studio, or Held), what's happening and what to do instead; tap that line to open what's in the bill. Your charges opens on Unpaid so what you owe is first; All and Paid are one tap away, and a line under the Your charges heading notes how much you've paid this month. Each charge shows its amount, type, status, and a method badge showing how it was collected — Stripe, Manual, Imported, or Awaiting payment for charges not collected yet. When the studio's online fee is on, a card charge's number is the card total, spelled out beneath as the listed amount plus the fee — on charges already paid too, where the fee shown is the one the card actually collected. A tuition charge also lists what's in that month's bill — weekly classes and practice sessions — so the $105.00 September charge shows the five practice sessions inside it on the charge itself, not only on next month. The All, Unpaid, and Paid tabs show how many payments sit in each, a row of color-coded type chips filters by type (each with its count) — a charge from a calendar booking gets its own chip under its actual kind, like Private lesson or Rental, rather than hiding under a generic Booking chip, and a paid trial gets its own Trial chip rather than filing under Workshop — and you can search by type. A charge the studio gave a due date says so right in the list and on its detail screen — 'Due Sep 5', 'Due today', or 'Overdue' once the date passes. A workshop, camp, or class pack checkout you started but never finished reads 'Not finished, nothing charged' — in the list and on the charge's own screen — with a Try again button that opens the workshop to register again while it can still be booked — tapping it checks one more time first, and if the spot was booked again or registration has closed since, it says so plainly and refreshes instead. Autopay, your card, billing day, and the auto-charge switch live in Autopay & cards at the bottom, collapsed until you need them.

For admins, the screen is built around collecting. It opens on the week's pulse: how much you have collected this week in big type (weeks turn over on the same day your calendar's week starts), with a Paid this month chip — the same total as the web Payments page, covering every payment that settled this month; tap it to open History — plus your unpaid total and any failed charges beside it — tap either of those figures to jump straight to those families. Three tabs split the work. Needs lists the families to chase first — anyone with a failed charge, a charge past its due date, or an unpaid charge with no due date that has sat two weeks or more — with families carrying failed charges at the top, then the longest-overdue; each row shows the family, and when any charge is past due the large amount is only the overdue slice, with the unpaid total in the smaller line — so a family with one late tuition invoice and two fees due later is not painted as if the whole balance is late. The badge reads N overdue when only some charges have missed their date. Overdue is reserved for a household where every open charge has missed its due date; Failed still wins when a charge failed; Past due is only for a balance that has sat unpaid for two weeks with no due date. Unpaid shows every family with an open balance the same way, and both tabs have a search box for finding a family by name. When any families have charges past their due date, an Overdue chip sits above the search box with the count of those families — tap it to keep just them in view on either tab, tap again to see everyone. Tap a family's row to unfold their individual charges: each one shows its due date — Due Sep 18, Overdue · Aug 25 — or Created when it has none, and an Overdue chip only on the charges that have actually passed their date. Open any charge's detail, or tap the family's photo to open their full record right there — payments, students, and billing in a slide-up panel — so you can record a payment or check a detail without leaving the screen. History starts on the settled ledger — paid, refunded, and voided payments — with filter chips for Status, Type, and Created: the Type list offers every kind of payment, each beside the same color dot as the web ledger's filter, Created picks from the last 7, 30, or 90 days, this month, or your own from-and-to date range, and the Status chip pulls unpaid, draft, or failed charges into view too. A line under the filters counts the payments in view and totals them, so 'how much came in last month' is a couple of taps. The screen opens on whichever tab has work waiting — Needs when something needs action, Unpaid when balances are open, History when everything is collected.

Tap any payment to open its detail screen: the amount and badges up top with a plain-English line on how it was collected, then the full record — type, family (for staff), status, dates, the class period a tuition payment covers, any note, and the payment's Stripe reference when it was collected online — and, when tax or an online fee was collected, a breakdown whose rows always add up: the listed amount, the online fee when one applied, Tax (GST/HST), and the total. Staff also see the payment's Stripe fee and net amount once Stripe has reported them; a family's view keeps to what they paid. A payment collected through Stripe adds a View receipt button once it is paid or refunded — tap it to open the official Stripe receipt, or the tuition invoice for autopay charges, right inside the app. Just like the web, a charge still awaiting payment mentions tax at checkout only when the studio's Stripe Tax settings are active; otherwise it simply shows the amount. Families pay an open charge through Stripe right from the list or detail screen — Pay first asks how much, with the full amount filled in, and on most charges you can enter less to pay part now and leave the rest owed as its own charge, just as on the web (workshop and camp registrations, drop-ins, and shop orders are always paid in full); then the payment sheet takes your saved card, and offers Apple Pay too when it is set up on your phone; when the studio adds an online fee for card payments, the detail screen breaks the charge into the amount, the online fee, and the card total — before you pay, and still there once the charge is paid, when the fee shown is the one the card actually collected — and staff see the same fee noted on charges in a family's record. When the studio collects GST/HST, the app opens a secure Stripe checkout instead so tax can be calculated from your billing address, and once you finish there it closes and returns you to the app on its own. And just as on the web, if a charge's amount changed while the screen was open — an early bird price that ended, say — paying is stopped with an 'Amount changed' note and the list reloads to show the new amount, so you always pay the price you can see. And when the same workshop or class pack charge was paid for from two places at the same moment — the app and the web, say — the one a step behind simply says a newer payment link was just made and reloads, so you tap Pay again and carry on: never a payment page that has stopped working, and never a double payment. Staff manage a payment from its detail screen too: Charge card on an outstanding charge collects it on the family's saved card — you confirm first with the card and the exact total, and the button stays greyed out with the reason when the family has no card saved — with the same Charge button on a family's record on the Families tab, where it collects everything the family owes at once. At studios on Ida's newest look, the list of what's owed carries the same actions right on each row — Charge card when the family has a usable saved card, Mark paid, and Void for owners — so collecting never needs a detour through the detail screen, and a shortcut that no longer applies when it opens — the charge was just paid, say, or autopay is set to collect it — says exactly why instead of failing quietly. Staff who take payments also see the same Pay button families use, on any household's outstanding charge: when there is no card saved — or a parent at the desk simply wants to pay right then — Pay takes their card or Apple Pay through the payment sheet (or the secure checkout when the studio collects GST/HST), in full or in part, exactly as on the web; tuition already scheduled for autopay stays with autopay. For admins the detail screen also offers Record payment or Void on an outstanding charge — voiding an unpaid tuition bill asks the same question as the web, Bill again or Waive this month, and then confirms what happened to the month; Record payment asks for the amount received, filled in at the outstanding balance, and a smaller amount records a partial payment and leaves the rest owed as its own open charge, just like the web — plus Refund (Stripe payments — the money goes back to the card) or Mark as refunded (offline payments — records only) on a paid one, and Edit or Delete on a manual or imported payment, each confirming first with the exact amount. Admins can also create a payment with the Create button at the top of the screen — the same dialog as the web, with a searchable family picker, the choice between billing the family and logging money already collected offline — logging it as collected asks the same 'Collected via' question as the web (cash, e-transfer, cheque, or other) before it will save, and a bill stays unpaid unless you make that choice, an optional due date when billing, the same 'This payment covers' class-period picker on tuition, and an optional note that travels with the payment into its detail; once saved, the payment is filed under the right tab, Unpaid for a charge the family will pay or History for money logged as collected. In a family's own list, payments that carry a note show a small note icon that opens it in a tap. Open Autopay & cards at the bottom and it says plainly where autopay stands — Start autopay and Add a card appear until it is running (each opens Stripe's secure page and brings you back to the app when you are done), and Manage autopay and Change card take over once it is. Add a card and Change card always let you type a new card — nothing is charged — and the card you save becomes your family's card on file and the one autopay uses. When your studio lets families choose a billing day, the card carries the same Billing day picker as the web: pick your day before you start autopay, or change it once autopay is running and your next cycle moves to the new day. The card also carries the same 'Auto-charge approved bookings' switch as the web Payments page, so families can decide from their phone whether approved bookings charge their saved card. However your family pays — a one-off charge, autopay, or a card you add with Add a card — the app keeps one saved payment record for you, so a card you save once is there the next time and you never have to type it in twice.

Rather just ask?

Inside Ida, Ask Ida answers from this guide and from your studio’s own records, on the web and in the app.

  • Who hasn’t paid this month?
  • How do I refund a workshop?
Log in to ask Ida

Still stuck?

Email us and we’ll get back to you, typically within one business day.