Billing
Get paid faster, with cleaner records.
Per-therapist CPT rate overrides. Invoice creation, sending, voiding. Payment links. Autopay through Stripe. AR aging, attendance, and AI usage reports. A pluggable payment-provider architecture so your practice isn't locked to one processor.
What it does
The billing surface, end to end.
Invoicing
Per session, per period, or batch. Therapists invoice their own self-pay clients. Practice administrators invoice across the practice. Voiding is gated by role.
Payment links
Stripe payment links generated per session and per invoice. Clients pay from email, SMS, or the portal. No friction.
Autopay
Stripe customer + saved payment method + card brand + last-4. Charging is fired via asyncio.ensure_future in create_client_invoice, never blocks the UI.
Per-therapist CPT rates
Practice defaults with COALESCE-safe per-therapist overrides. Different rates for different licensures or experience levels, handled cleanly.
AR aging
Aging buckets across the practice or per therapist. Identify old balances; trigger payment links or autopay nudges; export for accounting.
Attendance & AI usage
Attendance reports for utilization analysis. AI usage reports for cost allocation across therapists or practices.
Role-based access
Who can do what.
Billing is sensitive. Praxnote enforces role-based access on the server, not in the browser where it could be bypassed. Here's the matrix that the activity log reflects.
| Role | Create invoice | Send invoice | Void invoice | View invoices |
|---|---|---|---|---|
| Therapist | Own self-pay clients | Yes | No | Own clients |
| Practice admin | All | Yes | Yes | Practice |
Pluggable payment providers
Stripe today. More tomorrow.
Praxnote supports Stripe and Manual today, with each practice choosing the one that fits. No platform-level lock-in. Adding a future provider is a small, contained change, not a rewrite.
- Stripe, Connect, customers, payment methods, payment links, autopay
- Manual, for practices that handle payment outside the platform but want invoice tracking inside it
- Future-ready: any provider that can mint a payment link and confirm a charge fits the interface
- Practice-level configuration; no global lock-in
See an invoice flow
From session to payment, in five minutes.
On a demo we'll generate an invoice, send a payment link, enable autopay, and walk the AR aging report. You'll see why most practices migrate billing first.