Auto-generated payment plans, Stripe checkout, account statements, and a court-ready contract engine. The financial side of your school, finally inside your LMS.
Most trade schools run their billing in QuickBooks, their payments through some random Stripe Payment Link, and their contracts as PDF email attachments. The result: nobody knows who paid, who owes, or whether the contract was ever actually signed.
Invoicing & Payments puts the whole financial pipeline inside TradeSchool. Set tuition per program, configure a payment plan (one-time, weekly, biweekly, or monthly), and the add-on auto-generates every invoice with the right due date and PDF. Students pay online via Stripe; cards, ACH, Apple Pay, Google Pay, with receipts and saved payment methods. The per-student Account Activity ledger uses standard accounting (charges add, payments subtract; final row = current amount owed) and the school-wide tuition audit shows you exactly who is current and who is behind. Totals use the label "Total Billed" so nothing implies a card was already charged.
The contract engine is built specifically for trade schools that don't want to deal with Reg Z. Instead of charging interest, you set a flat financing fee (dollar amount or percentage) per program, with per-contract overrides. On enrollment the scheduled total is calculated as (tuition โ deposit) + financing fee; on conversion from an application or a manual enroll, the fee mode and value are pinned to the enrollment so the payment plan and the contract always agree. Contracts use a single rich-text template with merge tags ({student_name}, {financed}, {finance_fee}, {fee_disclosure}, payment schedule table, and more), and signatures are captured with full ESIGN consent, IP, user-agent, and timestamp, exactly what you need if a contract is ever challenged.
A nightly cron generates upcoming invoices, marks overdue ones, and (optionally) sends payment reminders. All admin screens render inside the TradeSchool shell so the invoicing pages match the rest of your LMS visually.
One add-on, one yearly price โ and every capability below.
Set program tuition once, pick weekly/biweekly/monthly, and TradeSchool generates every invoice with the right amount and due date.
Cards, ACH, Apple Pay, Google Pay. Saved payment methods, automatic receipts, full reconciliation.
Charge a flat $ or % financing fee on payment plans instead of interest. Pinned to the enrollment so payment plan and contract always agree.
Per-student running-balance ledger using standard accounting, no opening balance, charges add, payments subtract, the final row is what they currently owe.
Send contracts from the application screen. Typed signatures with consent, IP, user-agent, and timestamp, court-ready.
Same unified PDF engine as your reports and certificates. One look across every document your school sends.
A daily background job rolls forward payment plans, generates upcoming invoices, marks overdue invoices, and dispatches reminder emails.
Replace your spreadsheet of "who owes what this Friday" with auto-generated invoices and a running-balance ledger.
Charge a flat financing fee instead of interest. The contract template includes the legally-required disclosure language.
Stop emailing one-off Stripe Payment Links. Every invoice has its own pay button; receipts auto-deliver.
Pull a complete account history, signed contract, and payment audit for any student in seconds.
No. Day-to-day billing operations, invoices, payments, contracts, and per-student account activity live here. Reports & Transcripts is where A/R aging, payments-received reports, invoice registers, and broader finance reporting are surfaced.
Yes. Stripe handles the payment processing; standard Stripe processing fees apply. Test mode is fine for setup.
Absolutely. Single-invoice, pay-in-full programs work the same way, you just skip the plan template.
Yes; the typed signature is captured with explicit ESIGN consent, IP address, user agent, and timestamp, which is the standard required by federal e-sign law.
Standard accounting: balance starts at $0, every invoice/charge adds to it, every payment subtracts, and the final row is the current amount owed. No misleading opening balance.
"Charged" implies the card was already processed; "Billed" is the sum of invoice totals regardless of payment status. The label change reduced support tickets dramatically.
Yes. CSV import is supported for opening balances and historical invoices so account statements are accurate from day one.