Front-end prices are shown as a bare amount — the booking form's lesson-type
picker reads $50.00 CAD and a group-class card reads 120.00 CAD — with no
indication of when that money is due. The offering's billing_mode already
distinguishes four very different commitments, and a student cannot tell them
apart:
billing_mode
What the student is actually agreeing to
one_time
charged once, at booking
full_term
charged once, up front, for the whole term
weekly
charged per lesson, 24h before each lesson, indefinitely
monthly
charged on the 1st of each month for that month's lessons
40.00 CAD on a card is a one-off to one reader and a recurring monthly charge
to another. On top of that, the amount shown is pre-tax while the amount billed
is Payment::total() (subtotal + HST), so the figure a student sees on the way
in is not the figure they are charged.
Nothing on either form asks the student to acknowledge the cost. The only
checkboxes are the studio policy acceptances; the price is passed silently and
the next thing that happens is a card charge or an e-transfer request.
Wanted
Show the cadence beside every price on the front end — at booking, up
front, weekly, or monthly — wherever a price is displayed to a student
(booking form lesson-type picker, group-class cards).
A second confirmation on the way in. Booking a lesson and enrolling in a
group class should each require an explicit "I agree to pay this amount"
acknowledgement, separate from and in addition to the policy acceptances,
stating the amount actually billed.
Notes
A weekly reservation of a one_time lesson type is charged per lesson for
every week it claims, and the claim can come up short when another student
takes one of the times first — the quoted total needs to be a ceiling, not a
promise.
Free offerings have nothing to agree to.
## Problem
Front-end prices are shown as a bare amount — the booking form's lesson-type
picker reads `$50.00 CAD` and a group-class card reads `120.00 CAD` — with no
indication of **when** that money is due. The offering's `billing_mode` already
distinguishes four very different commitments, and a student cannot tell them
apart:
| `billing_mode` | What the student is actually agreeing to |
|---|---|
| `one_time` | charged once, at booking |
| `full_term` | charged once, up front, for the whole term |
| `weekly` | charged per lesson, 24h before each lesson, indefinitely |
| `monthly` | charged on the 1st of each month for that month's lessons |
`40.00 CAD` on a card is a one-off to one reader and a recurring monthly charge
to another. On top of that, the amount shown is pre-tax while the amount billed
is `Payment::total()` (subtotal + HST), so the figure a student sees on the way
in is not the figure they are charged.
Nothing on either form asks the student to acknowledge the cost. The only
checkboxes are the studio policy acceptances; the price is passed silently and
the next thing that happens is a card charge or an e-transfer request.
## Wanted
1. **Show the cadence beside every price on the front end** — at booking, up
front, weekly, or monthly — wherever a price is displayed to a student
(booking form lesson-type picker, group-class cards).
2. **A second confirmation on the way in.** Booking a lesson and enrolling in a
group class should each require an explicit "I agree to pay this amount"
acknowledgement, separate from and in addition to the policy acceptances,
stating the amount actually billed.
## Notes
- A weekly reservation of a `one_time` lesson type is charged per lesson for
every week it claims, and the claim can come up short when another student
takes one of the times first — the quoted total needs to be a ceiling, not a
promise.
- Free offerings have nothing to agree to.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Problem
Front-end prices are shown as a bare amount — the booking form's lesson-type
picker reads
$50.00 CADand a group-class card reads120.00 CAD— with noindication of when that money is due. The offering's
billing_modealreadydistinguishes four very different commitments, and a student cannot tell them
apart:
billing_modeone_timefull_termweeklymonthly40.00 CADon a card is a one-off to one reader and a recurring monthly chargeto another. On top of that, the amount shown is pre-tax while the amount billed
is
Payment::total()(subtotal + HST), so the figure a student sees on the wayin is not the figure they are charged.
Nothing on either form asks the student to acknowledge the cost. The only
checkboxes are the studio policy acceptances; the price is passed silently and
the next thing that happens is a card charge or an e-transfer request.
Wanted
front, weekly, or monthly — wherever a price is displayed to a student
(booking form lesson-type picker, group-class cards).
group class should each require an explicit "I agree to pay this amount"
acknowledgement, separate from and in addition to the policy acceptances,
stating the amount actually billed.
Notes
one_timelesson type is charged per lesson forevery week it claims, and the claim can come up short when another student
takes one of the times first — the quoted total needs to be a ceiling, not a
promise.