Shop & billing/Selling in installments
updated 2026-07-25
Shop & billing

Selling in installments

Split a one-off purchase into several dated payments, record full or partial payments against each one, see at a glance which plans are overdue, due soon, on track, or fully paid, and set up reminders for your clients and late-payment alerts for yourself.

An installment plan lets a client pay for a one-off purchase, like a program or a package, across several smaller payments instead of one charge. You set the due dates and amounts up front; the client’s balance is worked off as each payment comes in.

Installments only apply to one-time purchases. Subscriptions already bill on a repeating cycle, so the “Pay in installments” option only appears when the purchase is a one-time price.

Turning on installments

You can start a plan from either of the two places you create a purchase: the quick add on a client’s profile, or the full purchase details page. Both work the same way, a switch labeled Pay in installments, and both show the same schedule editor underneath it once it’s on.

New purchase
Pay in installments
Due dateAmount
Aug 1, 2026$400.00
Sep 1, 2026$600.00
+ Add installment
Total: $1,000.00 of $1,000.00
Switching on "Pay in installments" reveals the schedule editor: one row per payment, with a due date and an amount.

Building the schedule

  • Click Add installment for each payment you want, then set its due date and amount.
  • You need at least two rows to make a plan. If there’s really only one payment, leave the switch off and sell it as a normal one-time purchase.
  • Every row needs a due date and an amount greater than zero.
  • The rows must add up to exactly the purchase price. The total line under the table shows the running sum against the price, and flags how far off you are (“remaining” if you’re under, “over” if you’re over) until they match. You can’t save the purchase while they’re mismatched.

Editing a plan after the purchase exists

Open the purchase’s full details page and use Edit schedule on the Installment Schedule section to change due dates or amounts, add a row, or remove one.

Rows for installments that are already fully or partially paid are locked. You can’t change their date or amount, and you can’t delete them. This keeps a plan from silently rewriting a payment a client already made. You can still add, remove, or adjust the remaining unpaid rows, as long as the schedule keeps summing to the full purchase price.

Recording a payment

Each row in the schedule has a Record payment action. It opens a small dialog defaulted to today’s date and to the installment’s full outstanding balance, so a normal full payment is just confirming the defaults. To record a partial payment, change the amount to whatever the client actually paid; the row stays open for the remaining balance. There’s also a Mark fully paid shortcut next to it that records the full outstanding balance in one click, without opening the dialog.

Record Payment
Amount
$250.00
Payment Date
Jul 24, 2026
Note (optional)
Add a note about this payment…
Cancel Record Payment
Recording a payment against one installment. Change the amount for a partial payment; leave it as-is to record the full row.

Above the schedule, the purchase shows a running line: “Collected $X of $Y ($Z outstanding)”. That figure adds up every payment recorded against every installment so far. It’s the same number whether the client paid in full on one row or chipped away at several with partial payments.

Seeing what’s due, due soon, or overdue

On the purchase itself

Each row in the schedule carries a status chip that’s worked out from its due date and how much of it has been paid:

Due dateAmountPaid / OutstandingStatus
Jun 1, 2026$400.00$400.00 / $0.00 Paid
Jul 28, 2026$300.00$0.00 / $300.00 Due soon
Jul 10, 2026$300.00$0.00 / $300.00 Overdue
Status chips on the schedule: Paid, Upcoming (not shown), Due soon, and Overdue. A row also shows Void if the invoice behind it was voided.

A row reads Due soon once it’s within about a week of its due date and still unpaid, and Overdue once that date has passed with anything still owed on it. This recalculates itself every time you look at the page, so there’s nothing to refresh.

Across your Purchases list

The purchases list has a filter row above the table that sorts every installment plan into one of four states, plus columns showing where each plan stands:

All Overdue Due soon On track Fully paid
CustomerPlanNext dueProgress
Marta K. Overdue Jul 15, 20261 of 4, $300.00 of $1,200.00
Ivan P. Due soon Jul 28, 20262 of 3, $600.00 of $900.00
Lena S. On track Sep 3, 20261 of 3, $250.00 of $750.00
Petra N. Fully paid -3 of 3, $900.00 of $900.00
The Purchases list filter row and the plan columns. Every filter searches your whole list on the server, so the result count below the table always matches the rows you see.

Every plan sits in exactly one state, worked out from its earliest payment that is still owed:

  • Overdue is that payment’s date having already passed. Someone owes you money now.
  • Due soon is that payment landing within about a week. Nothing is late yet.
  • On track is a client who has paid everything that has come due, with payments still scheduled further ahead. Nothing to chase, and this is the state most healthy plans sit in.
  • Fully paid is every payment on the plan collected.

Because the four states cover every plan exactly once, they add up: Overdue plus Due soon plus On track plus Fully paid is your whole installment book.

Each filter searches your entire list on the server, not just the page you happen to be looking at, so a client whose payment is due on Thursday is found whether they sit on page one or page four. The result count under the table always describes the same set as the rows above it.

Two columns fill in the detail without opening anything:

  • Next due is the date of the next payment still owed. Sort by it to work down your list soonest first.
  • Progress counts the payments collected and the money collected, for example “2 of 4, $600.00 of $1,200.00”.

Paused, canceled and expired plans are left out of all four states, and show a dash in the Plan column. A paused client isn’t expected to be paying right now, so chasing them would be wrong; their Next due and Progress still show, so you can see where the plan stood when you paused it.

Reminders and alerts

Installment plans can remind your client before a payment is due, and tell you when one goes late. All of it lives on one screen: Shop → Settings → Payment Reminders, reachable from the Payment reminders button on the Shop overview.

Due soon window
7
Days before the due date. Also sets what the Purchases list calls Due soon.
Remind the client ahead of time
Hi {client}, a quick reminder that your payment of {amount} for {purchaseName} is due on {dueDate}.
Preview
Hi Marta, a quick reminder that your payment of $300.00 for 6-Month Transformation is due on 2026-07-28.
☑ Push notification   ☑ Email
Tell me when a payment is late
Days to wait after the due date: 3  ·  ☑ Email me as well
Shop → Settings → Payment Reminders. Client reminders are off until you switch them on; the late alert to you is on by default.

What your client can receive

Two reminders, each switched on separately, each sent by push, email, or both:

  • Ahead of time, using the due soon window above. With the default 7 days, a payment due on the 28th is announced on the 21st.
  • On the due date itself.

Both are off until you turn them on, so nothing goes out to anybody because this feature exists. Neither one is sent for a plan you’ve paused, or for a payment that’s already settled.

Write the wording yourself. These placeholders are filled in when the message is sent, and the preview under each box shows exactly what your client will read:

Placeholder Becomes
{client} Your client’s first name
{amount} What’s still owed on that installment
{dueDate} The installment’s due date
{installment} Its position in the plan, like “2 of 4”
{purchaseName} The name of the purchase

Anything you type that isn’t on this list is left alone, so a typo like {clientName} shows up in the preview instead of quietly vanishing from the message.

What you receive

  • When a payment is late. On by default, after a grace period you set (3 days to start), as a notification in the app and, unless you untick it, an email. The grace period is why a payment that arrives a few hours after midnight doesn’t bother you.
  • When a payment comes due. Off by default. One notification on the day itself, before anything is late, for coaches who’d rather see it coming.

By default these go to the account owner. Use Send payment notifications to to point them at specific team members instead.

Late alerts use {daysLate} as well as the placeholders above.

Two things worth knowing

Nothing is sent retroactively. When you first switch reminders on, payments that came due more than a couple of weeks ago are marked as handled and left alone, so enabling this can’t email a client about installments from months back.

Each message is sent once. A reminder is recorded against the installment as it goes out, so a payment that stays unpaid won’t generate the same message again the next day.

What this doesn’t do yet

Your client is never told a payment is late. Only you are, through the alerts above; chasing the conversation is still yours to have. There’s also no repeating nag: each reminder fires once, and there’s no SMS or digest.